diff --git a/.github/calcrom/calcrom.pl b/.github/calcrom/calcrom.pl index 9fbd95994..cb8c5723e 100755 --- a/.github/calcrom/calcrom.pl +++ b/.github/calcrom/calcrom.pl @@ -1,5 +1,11 @@ #!/usr/bin/perl +# Usage: +# calcrom.pl [--data] +# +# mapfile: path to .map file output by LD +# data: set to output % breakdown of data + use IPC::Cmd qw[ run ]; use Getopt::Long; @@ -65,12 +71,13 @@ my $base_cmd = "nm $elffname | awk '{print \$3}' | grep '^[^_].\\{4\\}' | uniq"; # This looks for Unknown_, Unknown_, or sub_, followed by an address. Note that # it matches even if stuff precedes the unknown, like sUnknown/gUnknown. -my $undoc_cmd = "grep '[Uu]nknown_[0-9a-fA-F]\\{5,7\\}\\|sub_[0-9a-fA-F]\\{5,7\\}'"; +my $undoc_regex = "'[Uu]nknown_[0-9a-fA-F]\\{5,7\\}\\|sub_[0-9a-fA-F]\\{5,7\\}'"; # This looks for every symbol with an address at the end of it. Some things are # given a name based on their type / location, but still have an unknown purpose. # For example, FooMap_EventScript_FFFFFFF. -my $partial_doc_cmd = "grep '_[0-28][0-9a-fA-F]\\{5,7\\}'"; +# The above may be double counted here, and will need to be filtered out. +my $partial_doc_regex = "'_[0-28][0-9a-fA-F]\\{5,7\\}'"; my $count_cmd = "wc -l"; @@ -87,7 +94,7 @@ my $total_syms_as_string; my $undocumented_as_string; (run ( - command => "$base_cmd | $undoc_cmd | $count_cmd", + command => "$base_cmd | grep $undoc_regex | $count_cmd", buffer => \$undocumented_as_string, timeout => 60 )) @@ -95,7 +102,7 @@ my $undocumented_as_string; my $partial_documented_as_string; (run ( - command => "$base_cmd | $partial_doc_cmd | $count_cmd", + command => "$base_cmd | grep $partial_doc_regex | grep -v $undoc_regex | $count_cmd", buffer => \$partial_documented_as_string, timeout => 60 )) @@ -112,7 +119,7 @@ my $undocumented = $undocumented_as_string + 0; $partial_documented_as_string =~ s/^\s+|\s+$//g; my $partial_documented = $partial_documented_as_string + 0; (($partial_documented != 0) or (($partial_documented == 0) and ($partial_documented_as_string eq "0"))) - or die "ERROR: Cannot convert string to num: '$partial_documented_as_string'"; + or die "ERROR: Cannot convert string to num: '$partial_documented_as_string'"; $total_syms_as_string =~ s/^\s+|\s+$//g; my $total_syms = $total_syms_as_string + 0; @@ -126,9 +133,6 @@ my $total = $src + $asm; my $srcPct = sprintf("%.4f", 100 * $src / $total); my $asmPct = sprintf("%.4f", 100 * $asm / $total); -# partial_documented is double-counting the unknown_* and sub_* symbols. -$partial_documented = $partial_documented - $undocumented; - my $documented = $total_syms - ($undocumented + $partial_documented); my $docPct = sprintf("%.4f", 100 * $documented / $total_syms); my $partialPct = sprintf("%.4f", 100 * $partial_documented / $total_syms); diff --git a/INSTALL.md b/INSTALL.md index 5f2a1f05f..ee4706c6c 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -358,7 +358,7 @@ If this works, then proceed to [Installation](#installation). Otherwise, ask for 1. If pokeemerald is not already downloaded (some users may prefer to download pokeemerald via a git client like GitHub Desktop), run: ```bash - git clone https://github.com/pret/pokeemerald + git clone https://github.com/rh-hideout/pokeemerald-expansion ```
diff --git a/asm/macros/battle_script.inc b/asm/macros/battle_script.inc index 23884f6e4..61ad67549 100644 --- a/asm/macros/battle_script.inc +++ b/asm/macros/battle_script.inc @@ -1162,7 +1162,7 @@ .4byte \ptr .endm - .macro trygetintimidatetarget ptr:req + .macro unused2 ptr:req .byte 0xe1 .4byte \ptr .endm @@ -1290,7 +1290,7 @@ .4byte \ptr .endm - .macro trygetbaddreamstarget ptr:req + .macro unused ptr:req .byte 0xfd .4byte \ptr .endm @@ -1299,9 +1299,15 @@ .byte 0xfe .4byte \ptr .endm - - .macro metalburstdamagecalculator ptr:req + + .macro callnative func:req .byte 0xff + .4byte \func + .endm + +@ callnative macros + .macro metalburstdamagecalculator ptr:req + callnative BS_CalcMetalBurstDmg .4byte \ptr .endm @@ -1326,8 +1332,8 @@ various \battler, VARIOUS_GET_BATTLER_FAINTED .endm - .macro resetintimidatetracebits battler:req - various \battler, VARIOUS_RESET_INTIMIDATE_TRACE_BITS + .macro resetswitchinabilitybits battler:req + various \battler, VARIOUS_RESET_SWITCH_IN_ABILITY_BITS .endm .macro updatechoicemoveonlvlup battler:req @@ -1789,9 +1795,9 @@ various BS_ATTACKER, VARIOUS_SET_Z_EFFECT .endm - .macro consumeberry battler:req, restoreItem=FALSE + .macro consumeberry battler:req, frombattler:req various \battler, VARIOUS_CONSUME_BERRY - .byte \restoreItem + .byte \frombattler .endm .macro activateitemeffects battler:req @@ -1994,6 +2000,11 @@ .4byte \ptr .endm + .macro swapstats stat:req + various BS_ATTACKER, VARIOUS_SWAP_STATS + .byte \stat + .endm + @ helpful macros .macro setstatchanger stat:req, stages:req, down:req setbyte sSTATCHANGER, \stat | \stages << 3 | \down << 7 diff --git a/asm/macros/event.inc b/asm/macros/event.inc index c7a899eb4..49a97a247 100644 --- a/asm/macros/event.inc +++ b/asm/macros/event.inc @@ -469,7 +469,7 @@ formatwarp \map, \a, \b, \c .endm - @ Sets the dynamic warp destination. Warps with a destination map of MAP_NONE will target this destination. + @ Sets the dynamic warp destination. Warps with a destination map of MAP_DYNAMIC will target this destination. @ Warp commands can be given either the id of which warp location to go to on the destination map @ or a pair of x/y coordinates to go to directly on the destination map. .macro setdynamicwarp map:req, a, b, c diff --git a/charmap.txt b/charmap.txt index 2cb67a861..99aca4c18 100644 --- a/charmap.txt +++ b/charmap.txt @@ -426,13 +426,13 @@ SHADOW = FC 03 @ same as fc 01 COLOR_HIGHLIGHT_SHADOW = FC 04 @ takes 3 bytes PALETTE = FC 05 @ used in credits FONT = FC 06 @ Given a font id, or use font constants below instead -RESET_SIZE = FC 07 +RESET_FONT = FC 07 PAUSE = FC 08 @ manually print the wait byte after this, havent mapped them PAUSE_UNTIL_PRESS = FC 09 WAIT_SE = FC 0A PLAY_BGM = FC 0B ESCAPE = FC 0C -SHIFT_TEXT = FC 0D +SHIFT_RIGHT = FC 0D SHIFT_DOWN = FC 0E FILL_WINDOW = FC 0F PLAY_SE = FC 10 diff --git a/data/battle_anim_scripts.s b/data/battle_anim_scripts.s index ff407c0c4..1deac0890 100644 --- a/data/battle_anim_scripts.s +++ b/data/battle_anim_scripts.s @@ -1,4 +1,5 @@ #include "config.h" +#include "config/battle.h" #include "constants/battle.h" #include "constants/battle_anim.h" #include "constants/rgb.h" @@ -7,7 +8,6 @@ #include "constants/moves.h" #include "constants/pokemon.h" #include "constants/items.h" -#include "constants/battle_config.h" .include "asm/macros.inc" .include "asm/macros/battle_anim_script.inc" .include "constants/constants.inc" @@ -805,6 +805,55 @@ gBattleAnims_Moves:: .4byte Move_SANDSEAR_STORM .4byte Move_LUNAR_BLESSING .4byte Move_TAKE_HEART +@@@@@@@@@@@@ GEN 9 @@@@@@@@@@@@ + .4byte Move_TERA_BLAST + .4byte Move_SILK_TRAP + .4byte Move_AXE_KICK + .4byte Move_LAST_RESPECTS + .4byte Move_LUMINA_CRASH + .4byte Move_ORDER_UP + .4byte Move_JET_PUNCH + .4byte Move_SPICY_EXTRACT + .4byte Move_SPIN_OUT + .4byte Move_POPULATION_BOMB + .4byte Move_ICE_SPINNER + .4byte Move_GLAIVE_RUSH + .4byte Move_REVIVAL_BLESSING + .4byte Move_SALT_CURE + .4byte Move_TRIPLE_DIVE + .4byte Move_MORTAL_SPIN + .4byte Move_DOODLE + .4byte Move_FILLET_AWAY + .4byte Move_KOWTOW_CLEAVE + .4byte Move_FLOWER_TRICK + .4byte Move_TORCH_SONG + .4byte Move_AQUA_STEP + .4byte Move_RAGING_BULL + .4byte Move_MAKE_IT_RAIN + .4byte Move_RUINATION + .4byte Move_COLLISION_COURSE + .4byte Move_ELECTRO_DRIFT + .4byte Move_SHED_TAIL + .4byte Move_CHILLY_RECEPTION + .4byte Move_TIDY_UP + .4byte Move_SNOWSCAPE + .4byte Move_POUNCE + .4byte Move_TRAILBLAZE + .4byte Move_CHILLING_WATER + .4byte Move_HYPER_DRILL + .4byte Move_TWIN_BEAM + .4byte Move_RAGE_FIST + .4byte Move_ARMOR_CANNON + .4byte Move_BITTER_BLADE + .4byte Move_DOUBLE_SHOCK + .4byte Move_GIGATON_HAMMER + .4byte Move_COMEUPPANCE + .4byte Move_AQUA_CUTTER + .4byte Move_BLAZING_TORQUE + .4byte Move_WICKED_TORQUE + .4byte Move_NOXIOUS_TORQUE + .4byte Move_COMBAT_TORQUE + .4byte Move_MAGICAL_TORQUE @@@@ Z MOVES .4byte Move_BREAKNECK_BLITZ .4byte Move_ALL_OUT_PUMMELING @@ -14345,6 +14394,54 @@ Move_WILDBOLT_STORM:: Move_SANDSEAR_STORM:: Move_LUNAR_BLESSING:: Move_TAKE_HEART:: +Move_TERA_BLAST:: +Move_SILK_TRAP:: +Move_AXE_KICK:: +Move_LAST_RESPECTS:: +Move_LUMINA_CRASH:: +Move_ORDER_UP:: +Move_JET_PUNCH:: +Move_SPICY_EXTRACT:: +Move_SPIN_OUT:: +Move_POPULATION_BOMB:: +Move_ICE_SPINNER:: +Move_GLAIVE_RUSH:: +Move_REVIVAL_BLESSING:: +Move_SALT_CURE:: +Move_TRIPLE_DIVE:: +Move_MORTAL_SPIN:: +Move_DOODLE:: +Move_FILLET_AWAY:: +Move_KOWTOW_CLEAVE:: +Move_FLOWER_TRICK:: +Move_TORCH_SONG:: +Move_AQUA_STEP:: +Move_RAGING_BULL:: +Move_MAKE_IT_RAIN:: +Move_RUINATION:: +Move_COLLISION_COURSE:: +Move_ELECTRO_DRIFT:: +Move_SHED_TAIL:: +Move_CHILLY_RECEPTION:: +Move_TIDY_UP:: +Move_SNOWSCAPE:: +Move_POUNCE:: +Move_TRAILBLAZE:: +Move_CHILLING_WATER:: +Move_HYPER_DRILL:: +Move_TWIN_BEAM:: +Move_RAGE_FIST:: +Move_ARMOR_CANNON:: +Move_BITTER_BLADE:: +Move_DOUBLE_SHOCK:: +Move_GIGATON_HAMMER:: +Move_COMEUPPANCE:: +Move_AQUA_CUTTER:: +Move_BLAZING_TORQUE:: +Move_WICKED_TORQUE:: +Move_NOXIOUS_TORQUE:: +Move_COMBAT_TORQUE:: +Move_MAGICAL_TORQUE:: end @to do @@@@@@@@@@@@@@@@@@@@@@@ GEN 1-3 @@@@@@@@@@@@@@@@@@@@@@@ diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index 7abcddcc4..8f5a92c49 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -1,4 +1,5 @@ #include "config.h" +#include "config/battle.h" #include "constants/global.h" #include "constants/battle.h" #include "constants/pokemon.h" @@ -12,7 +13,6 @@ #include "constants/songs.h" #include "constants/game_stat.h" #include "constants/trainers.h" -#include "constants/battle_config.h" #include "constants/species.h" .include "asm/macros.inc" .include "asm/macros/battle_script.inc" @@ -410,6 +410,11 @@ gBattleScriptsForMoveEffects:: .4byte BattleScript_EffectSteelBeam @ EFFECT_STEEL_BEAM .4byte BattleScript_EffectExtremeEvoboost @ EFFECT_EXTREME_EVOBOOST .4byte BattleScript_EffectTerrainHit @ EFFECT_DAMAGE_SET_TERRAIN + .4byte BattleScript_EffectDarkVoid @ EFFECT_DARK_VOID + .4byte BattleScript_EffectSleepHit @ EFFECT_SLEEP_HIT + .4byte BattleScript_EffectDoubleShock @ EFFECT_DOUBLE_SHOCK + .4byte BattleScript_EffectSpecialAttackUpHit @ EFFECT_SPECIAL_ATTACK_UP_HIT + .4byte BattleScript_EffectVictoryDance @ EFFECT_VICTORY_DANCE BattleScript_AffectionBasedEndurance:: playanimation BS_TARGET, B_ANIM_AFFECTION_HANGED_ON @@ -693,11 +698,11 @@ BattleScript_EffectFling: BattleScript_EffectFlingConsumeBerry: savebattleritem BS_TARGET battleritemtolastuseditem BS_TARGET - setbyte sBERRY_OVERRIDE, TRUE @ override the requirements for eating berries + setbyte sBERRY_OVERRIDE, 1 @ override the requirements for eating berries orword gHitMarker, HITMARKER_NO_ANIMATIONS - consumeberry BS_TARGET + consumeberry BS_TARGET, TRUE bicword gHitMarker, HITMARKER_NO_ANIMATIONS - setbyte sBERRY_OVERRIDE, FALSE + setbyte sBERRY_OVERRIDE, 0 restorebattleritem BS_TARGET BattleScript_FlingEnd: tryfaintmon BS_TARGET @@ -774,9 +779,7 @@ BattleScript_EffectPhotonGeyser: BattleScript_EffectAuraWheel: @ Aura Wheel can only be used by Morpeko jumpifspecies BS_ATTACKER, SPECIES_MORPEKO, BattleScript_EffectSpeedUpHit jumpifspecies BS_ATTACKER, SPECIES_MORPEKO_HANGRY, BattleScript_EffectSpeedUpHit - printstring STRINGID_BUTPOKEMONCANTUSETHEMOVE - waitmessage B_WAIT_TIME_LONG - goto BattleScript_MoveEnd + goto BattleScript_PokemonCantUseTheMove BattleScript_EffectClangorousSoul: attackcanceler @@ -888,9 +891,7 @@ BattleScript_BothCanNoLongerEscape:: BattleScript_EffectHyperspaceFury: jumpifspecies BS_ATTACKER, SPECIES_HOOPA_UNBOUND, BattleScript_EffectHyperspaceFuryUnbound jumpifspecies BS_ATTACKER, SPECIES_HOOPA, BattleScript_ButHoopaCantUseIt - printstring STRINGID_BUTPOKEMONCANTUSETHEMOVE - waitmessage B_WAIT_TIME_LONG - goto BattleScript_MoveEnd + goto BattleScript_PokemonCantUseTheMove BattleScript_EffectHyperspaceFuryUnbound:: attackcanceler @@ -1081,11 +1082,12 @@ BattleScript_EffectStuffCheeks:: attackanimation waitanimation BattleScript_StuffCheeksEatBerry: - setbyte sBERRY_OVERRIDE, TRUE + setbyte sBERRY_OVERRIDE, 1 orword gHitMarker, HITMARKER_NO_ANIMATIONS - consumeberry BS_ATTACKER + consumeberry BS_ATTACKER, TRUE bicword gHitMarker, HITMARKER_NO_ANIMATIONS - setbyte sBERRY_OVERRIDE, FALSE + setbyte sBERRY_OVERRIDE, 0 + removeitem BS_ATTACKER setstatchanger STAT_DEF, 2, FALSE statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_StuffCheeksEnd setgraphicalstatchangevalues @@ -1281,6 +1283,23 @@ BattleScript_BurnUpRemoveType:: printstring STRINGID_ATTACKERLOSTFIRETYPE waitmessage B_WAIT_TIME_LONG return + +BattleScript_EffectDoubleShock: + attackcanceler + attackstring + ppreduce + jumpiftype BS_ATTACKER, TYPE_ELECTRIC, BattleScript_DoubleShockWorks + goto BattleScript_ButItFailed + +BattleScript_DoubleShockWorks: + setmoveeffect MOVE_EFFECT_DOUBLE_SHOCK | MOVE_EFFECT_CERTAIN + goto BattleScript_EffectHit + +BattleScript_DoubleShockRemoveType:: + losetype BS_ATTACKER, TYPE_ELECTRIC + printstring STRINGID_ATTACKERLOSTELECTRICTYPE + waitmessage B_WAIT_TIME_LONG + return BattleScript_EffectPurify: attackcanceler @@ -1363,11 +1382,13 @@ BattleScript_MoveEffectBugBite:: printstring STRINGID_BUGBITE waitmessage B_WAIT_TIME_LONG orword gHitMarker, HITMARKER_NO_ANIMATIONS - setbyte sBERRY_OVERRIDE, TRUE @ override the requirements for eating berries - consumeberry BS_ATTACKER, TRUE @ consume the berry, then restore the item from changedItems + setbyte sBERRY_OVERRIDE, 1 @ override the requirements for eating berries + savetarget + consumeberry BS_ATTACKER, FALSE bicword gHitMarker, HITMARKER_NO_ANIMATIONS - setbyte sBERRY_OVERRIDE, FALSE + setbyte sBERRY_OVERRIDE, 0 trysymbiosis + restoretarget return BattleScript_EffectCoreEnforcer: @@ -2325,6 +2346,38 @@ BattleScript_QuiverDanceTrySpeed:: BattleScript_QuiverDanceEnd:: goto BattleScript_MoveEnd +BattleScript_EffectVictoryDance: + attackcanceler + attackstring + ppreduce + jumpifstat BS_ATTACKER, CMP_LESS_THAN, STAT_ATK, MAX_STAT_STAGE, BattleScript_VictoryDanceDoMoveAnim + jumpifstat BS_ATTACKER, CMP_LESS_THAN, STAT_DEF, MAX_STAT_STAGE, BattleScript_VictoryDanceDoMoveAnim + jumpifstat BS_ATTACKER, CMP_EQUAL, STAT_SPEED, MAX_STAT_STAGE, BattleScript_CantRaiseMultipleStats +BattleScript_VictoryDanceDoMoveAnim:: + attackanimation + waitanimation + setbyte sSTAT_ANIM_PLAYED, FALSE + playstatchangeanimation BS_ATTACKER, BIT_ATK | BIT_DEF | BIT_SPEED, 0 + setstatchanger STAT_ATK, 1, FALSE + statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_VictoryDanceTryDef + jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_VictoryDanceTryDef + printfromtable gStatUpStringIds + waitmessage B_WAIT_TIME_LONG +BattleScript_VictoryDanceTryDef:: + setstatchanger STAT_DEF, 1, FALSE + statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_VictoryDanceTrySpeed + jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_VictoryDanceTrySpeed + printfromtable gStatUpStringIds + waitmessage B_WAIT_TIME_LONG +BattleScript_VictoryDanceTrySpeed:: + setstatchanger STAT_SPEED, 1, FALSE + statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_ALLOW_PTR, BattleScript_VictoryDanceEnd + jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_VictoryDanceEnd + printfromtable gStatUpStringIds + waitmessage B_WAIT_TIME_LONG +BattleScript_VictoryDanceEnd:: + goto BattleScript_MoveEnd + BattleScript_EffectSpeedUpHit: setmoveeffect MOVE_EFFECT_SPD_PLUS_1 | MOVE_EFFECT_AFFECTS_USER goto BattleScript_EffectHit @@ -2678,10 +2731,10 @@ BattleScript_EffectSpeedSwap: attackstring ppreduce accuracycheck BattleScript_ButItFailed, NO_ACC_CALC_CHECK_LOCK_ON - swapstatstages STAT_SPEED + swapstats STAT_SPEED attackanimation waitanimation - printstring STRINGID_PKMNSWITCHEDSTATCHANGES + printstring STRINGID_ATTACKERSWITCHEDSTATWITHTARGET waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd @@ -3019,6 +3072,11 @@ BattleScript_MoveMissed:: waitmessage B_WAIT_TIME_LONG goto BattleScript_MoveEnd +BattleScript_EffectDarkVoid:: +.if B_DARK_VOID_FAIL >= GEN_7 + jumpifspecies BS_ATTACKER, SPECIES_DARKRAI, BattleScript_EffectSleep + goto BattleScript_PokemonCantUseTheMove +.endif BattleScript_EffectSleep:: attackcanceler attackstring @@ -3195,6 +3253,10 @@ BattleScript_EffectBurnHit:: setmoveeffect MOVE_EFFECT_BURN goto BattleScript_EffectHit +BattleScript_EffectSleepHit:: + setmoveeffect MOVE_EFFECT_SLEEP + goto BattleScript_EffectHit + BattleScript_EffectFreezeHit:: setmoveeffect MOVE_EFFECT_FREEZE goto BattleScript_EffectHit @@ -4964,6 +5026,10 @@ BattleScript_EffectAttackUpHit:: setmoveeffect MOVE_EFFECT_ATK_PLUS_1 | MOVE_EFFECT_AFFECTS_USER goto BattleScript_EffectHit +BattleScript_EffectSpecialAttackUpHit:: + setmoveeffect MOVE_EFFECT_SP_ATK_PLUS_1 | MOVE_EFFECT_AFFECTS_USER + goto BattleScript_EffectHit + BattleScript_EffectAllStatsUpHit:: setmoveeffect MOVE_EFFECT_ALL_STATS_UP | MOVE_EFFECT_AFFECTS_USER goto BattleScript_EffectHit @@ -6122,7 +6188,7 @@ BattleScript_FaintedMonTryChoose: jumpifbyte CMP_EQUAL, gBattleCommunication, PARTY_SIZE, BattleScript_FaintedMonSendOutNew @ Switch Pokémon before opponent atknameinbuff1 - resetintimidatetracebits BS_ATTACKER + resetswitchinabilitybits BS_ATTACKER hpthresholds2 BS_ATTACKER printstring STRINGID_RETURNMON switchoutabilities BS_ATTACKER @@ -8192,19 +8258,15 @@ BattleScript_TryAdrenalineOrb: BattleScript_TryAdrenalineOrbRet: return -BattleScript_IntimidateActivatesEnd3:: - call BattleScript_PauseIntimidateActivates - end3 - -BattleScript_PauseIntimidateActivates: - pause B_WAIT_TIME_SHORT BattleScript_IntimidateActivates:: + showabilitypopup BS_ATTACKER + pause B_WAIT_TIME_LONG + destroyabilitypopup setbyte gBattlerTarget, 0 - call BattleScript_AbilityPopUp -BattleScript_IntimidateActivatesLoop: - setstatchanger STAT_ATK, 1, TRUE - trygetintimidatetarget BattleScript_IntimidateActivatesReturn - jumpifstatus2 BS_TARGET, STATUS2_SUBSTITUTE, BattleScript_IntimidateActivatesLoopIncrement +BattleScript_IntimidateLoop: + jumpifbyteequal gBattlerTarget, gBattlerAttacker, BattleScript_IntimidateLoopIncrement + jumpiftargetally BattleScript_IntimidateLoopIncrement + jumpifstatus2 BS_TARGET, STATUS2_SUBSTITUTE, BattleScript_IntimidateLoopIncrement jumpifability BS_TARGET, ABILITY_CLEAR_BODY, BattleScript_IntimidatePrevented jumpifability BS_TARGET, ABILITY_HYPER_CUTTER, BattleScript_IntimidatePrevented jumpifability BS_TARGET, ABILITY_WHITE_SMOKE, BattleScript_IntimidatePrevented @@ -8214,27 +8276,31 @@ BattleScript_IntimidateActivatesLoop: jumpifability BS_TARGET, ABILITY_OWN_TEMPO, BattleScript_IntimidatePrevented jumpifability BS_TARGET, ABILITY_OBLIVIOUS, BattleScript_IntimidatePrevented .endif - statbuffchange STAT_CHANGE_NOT_PROTECT_AFFECTED | STAT_CHANGE_ALLOW_PTR, BattleScript_IntimidateActivatesLoopIncrement - jumpifbyte CMP_GREATER_THAN, cMULTISTRING_CHOOSER, 1, BattleScript_IntimidateActivatesLoopIncrement +BattleScript_IntimidateEffect: + copybyte sBATTLER, gBattlerTarget + statbuffchange STAT_CHANGE_NOT_PROTECT_AFFECTED | MOVE_EFFECT_CERTAIN, NULL setgraphicalstatchangevalues playanimation BS_TARGET, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1 printstring STRINGID_PKMNCUTSATTACKWITH waitmessage B_WAIT_TIME_LONG call BattleScript_TryAdrenalineOrb -BattleScript_IntimidateActivatesLoopIncrement: +BattleScript_IntimidateLoopIncrement: addbyte gBattlerTarget, 1 - goto BattleScript_IntimidateActivatesLoop -BattleScript_IntimidateActivatesReturn: - return + jumpifbytenotequal gBattlerTarget, gBattlersCount, BattleScript_IntimidateLoop +BattleScript_IntimidateEnd: + destroyabilitypopup + pause B_WAIT_TIME_MED + end3 + BattleScript_IntimidatePrevented: - pause B_WAIT_TIME_SHORT call BattleScript_AbilityPopUp + pause B_WAIT_TIME_LONG setbyte gBattleCommunication STAT_ATK - stattextbuffer BS_ATTACKER + stattextbuffer BS_TARGET printstring STRINGID_STATWASNOTLOWERED waitmessage B_WAIT_TIME_LONG call BattleScript_TryAdrenalineOrb - goto BattleScript_IntimidateActivatesLoopIncrement + goto BattleScript_IntimidateLoopIncrement BattleScript_DroughtActivates:: pause B_WAIT_TIME_SHORT @@ -8357,24 +8423,33 @@ BattleScript_PsychicSurgeActivates:: call BattleScript_TerrainSeedLoop end3 -BattleScript_BadDreamsActivates:: - setbyte gBattlerTarget, 0 - call BattleScript_AbilityPopUp -BattleScript_BadDreamsLoop: - trygetbaddreamstarget BattleScript_BadDreamsEnd - dmg_1_8_targethp +BattleScript_HurtTarget_NoString: orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE - printstring STRINGID_BADDREAMSDMG - waitmessage B_WAIT_TIME_LONG - jumpifability BS_TARGET, ABILITY_MAGIC_GUARD, BattleScript_BadDreamsIncrement healthbarupdate BS_TARGET datahpupdate BS_TARGET tryfaintmon BS_TARGET - checkteamslost BattleScript_BadDreamsIncrement + return + +BattleScript_BadDreamsActivates:: + call BattleScript_AbilityPopUp + setbyte sFIXED_ABILITY_POPUP, TRUE + setbyte gBattlerTarget, 0 +BattleScript_BadDreamsLoop: + jumpiftargetally BattleScript_BadDreamsIncrement + jumpifability BS_TARGET, ABILITY_MAGIC_GUARD, BattleScript_BadDreamsIncrement + jumpifability BS_TARGET, ABILITY_COMATOSE, BattleScript_BadDreams_Dmg + jumpifstatus BS_TARGET, STATUS1_SLEEP, BattleScript_BadDreams_Dmg + goto BattleScript_BadDreamsIncrement +BattleScript_BadDreams_Dmg: + printstring STRINGID_BADDREAMSDMG + waitmessage B_WAIT_TIME_LONG + dmg_1_8_targethp + call BattleScript_HurtTarget_NoString BattleScript_BadDreamsIncrement: addbyte gBattlerTarget, 1 - goto BattleScript_BadDreamsLoop + jumpifbytenotequal gBattlerTarget, gBattlersCount, BattleScript_BadDreamsLoop BattleScript_BadDreamsEnd: + destroyabilitypopup end3 BattleScript_TookAttack:: @@ -9274,11 +9349,15 @@ BattleScript_BerryStatRaiseRet_Anim: BattleScript_BerryStatRaiseRet_End: return -BattleScript_BerryFocusEnergyEnd2:: - playanimation BS_ATTACKER, B_ANIM_HELD_ITEM_EFFECT +BattleScript_BerryFocusEnergyRet:: + playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT printstring STRINGID_PKMNUSEDXTOGETPUMPED waitmessage B_WAIT_TIME_LONG - removeitem BS_ATTACKER + removeitem BS_SCRIPTING + return + +BattleScript_BerryFocusEnergyEnd2:: + call BattleScript_BerryFocusEnergyRet end2 BattleScript_ActionSelectionItemsCantBeUsed:: @@ -9782,3 +9861,11 @@ BattleScript_TargetAbilityStatRaiseRet:: call BattleScript_StatUp BattleScript_TargetAbilityStatRaiseRet_End: return + +BattleScript_PokemonCantUseTheMove:: + attackstring + ppreduce + pause B_WAIT_TIME_SHORT + printstring STRINGID_BUTPOKEMONCANTUSETHEMOVE + waitmessage B_WAIT_TIME_LONG + goto BattleScript_MoveEnd diff --git a/data/battle_scripts_2.s b/data/battle_scripts_2.s index c1dfde61d..9b26cbd0d 100644 --- a/data/battle_scripts_2.s +++ b/data/battle_scripts_2.s @@ -1,8 +1,8 @@ +#include "config/battle.h" #include "constants/battle.h" #include "constants/battle_script_commands.h" #include "constants/battle_anim.h" #include "constants/battle_string_ids.h" -#include "constants/battle_config.h" #include "constants/items.h" #include "constants/songs.h" #include "constants/game_stat.h" diff --git a/data/event_scripts.s b/data/event_scripts.s index d77b9b9de..35d0cae2f 100644 --- a/data/event_scripts.s +++ b/data/event_scripts.s @@ -1,8 +1,9 @@ +#include "config/battle.h" +#include "config/item.h" #include "constants/global.h" #include "constants/apprentice.h" #include "constants/battle.h" #include "constants/battle_arena.h" -#include "constants/battle_config.h" #include "constants/battle_dome.h" #include "constants/battle_factory.h" #include "constants/battle_frontier.h" @@ -30,7 +31,6 @@ #include "constants/frontier_util.h" #include "constants/game_stat.h" #include "constants/item.h" -#include "constants/item_config.h" #include "constants/items.h" #include "constants/heal_locations.h" #include "constants/layouts.h" diff --git a/data/maps/AbandonedShip_CaptainsOffice/map.json b/data/maps/AbandonedShip_CaptainsOffice/map.json index e4522dfca..3b7ee528f 100644 --- a/data/maps/AbandonedShip_CaptainsOffice/map.json +++ b/data/maps/AbandonedShip_CaptainsOffice/map.json @@ -47,14 +47,14 @@ "y": 6, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_DECK", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 8, "y": 6, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_DECK", - "dest_warp_id": 4 + "dest_warp_id": "4" } ], "coord_events": [], diff --git a/data/maps/AbandonedShip_Corridors_1F/map.json b/data/maps/AbandonedShip_Corridors_1F/map.json index 94f42d654..f44cbe69c 100644 --- a/data/maps/AbandonedShip_Corridors_1F/map.json +++ b/data/maps/AbandonedShip_Corridors_1F/map.json @@ -47,84 +47,84 @@ "y": 11, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_DECK", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 8, "y": 11, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_DECK", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 0, "y": 11, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_DECK", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 1, "y": 11, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_DECK", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 11, "y": 9, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_ROOMS_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 14, "y": 9, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_ROOMS_1F", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 11, "y": 3, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_ROOMS_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 14, "y": 3, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_ROOMS_1F", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 3, "y": 9, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_ROOMS2_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 16, "y": 2, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_CORRIDORS_B1F", - "dest_warp_id": 7 + "dest_warp_id": "7" }, { "x": 5, "y": 2, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_CORRIDORS_B1F", - "dest_warp_id": 6 + "dest_warp_id": "6" }, { "x": 3, "y": 3, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_ROOMS2_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/AbandonedShip_Corridors_B1F/map.json b/data/maps/AbandonedShip_Corridors_B1F/map.json index c65e58ca5..a7ce21358 100644 --- a/data/maps/AbandonedShip_Corridors_B1F/map.json +++ b/data/maps/AbandonedShip_Corridors_B1F/map.json @@ -47,56 +47,56 @@ "y": 4, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_ROOMS2_B1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 3, "y": 4, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_ROOMS2_B1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 5, "y": 7, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_ROOMS_B1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 8, "y": 7, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_ROOMS_B1F", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 11, "y": 7, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_ROOMS_B1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 11, "y": 4, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_ROOM_B1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 0, "y": 2, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_CORRIDORS_1F", - "dest_warp_id": 10 + "dest_warp_id": "10" }, { "x": 8, "y": 2, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_CORRIDORS_1F", - "dest_warp_id": 9 + "dest_warp_id": "9" } ], "coord_events": [], diff --git a/data/maps/AbandonedShip_Deck/map.json b/data/maps/AbandonedShip_Deck/map.json index d50e015f3..8d05589d7 100644 --- a/data/maps/AbandonedShip_Deck/map.json +++ b/data/maps/AbandonedShip_Deck/map.json @@ -20,35 +20,35 @@ "y": 15, "elevation": 3, "dest_map": "MAP_ROUTE108", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 14, "y": 15, "elevation": 3, "dest_map": "MAP_ROUTE108", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 13, "y": 9, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_CORRIDORS_1F", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 8, "y": 9, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_CORRIDORS_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 12, "y": 5, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_CAPTAINS_OFFICE", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/AbandonedShip_HiddenFloorCorridors/map.json b/data/maps/AbandonedShip_HiddenFloorCorridors/map.json index e0cba2d6a..245e68b8d 100644 --- a/data/maps/AbandonedShip_HiddenFloorCorridors/map.json +++ b/data/maps/AbandonedShip_HiddenFloorCorridors/map.json @@ -20,42 +20,42 @@ "y": 8, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_HIDDEN_FLOOR_ROOMS", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 6, "y": 8, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_HIDDEN_FLOOR_ROOMS", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 9, "y": 8, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_HIDDEN_FLOOR_ROOMS", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 3, "y": 3, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_HIDDEN_FLOOR_ROOMS", - "dest_warp_id": 6 + "dest_warp_id": "6" }, { "x": 6, "y": 3, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_HIDDEN_FLOOR_ROOMS", - "dest_warp_id": 7 + "dest_warp_id": "7" }, { "x": 9, "y": 3, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_HIDDEN_FLOOR_ROOMS", - "dest_warp_id": 8 + "dest_warp_id": "8" } ], "coord_events": [], diff --git a/data/maps/AbandonedShip_HiddenFloorRooms/map.json b/data/maps/AbandonedShip_HiddenFloorRooms/map.json index 0c6962688..dce9111eb 100644 --- a/data/maps/AbandonedShip_HiddenFloorRooms/map.json +++ b/data/maps/AbandonedShip_HiddenFloorRooms/map.json @@ -73,63 +73,63 @@ "y": 14, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_HIDDEN_FLOOR_CORRIDORS", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 7, "y": 14, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_HIDDEN_FLOOR_CORRIDORS", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 21, "y": 14, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_HIDDEN_FLOOR_CORRIDORS", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 22, "y": 14, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_HIDDEN_FLOOR_CORRIDORS", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 36, "y": 14, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_HIDDEN_FLOOR_CORRIDORS", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 37, "y": 14, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_HIDDEN_FLOOR_CORRIDORS", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 6, "y": 1, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_HIDDEN_FLOOR_CORRIDORS", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 21, "y": 1, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_HIDDEN_FLOOR_CORRIDORS", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 36, "y": 1, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_HIDDEN_FLOOR_CORRIDORS", - "dest_warp_id": 5 + "dest_warp_id": "5" } ], "coord_events": [], diff --git a/data/maps/AbandonedShip_Room_B1F/map.json b/data/maps/AbandonedShip_Room_B1F/map.json index 537f0ec64..2a296325c 100644 --- a/data/maps/AbandonedShip_Room_B1F/map.json +++ b/data/maps/AbandonedShip_Room_B1F/map.json @@ -34,14 +34,14 @@ "y": 7, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_CORRIDORS_B1F", - "dest_warp_id": 5 + "dest_warp_id": "5" }, { "x": 5, "y": 7, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_CORRIDORS_B1F", - "dest_warp_id": 5 + "dest_warp_id": "5" } ], "coord_events": [], diff --git a/data/maps/AbandonedShip_Rooms2_1F/map.json b/data/maps/AbandonedShip_Rooms2_1F/map.json index b85422096..32db9dcaa 100644 --- a/data/maps/AbandonedShip_Rooms2_1F/map.json +++ b/data/maps/AbandonedShip_Rooms2_1F/map.json @@ -86,21 +86,21 @@ "y": 16, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_CORRIDORS_1F", - "dest_warp_id": 8 + "dest_warp_id": "8" }, { "x": 5, "y": 16, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_CORRIDORS_1F", - "dest_warp_id": 8 + "dest_warp_id": "8" }, { "x": 4, "y": 1, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_CORRIDORS_1F", - "dest_warp_id": 11 + "dest_warp_id": "11" } ], "coord_events": [], diff --git a/data/maps/AbandonedShip_Rooms2_B1F/map.json b/data/maps/AbandonedShip_Rooms2_B1F/map.json index 5768a9a95..d8dace774 100644 --- a/data/maps/AbandonedShip_Rooms2_B1F/map.json +++ b/data/maps/AbandonedShip_Rooms2_B1F/map.json @@ -47,28 +47,28 @@ "y": 7, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_CORRIDORS_B1F", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 5, "y": 7, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_CORRIDORS_B1F", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 13, "y": 7, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_CORRIDORS_B1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 14, "y": 7, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_CORRIDORS_B1F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/AbandonedShip_Rooms_1F/map.json b/data/maps/AbandonedShip_Rooms_1F/map.json index 3fae6f96e..6c0614ac7 100644 --- a/data/maps/AbandonedShip_Rooms_1F/map.json +++ b/data/maps/AbandonedShip_Rooms_1F/map.json @@ -73,42 +73,42 @@ "y": 16, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_CORRIDORS_1F", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 5, "y": 16, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_CORRIDORS_1F", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 4, "y": 1, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_CORRIDORS_1F", - "dest_warp_id": 6 + "dest_warp_id": "6" }, { "x": 13, "y": 16, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_CORRIDORS_1F", - "dest_warp_id": 5 + "dest_warp_id": "5" }, { "x": 13, "y": 1, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_CORRIDORS_1F", - "dest_warp_id": 7 + "dest_warp_id": "7" }, { "x": 14, "y": 16, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_CORRIDORS_1F", - "dest_warp_id": 5 + "dest_warp_id": "5" } ], "coord_events": [], diff --git a/data/maps/AbandonedShip_Rooms_B1F/map.json b/data/maps/AbandonedShip_Rooms_B1F/map.json index d69b43157..a698e0575 100644 --- a/data/maps/AbandonedShip_Rooms_B1F/map.json +++ b/data/maps/AbandonedShip_Rooms_B1F/map.json @@ -47,21 +47,21 @@ "y": 1, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_CORRIDORS_B1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 13, "y": 1, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_CORRIDORS_B1F", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 22, "y": 1, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_CORRIDORS_B1F", - "dest_warp_id": 4 + "dest_warp_id": "4" } ], "coord_events": [], diff --git a/data/maps/AbandonedShip_Underwater1/map.json b/data/maps/AbandonedShip_Underwater1/map.json index 7a2f9cd15..57ff86e43 100644 --- a/data/maps/AbandonedShip_Underwater1/map.json +++ b/data/maps/AbandonedShip_Underwater1/map.json @@ -20,14 +20,14 @@ "y": 7, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_UNDERWATER2", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 4, "y": 7, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_UNDERWATER2", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/AbandonedShip_Underwater2/map.json b/data/maps/AbandonedShip_Underwater2/map.json index 072ec34f4..5cbb058c5 100644 --- a/data/maps/AbandonedShip_Underwater2/map.json +++ b/data/maps/AbandonedShip_Underwater2/map.json @@ -20,7 +20,7 @@ "y": 1, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_UNDERWATER1", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/AlteringCave/map.json b/data/maps/AlteringCave/map.json index f6b0acc10..ac40311cf 100644 --- a/data/maps/AlteringCave/map.json +++ b/data/maps/AlteringCave/map.json @@ -20,7 +20,7 @@ "y": 22, "elevation": 0, "dest_map": "MAP_ROUTE103", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/AncientTomb/map.json b/data/maps/AncientTomb/map.json index 06254e1f9..0f4c37556 100644 --- a/data/maps/AncientTomb/map.json +++ b/data/maps/AncientTomb/map.json @@ -34,21 +34,21 @@ "y": 29, "elevation": 3, "dest_map": "MAP_ROUTE120", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 8, "y": 20, "elevation": 0, "dest_map": "MAP_ANCIENT_TOMB", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 8, "y": 11, "elevation": 3, "dest_map": "MAP_ANCIENT_TOMB", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/AquaHideout_1F/map.json b/data/maps/AquaHideout_1F/map.json index 6b9145add..4d28e5327 100644 --- a/data/maps/AquaHideout_1F/map.json +++ b/data/maps/AquaHideout_1F/map.json @@ -60,21 +60,21 @@ "y": 27, "elevation": 1, "dest_map": "MAP_LILYCOVE_CITY", - "dest_warp_id": 6 + "dest_warp_id": "6" }, { "x": 14, "y": 27, "elevation": 1, "dest_map": "MAP_LILYCOVE_CITY", - "dest_warp_id": 6 + "dest_warp_id": "6" }, { "x": 22, "y": 1, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B1F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/AquaHideout_B1F/map.json b/data/maps/AquaHideout_B1F/map.json index 0b4cb8317..471ffb951 100644 --- a/data/maps/AquaHideout_B1F/map.json +++ b/data/maps/AquaHideout_B1F/map.json @@ -138,175 +138,175 @@ "y": 1, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 18, "y": 1, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B2F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 12, "y": 1, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B2F", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 3, "y": 3, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B2F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 31, "y": 4, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B1F", - "dest_warp_id": 7 + "dest_warp_id": "7" }, { "x": 27, "y": 4, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B1F", - "dest_warp_id": 8 + "dest_warp_id": "8" }, { "x": 20, "y": 4, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B1F", - "dest_warp_id": 10 + "dest_warp_id": "10" }, { "x": 27, "y": 12, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B1F", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 3, "y": 15, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B1F", - "dest_warp_id": 5 + "dest_warp_id": "5" }, { "x": 3, "y": 20, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B1F", - "dest_warp_id": 12 + "dest_warp_id": "12" }, { "x": 32, "y": 19, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B1F", - "dest_warp_id": 6 + "dest_warp_id": "6" }, { "x": 23, "y": 10, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B1F", - "dest_warp_id": 22 + "dest_warp_id": "22" }, { "x": 45, "y": 3, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B1F", - "dest_warp_id": 9 + "dest_warp_id": "9" }, { "x": 42, "y": 5, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B1F", - "dest_warp_id": 18 + "dest_warp_id": "18" }, { "x": 45, "y": 5, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B1F", - "dest_warp_id": 12 + "dest_warp_id": "12" }, { "x": 48, "y": 5, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B1F", - "dest_warp_id": 16 + "dest_warp_id": "16" }, { "x": 42, "y": 9, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B1F", - "dest_warp_id": 15 + "dest_warp_id": "15" }, { "x": 45, "y": 9, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B1F", - "dest_warp_id": 20 + "dest_warp_id": "20" }, { "x": 48, "y": 9, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B1F", - "dest_warp_id": 13 + "dest_warp_id": "13" }, { "x": 42, "y": 13, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B1F", - "dest_warp_id": 24 + "dest_warp_id": "24" }, { "x": 45, "y": 13, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B1F", - "dest_warp_id": 17 + "dest_warp_id": "17" }, { "x": 48, "y": 13, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B1F", - "dest_warp_id": 12 + "dest_warp_id": "12" }, { "x": 42, "y": 17, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B1F", - "dest_warp_id": 11 + "dest_warp_id": "11" }, { "x": 45, "y": 17, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B1F", - "dest_warp_id": 17 + "dest_warp_id": "17" }, { "x": 48, "y": 17, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B1F", - "dest_warp_id": 19 + "dest_warp_id": "19" } ], "coord_events": [], diff --git a/data/maps/AquaHideout_B2F/map.json b/data/maps/AquaHideout_B2F/map.json index d5697bfcd..bc58b8d6b 100644 --- a/data/maps/AquaHideout_B2F/map.json +++ b/data/maps/AquaHideout_B2F/map.json @@ -99,70 +99,70 @@ "y": 1, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B1F", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 12, "y": 1, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 3, "y": 3, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B1F", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 31, "y": 8, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B2F", - "dest_warp_id": 5 + "dest_warp_id": "5" }, { "x": 8, "y": 8, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B2F", - "dest_warp_id": 8 + "dest_warp_id": "8" }, { "x": 5, "y": 8, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B2F", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 18, "y": 13, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B2F", - "dest_warp_id": 7 + "dest_warp_id": "7" }, { "x": 12, "y": 13, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B2F", - "dest_warp_id": 6 + "dest_warp_id": "6" }, { "x": 31, "y": 17, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B2F", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 32, "y": 20, "elevation": 3, "dest_map": "MAP_AQUA_HIDEOUT_B1F", - "dest_warp_id": 4 + "dest_warp_id": "4" } ], "coord_events": [ diff --git a/data/maps/ArtisanCave_1F/map.json b/data/maps/ArtisanCave_1F/map.json index 0d315b8ee..d424b07d5 100644 --- a/data/maps/ArtisanCave_1F/map.json +++ b/data/maps/ArtisanCave_1F/map.json @@ -34,14 +34,14 @@ "y": 17, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_EAST", - "dest_warp_id": 13 + "dest_warp_id": "13" }, { "x": 6, "y": 5, "elevation": 0, "dest_map": "MAP_ARTISAN_CAVE_B1F", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/ArtisanCave_B1F/map.json b/data/maps/ArtisanCave_B1F/map.json index 07a897bb9..f7b315e6e 100644 --- a/data/maps/ArtisanCave_B1F/map.json +++ b/data/maps/ArtisanCave_B1F/map.json @@ -34,14 +34,14 @@ "y": 48, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_WEST", - "dest_warp_id": 10 + "dest_warp_id": "10" }, { "x": 38, "y": 5, "elevation": 0, "dest_map": "MAP_ARTISAN_CAVE_1F", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/BattleColosseum_2P/map.json b/data/maps/BattleColosseum_2P/map.json index 3c9887a65..b6aa44b99 100644 --- a/data/maps/BattleColosseum_2P/map.json +++ b/data/maps/BattleColosseum_2P/map.json @@ -33,15 +33,15 @@ "x": 6, "y": 8, "elevation": 3, - "dest_map": "MAP_NONE", - "dest_warp_id": 127 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_DYNAMIC" }, { "x": 7, "y": 8, "elevation": 3, - "dest_map": "MAP_NONE", - "dest_warp_id": 127 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_DYNAMIC" } ], "coord_events": [ diff --git a/data/maps/BattleColosseum_4P/map.json b/data/maps/BattleColosseum_4P/map.json index a6eddc9a8..19a4a9ef2 100644 --- a/data/maps/BattleColosseum_4P/map.json +++ b/data/maps/BattleColosseum_4P/map.json @@ -19,29 +19,29 @@ "x": 5, "y": 8, "elevation": 3, - "dest_map": "MAP_NONE", - "dest_warp_id": 127 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_DYNAMIC" }, { "x": 6, "y": 8, "elevation": 3, - "dest_map": "MAP_NONE", - "dest_warp_id": 127 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_DYNAMIC" }, { "x": 7, "y": 8, "elevation": 3, - "dest_map": "MAP_NONE", - "dest_warp_id": 127 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_DYNAMIC" }, { "x": 8, "y": 8, "elevation": 3, - "dest_map": "MAP_NONE", - "dest_warp_id": 127 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_DYNAMIC" } ], "coord_events": [ diff --git a/data/maps/BattleFrontier_BattleArenaLobby/map.json b/data/maps/BattleFrontier_BattleArenaLobby/map.json index 27dd33317..210da8118 100644 --- a/data/maps/BattleFrontier_BattleArenaLobby/map.json +++ b/data/maps/BattleFrontier_BattleArenaLobby/map.json @@ -86,7 +86,7 @@ "y": 12, "elevation": 3, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_EAST", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/BattleFrontier_BattleDomeCorridor/map.json b/data/maps/BattleFrontier_BattleDomeCorridor/map.json index 89fc022c5..5a68af443 100644 --- a/data/maps/BattleFrontier_BattleDomeCorridor/map.json +++ b/data/maps/BattleFrontier_BattleDomeCorridor/map.json @@ -34,14 +34,14 @@ "y": 8, "elevation": 3, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_WEST", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 7, "y": 8, "elevation": 3, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_WEST", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/BattleFrontier_BattleDomeLobby/map.json b/data/maps/BattleFrontier_BattleDomeLobby/map.json index e550bbaf5..d47bb0f2b 100644 --- a/data/maps/BattleFrontier_BattleDomeLobby/map.json +++ b/data/maps/BattleFrontier_BattleDomeLobby/map.json @@ -99,14 +99,14 @@ "y": 16, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_WEST", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 12, "y": 16, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_WEST", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/BattleFrontier_BattleDomePreBattleRoom/map.json b/data/maps/BattleFrontier_BattleDomePreBattleRoom/map.json index eb278c10d..a175248ab 100644 --- a/data/maps/BattleFrontier_BattleDomePreBattleRoom/map.json +++ b/data/maps/BattleFrontier_BattleDomePreBattleRoom/map.json @@ -34,14 +34,14 @@ "y": 8, "elevation": 3, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_WEST", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 7, "y": 8, "elevation": 3, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_WEST", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/BattleFrontier_BattleFactoryLobby/map.json b/data/maps/BattleFrontier_BattleFactoryLobby/map.json index f68567886..15d395fd8 100644 --- a/data/maps/BattleFrontier_BattleFactoryLobby/map.json +++ b/data/maps/BattleFrontier_BattleFactoryLobby/map.json @@ -99,14 +99,14 @@ "y": 11, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_WEST", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 10, "y": 11, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_WEST", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/BattleFrontier_BattlePalaceBattleRoom/map.json b/data/maps/BattleFrontier_BattlePalaceBattleRoom/map.json index 2d721ad08..a0d00b5c0 100644 --- a/data/maps/BattleFrontier_BattlePalaceBattleRoom/map.json +++ b/data/maps/BattleFrontier_BattlePalaceBattleRoom/map.json @@ -86,14 +86,14 @@ "y": 9, "elevation": 3, "dest_map": "MAP_BATTLE_FRONTIER_BATTLE_PALACE_CORRIDOR", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 1, "y": 9, "elevation": 3, "dest_map": "MAP_BATTLE_FRONTIER_BATTLE_PALACE_CORRIDOR", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/BattleFrontier_BattlePalaceCorridor/map.json b/data/maps/BattleFrontier_BattlePalaceCorridor/map.json index 147aac55d..e96f6d9e8 100644 --- a/data/maps/BattleFrontier_BattlePalaceCorridor/map.json +++ b/data/maps/BattleFrontier_BattlePalaceCorridor/map.json @@ -112,28 +112,28 @@ "y": 13, "elevation": 3, "dest_map": "MAP_BATTLE_FRONTIER_BATTLE_PALACE_LOBBY", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 9, "y": 13, "elevation": 3, "dest_map": "MAP_BATTLE_FRONTIER_BATTLE_PALACE_LOBBY", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 6, "y": 3, "elevation": 3, "dest_map": "MAP_BATTLE_FRONTIER_BATTLE_PALACE_BATTLE_ROOM", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 10, "y": 3, "elevation": 3, "dest_map": "MAP_BATTLE_FRONTIER_BATTLE_PALACE_BATTLE_ROOM", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/BattleFrontier_BattlePalaceLobby/map.json b/data/maps/BattleFrontier_BattlePalaceLobby/map.json index bcf3793e3..7c8ee0cd1 100644 --- a/data/maps/BattleFrontier_BattlePalaceLobby/map.json +++ b/data/maps/BattleFrontier_BattlePalaceLobby/map.json @@ -99,21 +99,21 @@ "y": 11, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_EAST", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 13, "y": 11, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_EAST", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 5, "y": 4, "elevation": 3, "dest_map": "MAP_BATTLE_FRONTIER_BATTLE_PALACE_CORRIDOR", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/BattleFrontier_BattlePikeLobby/map.json b/data/maps/BattleFrontier_BattlePikeLobby/map.json index 2ca2ce485..0faca2e94 100644 --- a/data/maps/BattleFrontier_BattlePikeLobby/map.json +++ b/data/maps/BattleFrontier_BattlePikeLobby/map.json @@ -73,21 +73,21 @@ "y": 12, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_WEST", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 4, "y": 12, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_WEST", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 6, "y": 12, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_WEST", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/BattleFrontier_BattlePyramidLobby/map.json b/data/maps/BattleFrontier_BattlePyramidLobby/map.json index 56736628f..4652af274 100644 --- a/data/maps/BattleFrontier_BattlePyramidLobby/map.json +++ b/data/maps/BattleFrontier_BattlePyramidLobby/map.json @@ -73,7 +73,7 @@ "y": 17, "elevation": 4, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_EAST", - "dest_warp_id": 3 + "dest_warp_id": "3" } ], "coord_events": [], diff --git a/data/maps/BattleFrontier_BattleTowerBattleRoom/map.json b/data/maps/BattleFrontier_BattleTowerBattleRoom/map.json index 7cb154d8d..1018ebb6d 100644 --- a/data/maps/BattleFrontier_BattleTowerBattleRoom/map.json +++ b/data/maps/BattleFrontier_BattleTowerBattleRoom/map.json @@ -60,14 +60,14 @@ "y": 8, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_BATTLE_TOWER_LOBBY", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 6, "y": 8, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_BATTLE_TOWER_LOBBY", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/BattleFrontier_BattleTowerLobby/map.json b/data/maps/BattleFrontier_BattleTowerLobby/map.json index 3135c48fe..d672f0718 100644 --- a/data/maps/BattleFrontier_BattleTowerLobby/map.json +++ b/data/maps/BattleFrontier_BattleTowerLobby/map.json @@ -138,21 +138,21 @@ "y": 9, "elevation": 3, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_EAST", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 13, "y": 9, "elevation": 3, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_EAST", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 6, "y": 1, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_BATTLE_TOWER_BATTLE_ROOM", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc b/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc index 40936936a..4e7284fd0 100644 --- a/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc +++ b/data/maps/BattleFrontier_BattleTowerLobby/scripts.inc @@ -911,7 +911,7 @@ BattleFrontier_BattleTowerLobby_EventScript_ExitRules:: end @ Unused -BattleFrontier_BattleTowerLobby_EventScript_DirectYouToBattleRoom: +BattleFrontier_BattleTowerLobby_Text_DirectYouToBattleRoom: .string "I'll direct you to your BATTLE ROOM now.$" BattleFrontier_BattleTowerLobby_Text_DidntSaveBeforeQuitting: diff --git a/data/maps/BattleFrontier_ExchangeServiceCorner/map.json b/data/maps/BattleFrontier_ExchangeServiceCorner/map.json index 50c6a90a9..94de094bb 100644 --- a/data/maps/BattleFrontier_ExchangeServiceCorner/map.json +++ b/data/maps/BattleFrontier_ExchangeServiceCorner/map.json @@ -138,21 +138,21 @@ "y": 10, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_EAST", - "dest_warp_id": 6 + "dest_warp_id": "6" }, { "x": 6, "y": 10, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_EAST", - "dest_warp_id": 6 + "dest_warp_id": "6" }, { "x": 8, "y": 10, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_EAST", - "dest_warp_id": 6 + "dest_warp_id": "6" } ], "coord_events": [], diff --git a/data/maps/BattleFrontier_Lounge1/map.json b/data/maps/BattleFrontier_Lounge1/map.json index a650e3ce7..dbbe0be81 100644 --- a/data/maps/BattleFrontier_Lounge1/map.json +++ b/data/maps/BattleFrontier_Lounge1/map.json @@ -60,7 +60,7 @@ "y": 9, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_EAST", - "dest_warp_id": 5 + "dest_warp_id": "5" } ], "coord_events": [], diff --git a/data/maps/BattleFrontier_Lounge2/map.json b/data/maps/BattleFrontier_Lounge2/map.json index 856e2d395..00411ca89 100644 --- a/data/maps/BattleFrontier_Lounge2/map.json +++ b/data/maps/BattleFrontier_Lounge2/map.json @@ -86,14 +86,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_WEST", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 2, "y": 7, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_WEST", - "dest_warp_id": 3 + "dest_warp_id": "3" } ], "coord_events": [], diff --git a/data/maps/BattleFrontier_Lounge3/map.json b/data/maps/BattleFrontier_Lounge3/map.json index 58aee4d41..368df22b9 100644 --- a/data/maps/BattleFrontier_Lounge3/map.json +++ b/data/maps/BattleFrontier_Lounge3/map.json @@ -86,7 +86,7 @@ "y": 9, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_EAST", - "dest_warp_id": 9 + "dest_warp_id": "9" } ], "coord_events": [], diff --git a/data/maps/BattleFrontier_Lounge4/map.json b/data/maps/BattleFrontier_Lounge4/map.json index c82c51dce..750f928c0 100644 --- a/data/maps/BattleFrontier_Lounge4/map.json +++ b/data/maps/BattleFrontier_Lounge4/map.json @@ -60,7 +60,7 @@ "y": 9, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_WEST", - "dest_warp_id": 6 + "dest_warp_id": "6" } ], "coord_events": [], diff --git a/data/maps/BattleFrontier_Lounge5/map.json b/data/maps/BattleFrontier_Lounge5/map.json index a8650cfd6..cf8505868 100644 --- a/data/maps/BattleFrontier_Lounge5/map.json +++ b/data/maps/BattleFrontier_Lounge5/map.json @@ -73,14 +73,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_EAST", - "dest_warp_id": 7 + "dest_warp_id": "7" }, { "x": 2, "y": 7, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_EAST", - "dest_warp_id": 7 + "dest_warp_id": "7" } ], "coord_events": [], diff --git a/data/maps/BattleFrontier_Lounge6/map.json b/data/maps/BattleFrontier_Lounge6/map.json index 36027a47e..19c816253 100644 --- a/data/maps/BattleFrontier_Lounge6/map.json +++ b/data/maps/BattleFrontier_Lounge6/map.json @@ -34,7 +34,7 @@ "y": 9, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_EAST", - "dest_warp_id": 8 + "dest_warp_id": "8" } ], "coord_events": [], diff --git a/data/maps/BattleFrontier_Lounge7/map.json b/data/maps/BattleFrontier_Lounge7/map.json index 36cf3a882..12fd7e588 100644 --- a/data/maps/BattleFrontier_Lounge7/map.json +++ b/data/maps/BattleFrontier_Lounge7/map.json @@ -73,7 +73,7 @@ "y": 9, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_WEST", - "dest_warp_id": 7 + "dest_warp_id": "7" } ], "coord_events": [], diff --git a/data/maps/BattleFrontier_Lounge8/map.json b/data/maps/BattleFrontier_Lounge8/map.json index 0736d3b5c..7e18c9a63 100644 --- a/data/maps/BattleFrontier_Lounge8/map.json +++ b/data/maps/BattleFrontier_Lounge8/map.json @@ -60,7 +60,7 @@ "y": 9, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_EAST", - "dest_warp_id": 10 + "dest_warp_id": "10" } ], "coord_events": [], diff --git a/data/maps/BattleFrontier_Lounge9/map.json b/data/maps/BattleFrontier_Lounge9/map.json index d73ad0e92..2c19d35a3 100644 --- a/data/maps/BattleFrontier_Lounge9/map.json +++ b/data/maps/BattleFrontier_Lounge9/map.json @@ -34,14 +34,14 @@ "y": 9, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_EAST", - "dest_warp_id": 11 + "dest_warp_id": "11" }, { "x": 2, "y": 9, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_EAST", - "dest_warp_id": 11 + "dest_warp_id": "11" } ], "coord_events": [], diff --git a/data/maps/BattleFrontier_Mart/map.json b/data/maps/BattleFrontier_Mart/map.json index 10dc2cb1b..28261958a 100644 --- a/data/maps/BattleFrontier_Mart/map.json +++ b/data/maps/BattleFrontier_Mart/map.json @@ -73,14 +73,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_WEST", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 4, "y": 7, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_WEST", - "dest_warp_id": 4 + "dest_warp_id": "4" } ], "coord_events": [], diff --git a/data/maps/BattleFrontier_OutsideEast/map.json b/data/maps/BattleFrontier_OutsideEast/map.json index 21ae9446c..c99fe3047 100644 --- a/data/maps/BattleFrontier_OutsideEast/map.json +++ b/data/maps/BattleFrontier_OutsideEast/map.json @@ -14,9 +14,9 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "left", + "map": "MAP_BATTLE_FRONTIER_OUTSIDE_WEST", "offset": 0, - "map": "MAP_BATTLE_FRONTIER_OUTSIDE_WEST" + "direction": "left" } ], "object_events": [ @@ -365,98 +365,98 @@ "y": 14, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_BATTLE_TOWER_LOBBY", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 39, "y": 29, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_BATTLE_ARENA_LOBBY", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 45, "y": 56, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_BATTLE_PALACE_LOBBY", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 58, "y": 14, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_BATTLE_PYRAMID_LOBBY", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 35, "y": 12, "elevation": 3, "dest_map": "MAP_BATTLE_FRONTIER_RANKING_HALL", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 4, "y": 44, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_LOUNGE1", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 10, "y": 28, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_EXCHANGE_SERVICE_CORNER", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 22, "y": 51, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_LOUNGE5", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 5, "y": 8, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_LOUNGE6", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 65, "y": 31, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_LOUNGE3", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 14, "y": 51, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_LOUNGE8", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 21, "y": 45, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_LOUNGE9", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 3, "y": 51, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_POKEMON_CENTER_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 28, "y": 7, "elevation": 0, "dest_map": "MAP_ARTISAN_CAVE_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/BattleFrontier_OutsideWest/map.json b/data/maps/BattleFrontier_OutsideWest/map.json index e28eea22d..bcf579cf1 100644 --- a/data/maps/BattleFrontier_OutsideWest/map.json +++ b/data/maps/BattleFrontier_OutsideWest/map.json @@ -14,9 +14,9 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "right", + "map": "MAP_BATTLE_FRONTIER_OUTSIDE_EAST", "offset": 0, - "map": "MAP_BATTLE_FRONTIER_OUTSIDE_EAST" + "direction": "right" } ], "object_events": [ @@ -339,77 +339,77 @@ "y": 27, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_BATTLE_PIKE_LOBBY", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 19, "y": 17, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_BATTLE_DOME_LOBBY", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 11, "y": 38, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_BATTLE_FACTORY_LOBBY", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 45, "y": 44, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_LOUNGE2", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 51, "y": 51, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_MART", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 44, "y": 5, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_SCOTTS_HOUSE", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 53, "y": 44, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_LOUNGE4", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 5, "y": 20, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_LOUNGE7", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 26, "y": 65, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_RECEPTION_GATE", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 26, "y": 61, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_RECEPTION_GATE", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 39, "y": 55, "elevation": 0, "dest_map": "MAP_ARTISAN_CAVE_B1F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/BattleFrontier_PokemonCenter_1F/map.json b/data/maps/BattleFrontier_PokemonCenter_1F/map.json index b4b16ba94..b993e9277 100644 --- a/data/maps/BattleFrontier_PokemonCenter_1F/map.json +++ b/data/maps/BattleFrontier_PokemonCenter_1F/map.json @@ -86,21 +86,21 @@ "y": 8, "elevation": 3, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_EAST", - "dest_warp_id": 12 + "dest_warp_id": "12" }, { "x": 6, "y": 8, "elevation": 3, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_EAST", - "dest_warp_id": 12 + "dest_warp_id": "12" }, { "x": 1, "y": 6, "elevation": 4, "dest_map": "MAP_BATTLE_FRONTIER_POKEMON_CENTER_2F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/BattleFrontier_PokemonCenter_2F/map.json b/data/maps/BattleFrontier_PokemonCenter_2F/map.json index cb3191649..e8bdfb2b2 100644 --- a/data/maps/BattleFrontier_PokemonCenter_2F/map.json +++ b/data/maps/BattleFrontier_PokemonCenter_2F/map.json @@ -73,21 +73,21 @@ "y": 6, "elevation": 4, "dest_map": "MAP_BATTLE_FRONTIER_POKEMON_CENTER_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 5, "y": 1, "elevation": 3, "dest_map": "MAP_UNION_ROOM", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 9, "y": 1, "elevation": 3, "dest_map": "MAP_TRADE_CENTER", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/BattleFrontier_RankingHall/map.json b/data/maps/BattleFrontier_RankingHall/map.json index 5ac9f6699..dc5fc9ce7 100644 --- a/data/maps/BattleFrontier_RankingHall/map.json +++ b/data/maps/BattleFrontier_RankingHall/map.json @@ -60,14 +60,14 @@ "y": 14, "elevation": 3, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_EAST", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 27, "y": 14, "elevation": 3, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_EAST", - "dest_warp_id": 4 + "dest_warp_id": "4" } ], "coord_events": [], diff --git a/data/maps/BattleFrontier_ReceptionGate/map.json b/data/maps/BattleFrontier_ReceptionGate/map.json index 44c71ccd1..12a178198 100644 --- a/data/maps/BattleFrontier_ReceptionGate/map.json +++ b/data/maps/BattleFrontier_ReceptionGate/map.json @@ -86,14 +86,14 @@ "y": 13, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_WEST", - "dest_warp_id": 8 + "dest_warp_id": "8" }, { "x": 4, "y": 1, "elevation": 0, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_WEST", - "dest_warp_id": 9 + "dest_warp_id": "9" } ], "coord_events": [], diff --git a/data/maps/BattleFrontier_ScottsHouse/map.json b/data/maps/BattleFrontier_ScottsHouse/map.json index 74393db0b..7a6de715a 100644 --- a/data/maps/BattleFrontier_ScottsHouse/map.json +++ b/data/maps/BattleFrontier_ScottsHouse/map.json @@ -34,14 +34,14 @@ "y": 7, "elevation": 3, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_WEST", - "dest_warp_id": 5 + "dest_warp_id": "5" }, { "x": 3, "y": 7, "elevation": 3, "dest_map": "MAP_BATTLE_FRONTIER_OUTSIDE_WEST", - "dest_warp_id": 5 + "dest_warp_id": "5" } ], "coord_events": [], diff --git a/data/maps/BirthIsland_Exterior/map.json b/data/maps/BirthIsland_Exterior/map.json index 3ee9e551d..3c5cc874c 100644 --- a/data/maps/BirthIsland_Exterior/map.json +++ b/data/maps/BirthIsland_Exterior/map.json @@ -47,7 +47,7 @@ "y": 24, "elevation": 0, "dest_map": "MAP_BIRTH_ISLAND_HARBOR", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/BirthIsland_Harbor/map.json b/data/maps/BirthIsland_Harbor/map.json index d76ed4782..cce96bfc1 100644 --- a/data/maps/BirthIsland_Harbor/map.json +++ b/data/maps/BirthIsland_Harbor/map.json @@ -47,7 +47,7 @@ "y": 2, "elevation": 0, "dest_map": "MAP_BIRTH_ISLAND_EXTERIOR", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/CaveOfOrigin_1F/map.json b/data/maps/CaveOfOrigin_1F/map.json index 17da43907..292c006c2 100644 --- a/data/maps/CaveOfOrigin_1F/map.json +++ b/data/maps/CaveOfOrigin_1F/map.json @@ -20,14 +20,14 @@ "y": 17, "elevation": 3, "dest_map": "MAP_CAVE_OF_ORIGIN_ENTRANCE", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 14, "y": 5, "elevation": 3, "dest_map": "MAP_CAVE_OF_ORIGIN_B1F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/CaveOfOrigin_B1F/map.json b/data/maps/CaveOfOrigin_B1F/map.json index 690d26055..166f79998 100644 --- a/data/maps/CaveOfOrigin_B1F/map.json +++ b/data/maps/CaveOfOrigin_B1F/map.json @@ -34,7 +34,7 @@ "y": 3, "elevation": 3, "dest_map": "MAP_CAVE_OF_ORIGIN_1F", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/CaveOfOrigin_Entrance/map.json b/data/maps/CaveOfOrigin_Entrance/map.json index f45f47f99..ad5d8b2bb 100644 --- a/data/maps/CaveOfOrigin_Entrance/map.json +++ b/data/maps/CaveOfOrigin_Entrance/map.json @@ -20,14 +20,14 @@ "y": 20, "elevation": 3, "dest_map": "MAP_SOOTOPOLIS_CITY", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 9, "y": 5, "elevation": 3, "dest_map": "MAP_CAVE_OF_ORIGIN_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/CaveOfOrigin_UnusedRubySapphireMap1/map.json b/data/maps/CaveOfOrigin_UnusedRubySapphireMap1/map.json index 8b05ac536..ac711a04c 100644 --- a/data/maps/CaveOfOrigin_UnusedRubySapphireMap1/map.json +++ b/data/maps/CaveOfOrigin_UnusedRubySapphireMap1/map.json @@ -20,14 +20,14 @@ "y": 5, "elevation": 3, "dest_map": "MAP_CAVE_OF_ORIGIN_1F", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 5, "y": 11, "elevation": 3, "dest_map": "MAP_CAVE_OF_ORIGIN_UNUSED_RUBY_SAPPHIRE_MAP2", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/CaveOfOrigin_UnusedRubySapphireMap2/map.json b/data/maps/CaveOfOrigin_UnusedRubySapphireMap2/map.json index 9a3d09810..b603bd515 100644 --- a/data/maps/CaveOfOrigin_UnusedRubySapphireMap2/map.json +++ b/data/maps/CaveOfOrigin_UnusedRubySapphireMap2/map.json @@ -20,14 +20,14 @@ "y": 10, "elevation": 3, "dest_map": "MAP_CAVE_OF_ORIGIN_UNUSED_RUBY_SAPPHIRE_MAP1", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 8, "y": 14, "elevation": 3, "dest_map": "MAP_CAVE_OF_ORIGIN_UNUSED_RUBY_SAPPHIRE_MAP3", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/CaveOfOrigin_UnusedRubySapphireMap3/map.json b/data/maps/CaveOfOrigin_UnusedRubySapphireMap3/map.json index 9456f4012..4566a1ea5 100644 --- a/data/maps/CaveOfOrigin_UnusedRubySapphireMap3/map.json +++ b/data/maps/CaveOfOrigin_UnusedRubySapphireMap3/map.json @@ -20,14 +20,14 @@ "y": 14, "elevation": 3, "dest_map": "MAP_CAVE_OF_ORIGIN_UNUSED_RUBY_SAPPHIRE_MAP2", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 12, "y": 6, "elevation": 3, "dest_map": "MAP_CAVE_OF_ORIGIN_B1F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/DesertRuins/map.json b/data/maps/DesertRuins/map.json index c87df0dee..abbe0db10 100644 --- a/data/maps/DesertRuins/map.json +++ b/data/maps/DesertRuins/map.json @@ -34,21 +34,21 @@ "y": 29, "elevation": 3, "dest_map": "MAP_ROUTE111", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 8, "y": 20, "elevation": 0, "dest_map": "MAP_DESERT_RUINS", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 8, "y": 11, "elevation": 3, "dest_map": "MAP_DESERT_RUINS", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/DesertUnderpass/map.json b/data/maps/DesertUnderpass/map.json index 20db73381..152d32a79 100644 --- a/data/maps/DesertUnderpass/map.json +++ b/data/maps/DesertUnderpass/map.json @@ -34,7 +34,7 @@ "y": 12, "elevation": 0, "dest_map": "MAP_ROUTE114_FOSSIL_MANIACS_TUNNEL", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/DewfordTown/map.json b/data/maps/DewfordTown/map.json index 8beb5add7..f073a7436 100644 --- a/data/maps/DewfordTown/map.json +++ b/data/maps/DewfordTown/map.json @@ -14,14 +14,14 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "up", + "map": "MAP_ROUTE106", "offset": -60, - "map": "MAP_ROUTE106" + "direction": "up" }, { - "direction": "right", + "map": "MAP_ROUTE107", "offset": 0, - "map": "MAP_ROUTE107" + "direction": "right" } ], "object_events": [ @@ -97,35 +97,35 @@ "y": 3, "elevation": 0, "dest_map": "MAP_DEWFORD_TOWN_HALL", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 2, "y": 10, "elevation": 0, "dest_map": "MAP_DEWFORD_TOWN_POKEMON_CENTER_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 8, "y": 17, "elevation": 0, "dest_map": "MAP_DEWFORD_TOWN_GYM", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 17, "y": 14, "elevation": 0, "dest_map": "MAP_DEWFORD_TOWN_HOUSE1", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 8, "y": 8, "elevation": 0, "dest_map": "MAP_DEWFORD_TOWN_HOUSE2", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/DewfordTown_Gym/map.json b/data/maps/DewfordTown_Gym/map.json index f28550f6e..d1ae1d7fc 100644 --- a/data/maps/DewfordTown_Gym/map.json +++ b/data/maps/DewfordTown_Gym/map.json @@ -125,14 +125,14 @@ "y": 27, "elevation": 0, "dest_map": "MAP_DEWFORD_TOWN", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 6, "y": 27, "elevation": 0, "dest_map": "MAP_DEWFORD_TOWN", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/DewfordTown_Hall/map.json b/data/maps/DewfordTown_Hall/map.json index 24cde4ea1..9489a3d1e 100644 --- a/data/maps/DewfordTown_Hall/map.json +++ b/data/maps/DewfordTown_Hall/map.json @@ -138,14 +138,14 @@ "y": 8, "elevation": 0, "dest_map": "MAP_DEWFORD_TOWN", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 6, "y": 8, "elevation": 0, "dest_map": "MAP_DEWFORD_TOWN", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/DewfordTown_House1/map.json b/data/maps/DewfordTown_House1/map.json index fd53469b9..57e1909f4 100644 --- a/data/maps/DewfordTown_House1/map.json +++ b/data/maps/DewfordTown_House1/map.json @@ -60,14 +60,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_DEWFORD_TOWN", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 4, "y": 7, "elevation": 0, "dest_map": "MAP_DEWFORD_TOWN", - "dest_warp_id": 3 + "dest_warp_id": "3" } ], "coord_events": [], diff --git a/data/maps/DewfordTown_House2/map.json b/data/maps/DewfordTown_House2/map.json index 4384f3767..63e9e42ba 100644 --- a/data/maps/DewfordTown_House2/map.json +++ b/data/maps/DewfordTown_House2/map.json @@ -47,14 +47,14 @@ "y": 8, "elevation": 0, "dest_map": "MAP_DEWFORD_TOWN", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 4, "y": 8, "elevation": 0, "dest_map": "MAP_DEWFORD_TOWN", - "dest_warp_id": 4 + "dest_warp_id": "4" } ], "coord_events": [], diff --git a/data/maps/DewfordTown_PokemonCenter_1F/map.json b/data/maps/DewfordTown_PokemonCenter_1F/map.json index 131c93092..5e5c7b93e 100644 --- a/data/maps/DewfordTown_PokemonCenter_1F/map.json +++ b/data/maps/DewfordTown_PokemonCenter_1F/map.json @@ -60,21 +60,21 @@ "y": 8, "elevation": 3, "dest_map": "MAP_DEWFORD_TOWN", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 6, "y": 8, "elevation": 3, "dest_map": "MAP_DEWFORD_TOWN", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 1, "y": 6, "elevation": 4, "dest_map": "MAP_DEWFORD_TOWN_POKEMON_CENTER_2F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/DewfordTown_PokemonCenter_2F/map.json b/data/maps/DewfordTown_PokemonCenter_2F/map.json index 56add5053..8fd655abf 100644 --- a/data/maps/DewfordTown_PokemonCenter_2F/map.json +++ b/data/maps/DewfordTown_PokemonCenter_2F/map.json @@ -73,21 +73,21 @@ "y": 6, "elevation": 4, "dest_map": "MAP_DEWFORD_TOWN_POKEMON_CENTER_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 5, "y": 1, "elevation": 3, "dest_map": "MAP_UNION_ROOM", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 9, "y": 1, "elevation": 3, "dest_map": "MAP_TRADE_CENTER", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/EverGrandeCity/map.json b/data/maps/EverGrandeCity/map.json index 9db9c8feb..58978b7ff 100644 --- a/data/maps/EverGrandeCity/map.json +++ b/data/maps/EverGrandeCity/map.json @@ -14,9 +14,9 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "left", + "map": "MAP_ROUTE128", "offset": 40, - "map": "MAP_ROUTE128" + "direction": "left" } ], "object_events": [], @@ -26,28 +26,28 @@ "y": 5, "elevation": 0, "dest_map": "MAP_EVER_GRANDE_CITY_POKEMON_LEAGUE_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 27, "y": 48, "elevation": 0, "dest_map": "MAP_EVER_GRANDE_CITY_POKEMON_CENTER_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 18, "y": 41, "elevation": 0, "dest_map": "MAP_VICTORY_ROAD_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 18, "y": 27, "elevation": 0, "dest_map": "MAP_VICTORY_ROAD_1F", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [ diff --git a/data/maps/EverGrandeCity_ChampionsRoom/map.json b/data/maps/EverGrandeCity_ChampionsRoom/map.json index 34fb96e46..305a1f16f 100644 --- a/data/maps/EverGrandeCity_ChampionsRoom/map.json +++ b/data/maps/EverGrandeCity_ChampionsRoom/map.json @@ -60,14 +60,14 @@ "y": 12, "elevation": 3, "dest_map": "MAP_EVER_GRANDE_CITY_HALL4", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 6, "y": 2, "elevation": 0, "dest_map": "MAP_EVER_GRANDE_CITY_HALL_OF_FAME", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/EverGrandeCity_DrakesRoom/map.json b/data/maps/EverGrandeCity_DrakesRoom/map.json index b7bcd4966..249e244d0 100644 --- a/data/maps/EverGrandeCity_DrakesRoom/map.json +++ b/data/maps/EverGrandeCity_DrakesRoom/map.json @@ -34,14 +34,14 @@ "y": 13, "elevation": 3, "dest_map": "MAP_EVER_GRANDE_CITY_HALL3", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 6, "y": 2, "elevation": 0, "dest_map": "MAP_EVER_GRANDE_CITY_HALL4", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/EverGrandeCity_GlaciasRoom/map.json b/data/maps/EverGrandeCity_GlaciasRoom/map.json index 86a840d13..fd861a55b 100644 --- a/data/maps/EverGrandeCity_GlaciasRoom/map.json +++ b/data/maps/EverGrandeCity_GlaciasRoom/map.json @@ -34,14 +34,14 @@ "y": 13, "elevation": 3, "dest_map": "MAP_EVER_GRANDE_CITY_HALL2", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 6, "y": 2, "elevation": 0, "dest_map": "MAP_EVER_GRANDE_CITY_HALL3", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/EverGrandeCity_Hall1/map.json b/data/maps/EverGrandeCity_Hall1/map.json index 426b9f6e4..7e430832e 100644 --- a/data/maps/EverGrandeCity_Hall1/map.json +++ b/data/maps/EverGrandeCity_Hall1/map.json @@ -20,28 +20,28 @@ "y": 12, "elevation": 3, "dest_map": "MAP_EVER_GRANDE_CITY_SIDNEYS_ROOM", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 5, "y": 2, "elevation": 0, "dest_map": "MAP_EVER_GRANDE_CITY_PHOEBES_ROOM", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 4, "y": 12, "elevation": 3, "dest_map": "MAP_EVER_GRANDE_CITY_SIDNEYS_ROOM", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 6, "y": 12, "elevation": 3, "dest_map": "MAP_EVER_GRANDE_CITY_SIDNEYS_ROOM", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/EverGrandeCity_Hall2/map.json b/data/maps/EverGrandeCity_Hall2/map.json index 3535734e9..3ff291251 100644 --- a/data/maps/EverGrandeCity_Hall2/map.json +++ b/data/maps/EverGrandeCity_Hall2/map.json @@ -20,28 +20,28 @@ "y": 12, "elevation": 3, "dest_map": "MAP_EVER_GRANDE_CITY_PHOEBES_ROOM", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 5, "y": 2, "elevation": 0, "dest_map": "MAP_EVER_GRANDE_CITY_GLACIAS_ROOM", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 4, "y": 12, "elevation": 3, "dest_map": "MAP_EVER_GRANDE_CITY_PHOEBES_ROOM", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 6, "y": 12, "elevation": 3, "dest_map": "MAP_EVER_GRANDE_CITY_PHOEBES_ROOM", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/EverGrandeCity_Hall3/map.json b/data/maps/EverGrandeCity_Hall3/map.json index b7fe8f4ec..a12fe19b3 100644 --- a/data/maps/EverGrandeCity_Hall3/map.json +++ b/data/maps/EverGrandeCity_Hall3/map.json @@ -20,28 +20,28 @@ "y": 12, "elevation": 3, "dest_map": "MAP_EVER_GRANDE_CITY_GLACIAS_ROOM", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 5, "y": 2, "elevation": 0, "dest_map": "MAP_EVER_GRANDE_CITY_DRAKES_ROOM", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 4, "y": 12, "elevation": 3, "dest_map": "MAP_EVER_GRANDE_CITY_GLACIAS_ROOM", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 6, "y": 12, "elevation": 3, "dest_map": "MAP_EVER_GRANDE_CITY_GLACIAS_ROOM", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/EverGrandeCity_Hall4/map.json b/data/maps/EverGrandeCity_Hall4/map.json index b0501cd38..09cf73961 100644 --- a/data/maps/EverGrandeCity_Hall4/map.json +++ b/data/maps/EverGrandeCity_Hall4/map.json @@ -20,14 +20,14 @@ "y": 33, "elevation": 3, "dest_map": "MAP_EVER_GRANDE_CITY_DRAKES_ROOM", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 5, "y": 2, "elevation": 0, "dest_map": "MAP_EVER_GRANDE_CITY_CHAMPIONS_ROOM", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/EverGrandeCity_Hall5/map.json b/data/maps/EverGrandeCity_Hall5/map.json index 1f6705f3a..b63907630 100644 --- a/data/maps/EverGrandeCity_Hall5/map.json +++ b/data/maps/EverGrandeCity_Hall5/map.json @@ -20,28 +20,28 @@ "y": 12, "elevation": 3, "dest_map": "MAP_EVER_GRANDE_CITY_POKEMON_LEAGUE_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 5, "y": 2, "elevation": 0, "dest_map": "MAP_EVER_GRANDE_CITY_SIDNEYS_ROOM", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 4, "y": 12, "elevation": 3, "dest_map": "MAP_EVER_GRANDE_CITY_POKEMON_LEAGUE_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 6, "y": 12, "elevation": 3, "dest_map": "MAP_EVER_GRANDE_CITY_POKEMON_LEAGUE_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/EverGrandeCity_HallOfFame/map.json b/data/maps/EverGrandeCity_HallOfFame/map.json index e09190eb9..82219dfd4 100644 --- a/data/maps/EverGrandeCity_HallOfFame/map.json +++ b/data/maps/EverGrandeCity_HallOfFame/map.json @@ -34,7 +34,7 @@ "y": 11, "elevation": 3, "dest_map": "MAP_EVER_GRANDE_CITY_CHAMPIONS_ROOM", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/EverGrandeCity_PhoebesRoom/map.json b/data/maps/EverGrandeCity_PhoebesRoom/map.json index 09c6dd40e..7fdc61651 100644 --- a/data/maps/EverGrandeCity_PhoebesRoom/map.json +++ b/data/maps/EverGrandeCity_PhoebesRoom/map.json @@ -34,14 +34,14 @@ "y": 13, "elevation": 3, "dest_map": "MAP_EVER_GRANDE_CITY_HALL1", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 6, "y": 2, "elevation": 0, "dest_map": "MAP_EVER_GRANDE_CITY_HALL2", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/EverGrandeCity_PokemonCenter_1F/map.json b/data/maps/EverGrandeCity_PokemonCenter_1F/map.json index 196ebd0f2..a146dc11a 100644 --- a/data/maps/EverGrandeCity_PokemonCenter_1F/map.json +++ b/data/maps/EverGrandeCity_PokemonCenter_1F/map.json @@ -73,21 +73,21 @@ "y": 8, "elevation": 3, "dest_map": "MAP_EVER_GRANDE_CITY", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 6, "y": 8, "elevation": 3, "dest_map": "MAP_EVER_GRANDE_CITY", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 1, "y": 6, "elevation": 4, "dest_map": "MAP_EVER_GRANDE_CITY_POKEMON_CENTER_2F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/EverGrandeCity_PokemonCenter_2F/map.json b/data/maps/EverGrandeCity_PokemonCenter_2F/map.json index b734f9ad5..c20b8a732 100644 --- a/data/maps/EverGrandeCity_PokemonCenter_2F/map.json +++ b/data/maps/EverGrandeCity_PokemonCenter_2F/map.json @@ -73,21 +73,21 @@ "y": 6, "elevation": 4, "dest_map": "MAP_EVER_GRANDE_CITY_POKEMON_CENTER_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 5, "y": 1, "elevation": 3, "dest_map": "MAP_UNION_ROOM", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 9, "y": 1, "elevation": 3, "dest_map": "MAP_TRADE_CENTER", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/EverGrandeCity_PokemonLeague_1F/map.json b/data/maps/EverGrandeCity_PokemonLeague_1F/map.json index f76febc01..6dd97c0b7 100644 --- a/data/maps/EverGrandeCity_PokemonLeague_1F/map.json +++ b/data/maps/EverGrandeCity_PokemonLeague_1F/map.json @@ -73,35 +73,35 @@ "y": 11, "elevation": 3, "dest_map": "MAP_EVER_GRANDE_CITY", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 10, "y": 11, "elevation": 3, "dest_map": "MAP_EVER_GRANDE_CITY", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 9, "y": 1, "elevation": 3, "dest_map": "MAP_EVER_GRANDE_CITY_HALL5", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 10, "y": 1, "elevation": 3, "dest_map": "MAP_EVER_GRANDE_CITY_HALL5", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 1, "y": 7, "elevation": 4, "dest_map": "MAP_EVER_GRANDE_CITY_POKEMON_LEAGUE_2F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/EverGrandeCity_PokemonLeague_2F/map.json b/data/maps/EverGrandeCity_PokemonLeague_2F/map.json index a4b5cb1f2..e271becd6 100644 --- a/data/maps/EverGrandeCity_PokemonLeague_2F/map.json +++ b/data/maps/EverGrandeCity_PokemonLeague_2F/map.json @@ -73,21 +73,21 @@ "y": 6, "elevation": 4, "dest_map": "MAP_EVER_GRANDE_CITY_POKEMON_LEAGUE_1F", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 5, "y": 1, "elevation": 3, "dest_map": "MAP_UNION_ROOM", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 9, "y": 1, "elevation": 3, "dest_map": "MAP_TRADE_CENTER", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/EverGrandeCity_SidneysRoom/map.json b/data/maps/EverGrandeCity_SidneysRoom/map.json index dc84d36d6..dfe6fe36c 100644 --- a/data/maps/EverGrandeCity_SidneysRoom/map.json +++ b/data/maps/EverGrandeCity_SidneysRoom/map.json @@ -34,14 +34,14 @@ "y": 13, "elevation": 3, "dest_map": "MAP_EVER_GRANDE_CITY_HALL5", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 6, "y": 2, "elevation": 0, "dest_map": "MAP_EVER_GRANDE_CITY_HALL1", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/FallarborTown/map.json b/data/maps/FallarborTown/map.json index 74355a870..4888640a5 100644 --- a/data/maps/FallarborTown/map.json +++ b/data/maps/FallarborTown/map.json @@ -14,14 +14,14 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "left", + "map": "MAP_ROUTE114", "offset": 0, - "map": "MAP_ROUTE114" + "direction": "left" }, { - "direction": "right", + "map": "MAP_ROUTE113", "offset": 0, - "map": "MAP_ROUTE113" + "direction": "right" } ], "object_events": [ @@ -84,35 +84,35 @@ "y": 15, "elevation": 0, "dest_map": "MAP_FALLARBOR_TOWN_MART", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 8, "y": 7, "elevation": 0, "dest_map": "MAP_FALLARBOR_TOWN_BATTLE_TENT_LOBBY", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 14, "y": 7, "elevation": 0, "dest_map": "MAP_FALLARBOR_TOWN_POKEMON_CENTER_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 6, "y": 17, "elevation": 0, "dest_map": "MAP_FALLARBOR_TOWN_COZMOS_HOUSE", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 1, "y": 6, "elevation": 0, "dest_map": "MAP_FALLARBOR_TOWN_MOVE_RELEARNERS_HOUSE", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/FallarborTown_BattleTentLobby/map.json b/data/maps/FallarborTown_BattleTentLobby/map.json index a796a3f10..b8f274df3 100644 --- a/data/maps/FallarborTown_BattleTentLobby/map.json +++ b/data/maps/FallarborTown_BattleTentLobby/map.json @@ -86,14 +86,14 @@ "y": 9, "elevation": 0, "dest_map": "MAP_FALLARBOR_TOWN", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 7, "y": 9, "elevation": 0, "dest_map": "MAP_FALLARBOR_TOWN", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/FallarborTown_CozmosHouse/map.json b/data/maps/FallarborTown_CozmosHouse/map.json index a7ae1f90d..a9986b6df 100644 --- a/data/maps/FallarborTown_CozmosHouse/map.json +++ b/data/maps/FallarborTown_CozmosHouse/map.json @@ -47,14 +47,14 @@ "y": 8, "elevation": 0, "dest_map": "MAP_FALLARBOR_TOWN", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 4, "y": 8, "elevation": 0, "dest_map": "MAP_FALLARBOR_TOWN", - "dest_warp_id": 3 + "dest_warp_id": "3" } ], "coord_events": [], diff --git a/data/maps/FallarborTown_Mart/map.json b/data/maps/FallarborTown_Mart/map.json index 77c5df976..c72605a36 100644 --- a/data/maps/FallarborTown_Mart/map.json +++ b/data/maps/FallarborTown_Mart/map.json @@ -86,14 +86,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_FALLARBOR_TOWN", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 4, "y": 7, "elevation": 0, "dest_map": "MAP_FALLARBOR_TOWN", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/FallarborTown_MoveRelearnersHouse/map.json b/data/maps/FallarborTown_MoveRelearnersHouse/map.json index ce3f3a3dd..947967720 100644 --- a/data/maps/FallarborTown_MoveRelearnersHouse/map.json +++ b/data/maps/FallarborTown_MoveRelearnersHouse/map.json @@ -34,14 +34,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_FALLARBOR_TOWN", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 4, "y": 7, "elevation": 0, "dest_map": "MAP_FALLARBOR_TOWN", - "dest_warp_id": 4 + "dest_warp_id": "4" } ], "coord_events": [], diff --git a/data/maps/FallarborTown_PokemonCenter_1F/map.json b/data/maps/FallarborTown_PokemonCenter_1F/map.json index cb0690829..93204a215 100644 --- a/data/maps/FallarborTown_PokemonCenter_1F/map.json +++ b/data/maps/FallarborTown_PokemonCenter_1F/map.json @@ -73,21 +73,21 @@ "y": 8, "elevation": 3, "dest_map": "MAP_FALLARBOR_TOWN", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 6, "y": 8, "elevation": 3, "dest_map": "MAP_FALLARBOR_TOWN", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 1, "y": 6, "elevation": 4, "dest_map": "MAP_FALLARBOR_TOWN_POKEMON_CENTER_2F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/FallarborTown_PokemonCenter_2F/map.json b/data/maps/FallarborTown_PokemonCenter_2F/map.json index ada498a42..94f56ecb4 100644 --- a/data/maps/FallarborTown_PokemonCenter_2F/map.json +++ b/data/maps/FallarborTown_PokemonCenter_2F/map.json @@ -73,21 +73,21 @@ "y": 6, "elevation": 4, "dest_map": "MAP_FALLARBOR_TOWN_POKEMON_CENTER_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 5, "y": 1, "elevation": 3, "dest_map": "MAP_UNION_ROOM", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 9, "y": 1, "elevation": 3, "dest_map": "MAP_TRADE_CENTER", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/FarawayIsland_Entrance/map.json b/data/maps/FarawayIsland_Entrance/map.json index d3c6056a0..bd42f1295 100644 --- a/data/maps/FarawayIsland_Entrance/map.json +++ b/data/maps/FarawayIsland_Entrance/map.json @@ -47,14 +47,14 @@ "y": 7, "elevation": 3, "dest_map": "MAP_FARAWAY_ISLAND_INTERIOR", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 23, "y": 7, "elevation": 3, "dest_map": "MAP_FARAWAY_ISLAND_INTERIOR", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [ @@ -63,7 +63,7 @@ "x": 9, "y": 18, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "FarawayIsland_Entrance_EventScript_SetCloudsWeather" }, @@ -72,7 +72,7 @@ "x": 10, "y": 20, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "FarawayIsland_Entrance_EventScript_ClearWeather" }, @@ -81,7 +81,7 @@ "x": 22, "y": 9, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "FarawayIsland_Entrance_EventScript_SetCloudsWeather" } diff --git a/data/maps/FarawayIsland_Interior/map.json b/data/maps/FarawayIsland_Interior/map.json index 1ec092fbe..14850995c 100644 --- a/data/maps/FarawayIsland_Interior/map.json +++ b/data/maps/FarawayIsland_Interior/map.json @@ -34,14 +34,14 @@ "y": 19, "elevation": 0, "dest_map": "MAP_FARAWAY_ISLAND_ENTRANCE", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 13, "y": 19, "elevation": 0, "dest_map": "MAP_FARAWAY_ISLAND_ENTRANCE", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/FieryPath/map.json b/data/maps/FieryPath/map.json index ef11990d8..38b9aff75 100644 --- a/data/maps/FieryPath/map.json +++ b/data/maps/FieryPath/map.json @@ -125,14 +125,14 @@ "y": 36, "elevation": 3, "dest_map": "MAP_ROUTE112", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 26, "y": 4, "elevation": 3, "dest_map": "MAP_ROUTE112", - "dest_warp_id": 5 + "dest_warp_id": "5" } ], "coord_events": [], diff --git a/data/maps/FortreeCity/map.json b/data/maps/FortreeCity/map.json index fd23e6ffd..007d8b22d 100644 --- a/data/maps/FortreeCity/map.json +++ b/data/maps/FortreeCity/map.json @@ -14,14 +14,14 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "left", + "map": "MAP_ROUTE119", "offset": 0, - "map": "MAP_ROUTE119" + "direction": "left" }, { - "direction": "right", + "map": "MAP_ROUTE120", "offset": 0, - "map": "MAP_ROUTE120" + "direction": "right" } ], "object_events": [ @@ -123,63 +123,63 @@ "y": 6, "elevation": 0, "dest_map": "MAP_FORTREE_CITY_POKEMON_CENTER_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 10, "y": 3, "elevation": 0, "dest_map": "MAP_FORTREE_CITY_HOUSE1", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 22, "y": 11, "elevation": 0, "dest_map": "MAP_FORTREE_CITY_GYM", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 4, "y": 14, "elevation": 0, "dest_map": "MAP_FORTREE_CITY_MART", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 17, "y": 3, "elevation": 0, "dest_map": "MAP_FORTREE_CITY_HOUSE2", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 25, "y": 3, "elevation": 0, "dest_map": "MAP_FORTREE_CITY_HOUSE3", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 32, "y": 2, "elevation": 0, "dest_map": "MAP_FORTREE_CITY_HOUSE4", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 12, "y": 13, "elevation": 0, "dest_map": "MAP_FORTREE_CITY_HOUSE5", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 37, "y": 13, "elevation": 0, "dest_map": "MAP_FORTREE_CITY_DECORATION_SHOP", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/FortreeCity_DecorationShop/map.json b/data/maps/FortreeCity_DecorationShop/map.json index 59b707a95..3c6d2f34d 100644 --- a/data/maps/FortreeCity_DecorationShop/map.json +++ b/data/maps/FortreeCity_DecorationShop/map.json @@ -73,14 +73,14 @@ "y": 5, "elevation": 0, "dest_map": "MAP_FORTREE_CITY", - "dest_warp_id": 8 + "dest_warp_id": "8" }, { "x": 4, "y": 5, "elevation": 0, "dest_map": "MAP_FORTREE_CITY", - "dest_warp_id": 8 + "dest_warp_id": "8" } ], "coord_events": [], diff --git a/data/maps/FortreeCity_Gym/map.json b/data/maps/FortreeCity_Gym/map.json index 0db326d07..0796912dd 100644 --- a/data/maps/FortreeCity_Gym/map.json +++ b/data/maps/FortreeCity_Gym/map.json @@ -125,14 +125,14 @@ "y": 24, "elevation": 0, "dest_map": "MAP_FORTREE_CITY", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 16, "y": 24, "elevation": 0, "dest_map": "MAP_FORTREE_CITY", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/FortreeCity_House1/map.json b/data/maps/FortreeCity_House1/map.json index cef203093..5013cbd65 100644 --- a/data/maps/FortreeCity_House1/map.json +++ b/data/maps/FortreeCity_House1/map.json @@ -60,14 +60,14 @@ "y": 5, "elevation": 0, "dest_map": "MAP_FORTREE_CITY", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 4, "y": 5, "elevation": 0, "dest_map": "MAP_FORTREE_CITY", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/FortreeCity_House2/map.json b/data/maps/FortreeCity_House2/map.json index fed6a9f65..26d666a55 100644 --- a/data/maps/FortreeCity_House2/map.json +++ b/data/maps/FortreeCity_House2/map.json @@ -47,14 +47,14 @@ "y": 5, "elevation": 0, "dest_map": "MAP_FORTREE_CITY", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 4, "y": 5, "elevation": 0, "dest_map": "MAP_FORTREE_CITY", - "dest_warp_id": 4 + "dest_warp_id": "4" } ], "coord_events": [], diff --git a/data/maps/FortreeCity_House3/map.json b/data/maps/FortreeCity_House3/map.json index f7c47ede1..b305190df 100644 --- a/data/maps/FortreeCity_House3/map.json +++ b/data/maps/FortreeCity_House3/map.json @@ -47,14 +47,14 @@ "y": 5, "elevation": 0, "dest_map": "MAP_FORTREE_CITY", - "dest_warp_id": 5 + "dest_warp_id": "5" }, { "x": 4, "y": 5, "elevation": 0, "dest_map": "MAP_FORTREE_CITY", - "dest_warp_id": 5 + "dest_warp_id": "5" } ], "coord_events": [], diff --git a/data/maps/FortreeCity_House4/map.json b/data/maps/FortreeCity_House4/map.json index a01772eea..8123d2c4d 100644 --- a/data/maps/FortreeCity_House4/map.json +++ b/data/maps/FortreeCity_House4/map.json @@ -60,14 +60,14 @@ "y": 5, "elevation": 0, "dest_map": "MAP_FORTREE_CITY", - "dest_warp_id": 6 + "dest_warp_id": "6" }, { "x": 4, "y": 5, "elevation": 0, "dest_map": "MAP_FORTREE_CITY", - "dest_warp_id": 6 + "dest_warp_id": "6" } ], "coord_events": [], diff --git a/data/maps/FortreeCity_House5/map.json b/data/maps/FortreeCity_House5/map.json index b1577e648..b76a869f5 100644 --- a/data/maps/FortreeCity_House5/map.json +++ b/data/maps/FortreeCity_House5/map.json @@ -60,14 +60,14 @@ "y": 5, "elevation": 0, "dest_map": "MAP_FORTREE_CITY", - "dest_warp_id": 7 + "dest_warp_id": "7" }, { "x": 4, "y": 5, "elevation": 0, "dest_map": "MAP_FORTREE_CITY", - "dest_warp_id": 7 + "dest_warp_id": "7" } ], "coord_events": [], diff --git a/data/maps/FortreeCity_Mart/map.json b/data/maps/FortreeCity_Mart/map.json index 61ab4cefd..27a82e69f 100644 --- a/data/maps/FortreeCity_Mart/map.json +++ b/data/maps/FortreeCity_Mart/map.json @@ -73,14 +73,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_FORTREE_CITY", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 4, "y": 7, "elevation": 0, "dest_map": "MAP_FORTREE_CITY", - "dest_warp_id": 3 + "dest_warp_id": "3" } ], "coord_events": [], diff --git a/data/maps/FortreeCity_PokemonCenter_1F/map.json b/data/maps/FortreeCity_PokemonCenter_1F/map.json index d59349033..e28907ad4 100644 --- a/data/maps/FortreeCity_PokemonCenter_1F/map.json +++ b/data/maps/FortreeCity_PokemonCenter_1F/map.json @@ -73,21 +73,21 @@ "y": 8, "elevation": 3, "dest_map": "MAP_FORTREE_CITY", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 6, "y": 8, "elevation": 3, "dest_map": "MAP_FORTREE_CITY", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 1, "y": 6, "elevation": 4, "dest_map": "MAP_FORTREE_CITY_POKEMON_CENTER_2F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/FortreeCity_PokemonCenter_2F/map.json b/data/maps/FortreeCity_PokemonCenter_2F/map.json index 1859bf131..8635a5320 100644 --- a/data/maps/FortreeCity_PokemonCenter_2F/map.json +++ b/data/maps/FortreeCity_PokemonCenter_2F/map.json @@ -73,21 +73,21 @@ "y": 6, "elevation": 4, "dest_map": "MAP_FORTREE_CITY_POKEMON_CENTER_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 5, "y": 1, "elevation": 3, "dest_map": "MAP_UNION_ROOM", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 9, "y": 1, "elevation": 3, "dest_map": "MAP_TRADE_CENTER", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/GraniteCave_1F/map.json b/data/maps/GraniteCave_1F/map.json index ff60d726b..c254c4b00 100644 --- a/data/maps/GraniteCave_1F/map.json +++ b/data/maps/GraniteCave_1F/map.json @@ -47,28 +47,28 @@ "y": 12, "elevation": 3, "dest_map": "MAP_ROUTE106", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 35, "y": 3, "elevation": 3, "dest_map": "MAP_GRANITE_CAVE_B1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 17, "y": 11, "elevation": 3, "dest_map": "MAP_GRANITE_CAVE_B1F", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 5, "y": 10, "elevation": 3, "dest_map": "MAP_GRANITE_CAVE_STEVENS_ROOM", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/GraniteCave_B1F/map.json b/data/maps/GraniteCave_B1F/map.json index be2f5ae01..8c6a112a6 100644 --- a/data/maps/GraniteCave_B1F/map.json +++ b/data/maps/GraniteCave_B1F/map.json @@ -34,49 +34,49 @@ "y": 13, "elevation": 3, "dest_map": "MAP_GRANITE_CAVE_1F", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 4, "y": 21, "elevation": 3, "dest_map": "MAP_GRANITE_CAVE_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 29, "y": 13, "elevation": 3, "dest_map": "MAP_GRANITE_CAVE_B2F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 28, "y": 21, "elevation": 3, "dest_map": "MAP_GRANITE_CAVE_B2F", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 8, "y": 5, "elevation": 3, "dest_map": "MAP_GRANITE_CAVE_B2F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 12, "y": 3, "elevation": 3, "dest_map": "MAP_GRANITE_CAVE_B2F", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 29, "y": 2, "elevation": 3, "dest_map": "MAP_GRANITE_CAVE_B2F", - "dest_warp_id": 4 + "dest_warp_id": "4" } ], "coord_events": [], diff --git a/data/maps/GraniteCave_B2F/map.json b/data/maps/GraniteCave_B2F/map.json index bf58a40e3..e3748ee4b 100644 --- a/data/maps/GraniteCave_B2F/map.json +++ b/data/maps/GraniteCave_B2F/map.json @@ -138,35 +138,35 @@ "y": 13, "elevation": 3, "dest_map": "MAP_GRANITE_CAVE_B1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 28, "y": 21, "elevation": 3, "dest_map": "MAP_GRANITE_CAVE_B1F", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 8, "y": 5, "elevation": 3, "dest_map": "MAP_GRANITE_CAVE_B1F", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 12, "y": 3, "elevation": 3, "dest_map": "MAP_GRANITE_CAVE_B1F", - "dest_warp_id": 5 + "dest_warp_id": "5" }, { "x": 29, "y": 2, "elevation": 3, "dest_map": "MAP_GRANITE_CAVE_B1F", - "dest_warp_id": 6 + "dest_warp_id": "6" } ], "coord_events": [], diff --git a/data/maps/GraniteCave_StevensRoom/map.json b/data/maps/GraniteCave_StevensRoom/map.json index 070530378..280af56c8 100644 --- a/data/maps/GraniteCave_StevensRoom/map.json +++ b/data/maps/GraniteCave_StevensRoom/map.json @@ -34,7 +34,7 @@ "y": 3, "elevation": 3, "dest_map": "MAP_GRANITE_CAVE_1F", - "dest_warp_id": 3 + "dest_warp_id": "3" } ], "coord_events": [], diff --git a/data/maps/InsideOfTruck/map.json b/data/maps/InsideOfTruck/map.json index 0ddc579fc..4b027853a 100644 --- a/data/maps/InsideOfTruck/map.json +++ b/data/maps/InsideOfTruck/map.json @@ -59,22 +59,22 @@ "x": 4, "y": 1, "elevation": 0, - "dest_map": "MAP_NONE", - "dest_warp_id": 127 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_DYNAMIC" }, { "x": 4, "y": 2, "elevation": 0, - "dest_map": "MAP_NONE", - "dest_warp_id": 127 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_DYNAMIC" }, { "x": 4, "y": 3, "elevation": 0, - "dest_map": "MAP_NONE", - "dest_warp_id": 127 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_DYNAMIC" } ], "coord_events": [ diff --git a/data/maps/IslandCave/map.json b/data/maps/IslandCave/map.json index 7c540411f..b8518ac94 100644 --- a/data/maps/IslandCave/map.json +++ b/data/maps/IslandCave/map.json @@ -34,21 +34,21 @@ "y": 29, "elevation": 3, "dest_map": "MAP_ROUTE105", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 8, "y": 20, "elevation": 0, "dest_map": "MAP_ISLAND_CAVE", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 8, "y": 11, "elevation": 3, "dest_map": "MAP_ISLAND_CAVE", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/JaggedPass/map.json b/data/maps/JaggedPass/map.json index d7e7d5e2e..ba4cdf3e0 100644 --- a/data/maps/JaggedPass/map.json +++ b/data/maps/JaggedPass/map.json @@ -112,35 +112,35 @@ "y": 40, "elevation": 3, "dest_map": "MAP_ROUTE112", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 15, "y": 40, "elevation": 3, "dest_map": "MAP_ROUTE112", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 13, "y": 5, "elevation": 3, "dest_map": "MAP_MT_CHIMNEY", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 14, "y": 5, "elevation": 3, "dest_map": "MAP_MT_CHIMNEY", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 16, "y": 18, "elevation": 0, "dest_map": "MAP_MAGMA_HIDEOUT_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [ diff --git a/data/maps/LavaridgeTown/map.json b/data/maps/LavaridgeTown/map.json index 54bda6ca3..ecf7c5b9f 100644 --- a/data/maps/LavaridgeTown/map.json +++ b/data/maps/LavaridgeTown/map.json @@ -14,9 +14,9 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "right", + "map": "MAP_ROUTE112", "offset": -40, - "map": "MAP_ROUTE112" + "direction": "right" } ], "object_events": [ @@ -144,42 +144,42 @@ "y": 15, "elevation": 0, "dest_map": "MAP_LAVARIDGE_TOWN_HERB_SHOP", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 5, "y": 15, "elevation": 0, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 15, "y": 5, "elevation": 0, "dest_map": "MAP_LAVARIDGE_TOWN_MART", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 9, "y": 6, "elevation": 0, "dest_map": "MAP_LAVARIDGE_TOWN_POKEMON_CENTER_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 16, "y": 15, "elevation": 0, "dest_map": "MAP_LAVARIDGE_TOWN_HOUSE", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 9, "y": 2, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_POKEMON_CENTER_1F", - "dest_warp_id": 3 + "dest_warp_id": "3" } ], "coord_events": [ @@ -188,7 +188,7 @@ "x": 6, "y": 3, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "LavaridgeTown_EventScript_HotSpringsTrigger" } diff --git a/data/maps/LavaridgeTown_Gym_1F/map.json b/data/maps/LavaridgeTown_Gym_1F/map.json index 2f624a2f9..dc30c6ea9 100644 --- a/data/maps/LavaridgeTown_Gym_1F/map.json +++ b/data/maps/LavaridgeTown_Gym_1F/map.json @@ -99,182 +99,182 @@ "y": 18, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 14, "y": 18, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 10, "y": 18, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_B1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 8, "y": 9, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_B1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 4, "y": 18, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_B1F", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 5, "y": 14, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_B1F", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 0, "y": 17, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_B1F", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 5, "y": 9, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_B1F", - "dest_warp_id": 5 + "dest_warp_id": "5" }, { "x": 2, "y": 15, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_B1F", - "dest_warp_id": 6 + "dest_warp_id": "6" }, { "x": 3, "y": 14, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_B1F", - "dest_warp_id": 7 + "dest_warp_id": "7" }, { "x": 1, "y": 14, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_B1F", - "dest_warp_id": 8 + "dest_warp_id": "8" }, { "x": 0, "y": 10, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_B1F", - "dest_warp_id": 9 + "dest_warp_id": "9" }, { "x": 3, "y": 10, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_B1F", - "dest_warp_id": 10 + "dest_warp_id": "10" }, { "x": 0, "y": 6, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_B1F", - "dest_warp_id": 11 + "dest_warp_id": "11" }, { "x": 3, "y": 6, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_B1F", - "dest_warp_id": 12 + "dest_warp_id": "12" }, { "x": 5, "y": 6, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_B1F", - "dest_warp_id": 13 + "dest_warp_id": "13" }, { "x": 2, "y": 3, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_B1F", - "dest_warp_id": 14 + "dest_warp_id": "14" }, { "x": 5, "y": 2, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_B1F", - "dest_warp_id": 15 + "dest_warp_id": "15" }, { "x": 7, "y": 2, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_B1F", - "dest_warp_id": 16 + "dest_warp_id": "16" }, { "x": 8, "y": 6, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_B1F", - "dest_warp_id": 17 + "dest_warp_id": "17" }, { "x": 10, "y": 6, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_B1F", - "dest_warp_id": 18 + "dest_warp_id": "18" }, { "x": 4, "y": 16, "elevation": 0, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_B1F", - "dest_warp_id": 20 + "dest_warp_id": "20" }, { "x": 12, "y": 3, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_B1F", - "dest_warp_id": 19 + "dest_warp_id": "19" }, { "x": 14, "y": 6, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_B1F", - "dest_warp_id": 21 + "dest_warp_id": "21" }, { "x": 13, "y": 17, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_B1F", - "dest_warp_id": 22 + "dest_warp_id": "22" }, { "x": 12, "y": 12, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_B1F", - "dest_warp_id": 23 + "dest_warp_id": "23" } ], "coord_events": [], diff --git a/data/maps/LavaridgeTown_Gym_B1F/map.json b/data/maps/LavaridgeTown_Gym_B1F/map.json index bbcdbcbe1..b90802b17 100644 --- a/data/maps/LavaridgeTown_Gym_B1F/map.json +++ b/data/maps/LavaridgeTown_Gym_B1F/map.json @@ -73,168 +73,168 @@ "y": 18, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 0, "y": 17, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_1F", - "dest_warp_id": 6 + "dest_warp_id": "6" }, { "x": 8, "y": 9, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_1F", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 5, "y": 14, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_1F", - "dest_warp_id": 5 + "dest_warp_id": "5" }, { "x": 4, "y": 18, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_1F", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 5, "y": 9, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_1F", - "dest_warp_id": 7 + "dest_warp_id": "7" }, { "x": 2, "y": 15, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_1F", - "dest_warp_id": 8 + "dest_warp_id": "8" }, { "x": 3, "y": 14, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_1F", - "dest_warp_id": 9 + "dest_warp_id": "9" }, { "x": 1, "y": 14, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_1F", - "dest_warp_id": 10 + "dest_warp_id": "10" }, { "x": 0, "y": 10, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_1F", - "dest_warp_id": 11 + "dest_warp_id": "11" }, { "x": 3, "y": 10, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_1F", - "dest_warp_id": 12 + "dest_warp_id": "12" }, { "x": 0, "y": 6, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_1F", - "dest_warp_id": 13 + "dest_warp_id": "13" }, { "x": 3, "y": 6, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_1F", - "dest_warp_id": 14 + "dest_warp_id": "14" }, { "x": 5, "y": 6, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_1F", - "dest_warp_id": 15 + "dest_warp_id": "15" }, { "x": 2, "y": 3, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_1F", - "dest_warp_id": 16 + "dest_warp_id": "16" }, { "x": 5, "y": 2, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_1F", - "dest_warp_id": 17 + "dest_warp_id": "17" }, { "x": 7, "y": 2, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_1F", - "dest_warp_id": 18 + "dest_warp_id": "18" }, { "x": 8, "y": 6, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_1F", - "dest_warp_id": 19 + "dest_warp_id": "19" }, { "x": 10, "y": 6, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_1F", - "dest_warp_id": 20 + "dest_warp_id": "20" }, { "x": 12, "y": 3, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_1F", - "dest_warp_id": 22 + "dest_warp_id": "22" }, { "x": 4, "y": 16, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_1F", - "dest_warp_id": 21 + "dest_warp_id": "21" }, { "x": 14, "y": 6, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_1F", - "dest_warp_id": 23 + "dest_warp_id": "23" }, { "x": 13, "y": 17, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_1F", - "dest_warp_id": 24 + "dest_warp_id": "24" }, { "x": 12, "y": 12, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN_GYM_1F", - "dest_warp_id": 25 + "dest_warp_id": "25" } ], "coord_events": [], diff --git a/data/maps/LavaridgeTown_HerbShop/map.json b/data/maps/LavaridgeTown_HerbShop/map.json index 6be35b729..7a3d8f0e1 100644 --- a/data/maps/LavaridgeTown_HerbShop/map.json +++ b/data/maps/LavaridgeTown_HerbShop/map.json @@ -60,14 +60,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_LAVARIDGE_TOWN", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 4, "y": 7, "elevation": 0, "dest_map": "MAP_LAVARIDGE_TOWN", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/LavaridgeTown_House/map.json b/data/maps/LavaridgeTown_House/map.json index 2a8d5362c..a45ac0e7f 100644 --- a/data/maps/LavaridgeTown_House/map.json +++ b/data/maps/LavaridgeTown_House/map.json @@ -60,14 +60,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_LAVARIDGE_TOWN", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 4, "y": 7, "elevation": 0, "dest_map": "MAP_LAVARIDGE_TOWN", - "dest_warp_id": 4 + "dest_warp_id": "4" } ], "coord_events": [], diff --git a/data/maps/LavaridgeTown_Mart/map.json b/data/maps/LavaridgeTown_Mart/map.json index 5c871785d..82078a382 100644 --- a/data/maps/LavaridgeTown_Mart/map.json +++ b/data/maps/LavaridgeTown_Mart/map.json @@ -60,14 +60,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_LAVARIDGE_TOWN", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 4, "y": 7, "elevation": 0, "dest_map": "MAP_LAVARIDGE_TOWN", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/LavaridgeTown_PokemonCenter_1F/map.json b/data/maps/LavaridgeTown_PokemonCenter_1F/map.json index 42cf11aed..8cbeae092 100644 --- a/data/maps/LavaridgeTown_PokemonCenter_1F/map.json +++ b/data/maps/LavaridgeTown_PokemonCenter_1F/map.json @@ -73,28 +73,28 @@ "y": 8, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 6, "y": 8, "elevation": 3, "dest_map": "MAP_LAVARIDGE_TOWN", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 1, "y": 6, "elevation": 4, "dest_map": "MAP_LAVARIDGE_TOWN_POKEMON_CENTER_2F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 2, "y": 1, "elevation": 0, "dest_map": "MAP_LAVARIDGE_TOWN", - "dest_warp_id": 5 + "dest_warp_id": "5" } ], "coord_events": [], diff --git a/data/maps/LavaridgeTown_PokemonCenter_2F/map.json b/data/maps/LavaridgeTown_PokemonCenter_2F/map.json index 72a5f688b..2a7ce1551 100644 --- a/data/maps/LavaridgeTown_PokemonCenter_2F/map.json +++ b/data/maps/LavaridgeTown_PokemonCenter_2F/map.json @@ -73,21 +73,21 @@ "y": 6, "elevation": 4, "dest_map": "MAP_LAVARIDGE_TOWN_POKEMON_CENTER_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 5, "y": 1, "elevation": 3, "dest_map": "MAP_UNION_ROOM", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 9, "y": 1, "elevation": 3, "dest_map": "MAP_TRADE_CENTER", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/LilycoveCity/map.json b/data/maps/LilycoveCity/map.json index a13904ca9..398cf219e 100644 --- a/data/maps/LilycoveCity/map.json +++ b/data/maps/LilycoveCity/map.json @@ -14,14 +14,14 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "left", + "map": "MAP_ROUTE121", "offset": 10, - "map": "MAP_ROUTE121" + "direction": "left" }, { - "direction": "right", + "map": "MAP_ROUTE124", "offset": -10, - "map": "MAP_ROUTE124" + "direction": "right" } ], "object_events": [ @@ -318,98 +318,98 @@ "y": 6, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_DEPARTMENT_STORE_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 37, "y": 24, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_COVE_LILY_MOTEL_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 24, "y": 14, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_POKEMON_CENTER_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 11, "y": 5, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_LILYCOVE_MUSEUM_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 23, "y": 24, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_CONTEST_LOBBY", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 39, "y": 14, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_POKEMON_TRAINER_FAN_CLUB", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 70, "y": 5, "elevation": 1, "dest_map": "MAP_AQUA_HIDEOUT_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 36, "y": 6, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_MOVE_DELETERS_HOUSE", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 42, "y": 6, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_HOUSE1", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 55, "y": 15, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_HOUSE2", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 11, "y": 22, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_HOUSE3", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 12, "y": 14, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_HOUSE4", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 12, "y": 32, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_HARBOR", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 12, "y": 5, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_LILYCOVE_MUSEUM_1F", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/LilycoveCity_ContestHall/map.json b/data/maps/LilycoveCity_ContestHall/map.json index e8151c832..a55d21498 100644 --- a/data/maps/LilycoveCity_ContestHall/map.json +++ b/data/maps/LilycoveCity_ContestHall/map.json @@ -437,28 +437,28 @@ "y": 32, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_CONTEST_LOBBY", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 30, "y": 32, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_CONTEST_LOBBY", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 20, "y": 32, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_CONTEST_LOBBY", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 31, "y": 32, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_CONTEST_LOBBY", - "dest_warp_id": 3 + "dest_warp_id": "3" } ], "coord_events": [], diff --git a/data/maps/LilycoveCity_ContestLobby/map.json b/data/maps/LilycoveCity_ContestLobby/map.json index ac5346dc4..276b5a6c2 100644 --- a/data/maps/LilycoveCity_ContestLobby/map.json +++ b/data/maps/LilycoveCity_ContestLobby/map.json @@ -346,28 +346,28 @@ "y": 11, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 15, "y": 11, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 9, "y": 1, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_CONTEST_HALL", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 21, "y": 1, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_CONTEST_HALL", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/LilycoveCity_CoveLilyMotel_1F/map.json b/data/maps/LilycoveCity_CoveLilyMotel_1F/map.json index 4b18e22c1..098b53336 100644 --- a/data/maps/LilycoveCity_CoveLilyMotel_1F/map.json +++ b/data/maps/LilycoveCity_CoveLilyMotel_1F/map.json @@ -34,21 +34,21 @@ "y": 8, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 6, "y": 8, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 2, "y": 1, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_COVE_LILY_MOTEL_2F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [ diff --git a/data/maps/LilycoveCity_CoveLilyMotel_2F/map.json b/data/maps/LilycoveCity_CoveLilyMotel_2F/map.json index 0edd978fd..10333f1b4 100644 --- a/data/maps/LilycoveCity_CoveLilyMotel_2F/map.json +++ b/data/maps/LilycoveCity_CoveLilyMotel_2F/map.json @@ -112,7 +112,7 @@ "y": 1, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_COVE_LILY_MOTEL_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/LilycoveCity_DepartmentStoreElevator/map.json b/data/maps/LilycoveCity_DepartmentStoreElevator/map.json index 9a3c43308..b9bd8305b 100644 --- a/data/maps/LilycoveCity_DepartmentStoreElevator/map.json +++ b/data/maps/LilycoveCity_DepartmentStoreElevator/map.json @@ -33,15 +33,15 @@ "x": 1, "y": 5, "elevation": 3, - "dest_map": "MAP_NONE", - "dest_warp_id": 127 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_DYNAMIC" }, { "x": 2, "y": 5, "elevation": 3, - "dest_map": "MAP_NONE", - "dest_warp_id": 127 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_DYNAMIC" } ], "coord_events": [], diff --git a/data/maps/LilycoveCity_DepartmentStoreRooftop/map.json b/data/maps/LilycoveCity_DepartmentStoreRooftop/map.json index deb7ad044..c1f2a619f 100644 --- a/data/maps/LilycoveCity_DepartmentStoreRooftop/map.json +++ b/data/maps/LilycoveCity_DepartmentStoreRooftop/map.json @@ -73,7 +73,7 @@ "y": 3, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_DEPARTMENT_STORE_5F", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/LilycoveCity_DepartmentStore_1F/map.json b/data/maps/LilycoveCity_DepartmentStore_1F/map.json index 758e063f6..951777f8f 100644 --- a/data/maps/LilycoveCity_DepartmentStore_1F/map.json +++ b/data/maps/LilycoveCity_DepartmentStore_1F/map.json @@ -99,28 +99,28 @@ "y": 7, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 9, "y": 7, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 16, "y": 1, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_DEPARTMENT_STORE_2F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 2, "y": 1, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_DEPARTMENT_STORE_ELEVATOR", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/LilycoveCity_DepartmentStore_2F/map.json b/data/maps/LilycoveCity_DepartmentStore_2F/map.json index ebef46ae5..e31ceb56e 100644 --- a/data/maps/LilycoveCity_DepartmentStore_2F/map.json +++ b/data/maps/LilycoveCity_DepartmentStore_2F/map.json @@ -86,21 +86,21 @@ "y": 1, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_DEPARTMENT_STORE_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 13, "y": 1, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_DEPARTMENT_STORE_3F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 2, "y": 1, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_DEPARTMENT_STORE_ELEVATOR", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/LilycoveCity_DepartmentStore_3F/map.json b/data/maps/LilycoveCity_DepartmentStore_3F/map.json index c911b9d26..01bad861c 100644 --- a/data/maps/LilycoveCity_DepartmentStore_3F/map.json +++ b/data/maps/LilycoveCity_DepartmentStore_3F/map.json @@ -86,21 +86,21 @@ "y": 1, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_DEPARTMENT_STORE_2F", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 16, "y": 1, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_DEPARTMENT_STORE_4F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 2, "y": 1, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_DEPARTMENT_STORE_ELEVATOR", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/LilycoveCity_DepartmentStore_4F/map.json b/data/maps/LilycoveCity_DepartmentStore_4F/map.json index c6291ec2c..e4b14a770 100644 --- a/data/maps/LilycoveCity_DepartmentStore_4F/map.json +++ b/data/maps/LilycoveCity_DepartmentStore_4F/map.json @@ -86,21 +86,21 @@ "y": 1, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_DEPARTMENT_STORE_3F", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 13, "y": 1, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_DEPARTMENT_STORE_5F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 2, "y": 1, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_DEPARTMENT_STORE_ELEVATOR", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/LilycoveCity_DepartmentStore_5F/map.json b/data/maps/LilycoveCity_DepartmentStore_5F/map.json index 6123c1c78..e816d3f21 100644 --- a/data/maps/LilycoveCity_DepartmentStore_5F/map.json +++ b/data/maps/LilycoveCity_DepartmentStore_5F/map.json @@ -112,21 +112,21 @@ "y": 1, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_DEPARTMENT_STORE_4F", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 2, "y": 1, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_DEPARTMENT_STORE_ELEVATOR", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 16, "y": 1, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_DEPARTMENT_STORE_ROOFTOP", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/LilycoveCity_Harbor/map.json b/data/maps/LilycoveCity_Harbor/map.json index 491d42624..06d49e0c8 100644 --- a/data/maps/LilycoveCity_Harbor/map.json +++ b/data/maps/LilycoveCity_Harbor/map.json @@ -86,14 +86,14 @@ "y": 14, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY", - "dest_warp_id": 12 + "dest_warp_id": "12" }, { "x": 12, "y": 14, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY", - "dest_warp_id": 12 + "dest_warp_id": "12" } ], "coord_events": [], diff --git a/data/maps/LilycoveCity_House1/map.json b/data/maps/LilycoveCity_House1/map.json index cbd7cdbdf..d2b258652 100644 --- a/data/maps/LilycoveCity_House1/map.json +++ b/data/maps/LilycoveCity_House1/map.json @@ -47,14 +47,14 @@ "y": 8, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY", - "dest_warp_id": 8 + "dest_warp_id": "8" }, { "x": 4, "y": 8, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY", - "dest_warp_id": 8 + "dest_warp_id": "8" } ], "coord_events": [], diff --git a/data/maps/LilycoveCity_House2/map.json b/data/maps/LilycoveCity_House2/map.json index 5c208c852..3e5e6ce2b 100644 --- a/data/maps/LilycoveCity_House2/map.json +++ b/data/maps/LilycoveCity_House2/map.json @@ -34,14 +34,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY", - "dest_warp_id": 9 + "dest_warp_id": "9" }, { "x": 3, "y": 7, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY", - "dest_warp_id": 9 + "dest_warp_id": "9" } ], "coord_events": [], diff --git a/data/maps/LilycoveCity_House3/map.json b/data/maps/LilycoveCity_House3/map.json index 0331372c9..bba3bf205 100644 --- a/data/maps/LilycoveCity_House3/map.json +++ b/data/maps/LilycoveCity_House3/map.json @@ -99,14 +99,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY", - "dest_warp_id": 10 + "dest_warp_id": "10" }, { "x": 4, "y": 7, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY", - "dest_warp_id": 10 + "dest_warp_id": "10" } ], "coord_events": [], diff --git a/data/maps/LilycoveCity_House4/map.json b/data/maps/LilycoveCity_House4/map.json index 7a1571abf..21d2880cc 100644 --- a/data/maps/LilycoveCity_House4/map.json +++ b/data/maps/LilycoveCity_House4/map.json @@ -47,14 +47,14 @@ "y": 8, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY", - "dest_warp_id": 11 + "dest_warp_id": "11" }, { "x": 4, "y": 8, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY", - "dest_warp_id": 11 + "dest_warp_id": "11" } ], "coord_events": [], diff --git a/data/maps/LilycoveCity_LilycoveMuseum_1F/map.json b/data/maps/LilycoveCity_LilycoveMuseum_1F/map.json index 09875fddc..1710e0df8 100644 --- a/data/maps/LilycoveCity_LilycoveMuseum_1F/map.json +++ b/data/maps/LilycoveCity_LilycoveMuseum_1F/map.json @@ -151,21 +151,21 @@ "y": 13, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 10, "y": 13, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY", - "dest_warp_id": 13 + "dest_warp_id": "13" }, { "x": 16, "y": 1, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_LILYCOVE_MUSEUM_2F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/LilycoveCity_LilycoveMuseum_2F/map.json b/data/maps/LilycoveCity_LilycoveMuseum_2F/map.json index 76d30eb68..83fe63aab 100644 --- a/data/maps/LilycoveCity_LilycoveMuseum_2F/map.json +++ b/data/maps/LilycoveCity_LilycoveMuseum_2F/map.json @@ -73,7 +73,7 @@ "y": 1, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY_LILYCOVE_MUSEUM_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/LilycoveCity_MoveDeletersHouse/map.json b/data/maps/LilycoveCity_MoveDeletersHouse/map.json index 814719a9c..29c6f3636 100644 --- a/data/maps/LilycoveCity_MoveDeletersHouse/map.json +++ b/data/maps/LilycoveCity_MoveDeletersHouse/map.json @@ -34,14 +34,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY", - "dest_warp_id": 7 + "dest_warp_id": "7" }, { "x": 4, "y": 7, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY", - "dest_warp_id": 7 + "dest_warp_id": "7" } ], "coord_events": [], diff --git a/data/maps/LilycoveCity_PokemonCenter_1F/map.json b/data/maps/LilycoveCity_PokemonCenter_1F/map.json index daaec1191..595b5af54 100644 --- a/data/maps/LilycoveCity_PokemonCenter_1F/map.json +++ b/data/maps/LilycoveCity_PokemonCenter_1F/map.json @@ -86,21 +86,21 @@ "y": 8, "elevation": 3, "dest_map": "MAP_LILYCOVE_CITY", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 6, "y": 8, "elevation": 3, "dest_map": "MAP_LILYCOVE_CITY", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 1, "y": 6, "elevation": 4, "dest_map": "MAP_LILYCOVE_CITY_POKEMON_CENTER_2F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/LilycoveCity_PokemonCenter_2F/map.json b/data/maps/LilycoveCity_PokemonCenter_2F/map.json index b9c8e1302..89c7e385f 100644 --- a/data/maps/LilycoveCity_PokemonCenter_2F/map.json +++ b/data/maps/LilycoveCity_PokemonCenter_2F/map.json @@ -73,21 +73,21 @@ "y": 6, "elevation": 4, "dest_map": "MAP_LILYCOVE_CITY_POKEMON_CENTER_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 5, "y": 1, "elevation": 3, "dest_map": "MAP_UNION_ROOM", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 9, "y": 1, "elevation": 3, "dest_map": "MAP_TRADE_CENTER", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/LilycoveCity_PokemonTrainerFanClub/map.json b/data/maps/LilycoveCity_PokemonTrainerFanClub/map.json index 7d5c42034..ccd988bf3 100644 --- a/data/maps/LilycoveCity_PokemonTrainerFanClub/map.json +++ b/data/maps/LilycoveCity_PokemonTrainerFanClub/map.json @@ -138,14 +138,14 @@ "y": 13, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY", - "dest_warp_id": 5 + "dest_warp_id": "5" }, { "x": 5, "y": 13, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY", - "dest_warp_id": 5 + "dest_warp_id": "5" } ], "coord_events": [], diff --git a/data/maps/LilycoveCity_UnusedMart/map.json b/data/maps/LilycoveCity_UnusedMart/map.json index 696674bf1..a1eba6f4e 100644 --- a/data/maps/LilycoveCity_UnusedMart/map.json +++ b/data/maps/LilycoveCity_UnusedMart/map.json @@ -20,14 +20,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 4, "y": 7, "elevation": 0, "dest_map": "MAP_LILYCOVE_CITY", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/LittlerootTown/map.json b/data/maps/LittlerootTown/map.json index 5335dd66e..8311ffaa3 100644 --- a/data/maps/LittlerootTown/map.json +++ b/data/maps/LittlerootTown/map.json @@ -14,9 +14,9 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "up", + "map": "MAP_ROUTE101", "offset": 0, - "map": "MAP_ROUTE101" + "direction": "up" } ], "object_events": [ @@ -131,21 +131,21 @@ "y": 8, "elevation": 0, "dest_map": "MAP_LITTLEROOT_TOWN_MAYS_HOUSE_1F", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 5, "y": 8, "elevation": 0, "dest_map": "MAP_LITTLEROOT_TOWN_BRENDANS_HOUSE_1F", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 7, "y": 16, "elevation": 0, "dest_map": "MAP_LITTLEROOT_TOWN_PROFESSOR_BIRCHS_LAB", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [ diff --git a/data/maps/LittlerootTown_BrendansHouse_1F/map.json b/data/maps/LittlerootTown_BrendansHouse_1F/map.json index 3929b2e0c..23b1bf28c 100644 --- a/data/maps/LittlerootTown_BrendansHouse_1F/map.json +++ b/data/maps/LittlerootTown_BrendansHouse_1F/map.json @@ -112,21 +112,21 @@ "y": 8, "elevation": 0, "dest_map": "MAP_LITTLEROOT_TOWN", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 8, "y": 8, "elevation": 0, "dest_map": "MAP_LITTLEROOT_TOWN", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 8, "y": 2, "elevation": 0, "dest_map": "MAP_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [ diff --git a/data/maps/LittlerootTown_BrendansHouse_2F/map.json b/data/maps/LittlerootTown_BrendansHouse_2F/map.json index c938aaae2..e9b6834ee 100644 --- a/data/maps/LittlerootTown_BrendansHouse_2F/map.json +++ b/data/maps/LittlerootTown_BrendansHouse_2F/map.json @@ -229,7 +229,7 @@ "y": 1, "elevation": 0, "dest_map": "MAP_LITTLEROOT_TOWN_BRENDANS_HOUSE_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/LittlerootTown_MaysHouse_1F/map.json b/data/maps/LittlerootTown_MaysHouse_1F/map.json index 739665181..4e4887003 100644 --- a/data/maps/LittlerootTown_MaysHouse_1F/map.json +++ b/data/maps/LittlerootTown_MaysHouse_1F/map.json @@ -112,21 +112,21 @@ "y": 8, "elevation": 0, "dest_map": "MAP_LITTLEROOT_TOWN", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 2, "y": 8, "elevation": 0, "dest_map": "MAP_LITTLEROOT_TOWN", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 2, "y": 2, "elevation": 0, "dest_map": "MAP_LITTLEROOT_TOWN_MAYS_HOUSE_2F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [ diff --git a/data/maps/LittlerootTown_MaysHouse_2F/map.json b/data/maps/LittlerootTown_MaysHouse_2F/map.json index 080eb0fe5..ce3a5f570 100644 --- a/data/maps/LittlerootTown_MaysHouse_2F/map.json +++ b/data/maps/LittlerootTown_MaysHouse_2F/map.json @@ -229,7 +229,7 @@ "y": 1, "elevation": 0, "dest_map": "MAP_LITTLEROOT_TOWN_MAYS_HOUSE_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/LittlerootTown_ProfessorBirchsLab/map.json b/data/maps/LittlerootTown_ProfessorBirchsLab/map.json index deee3e264..d97c026bd 100644 --- a/data/maps/LittlerootTown_ProfessorBirchsLab/map.json +++ b/data/maps/LittlerootTown_ProfessorBirchsLab/map.json @@ -99,14 +99,14 @@ "y": 12, "elevation": 0, "dest_map": "MAP_LITTLEROOT_TOWN", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 7, "y": 12, "elevation": 0, "dest_map": "MAP_LITTLEROOT_TOWN", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/MagmaHideout_1F/map.json b/data/maps/MagmaHideout_1F/map.json index fe5513e3f..ad36acca3 100644 --- a/data/maps/MagmaHideout_1F/map.json +++ b/data/maps/MagmaHideout_1F/map.json @@ -99,28 +99,28 @@ "y": 34, "elevation": 3, "dest_map": "MAP_JAGGED_PASS", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 25, "y": 34, "elevation": 3, "dest_map": "MAP_MAGMA_HIDEOUT_2F_1R", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 31, "y": 3, "elevation": 0, "dest_map": "MAP_MAGMA_HIDEOUT_2F_2R", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 20, "y": 22, "elevation": 0, "dest_map": "MAP_MAGMA_HIDEOUT_2F_3R", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/MagmaHideout_2F_1R/map.json b/data/maps/MagmaHideout_2F_1R/map.json index a5c52683c..4a173b31a 100644 --- a/data/maps/MagmaHideout_2F_1R/map.json +++ b/data/maps/MagmaHideout_2F_1R/map.json @@ -73,21 +73,21 @@ "y": 23, "elevation": 0, "dest_map": "MAP_MAGMA_HIDEOUT_2F_2R", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 8, "y": 2, "elevation": 0, "dest_map": "MAP_MAGMA_HIDEOUT_1F", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 17, "y": 33, "elevation": 3, "dest_map": "MAP_MAGMA_HIDEOUT_3F_1R", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/MagmaHideout_2F_2R/map.json b/data/maps/MagmaHideout_2F_2R/map.json index 968c07fb7..a5f79b3e9 100644 --- a/data/maps/MagmaHideout_2F_2R/map.json +++ b/data/maps/MagmaHideout_2F_2R/map.json @@ -99,14 +99,14 @@ "y": 22, "elevation": 3, "dest_map": "MAP_MAGMA_HIDEOUT_2F_1R", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 36, "y": 4, "elevation": 0, "dest_map": "MAP_MAGMA_HIDEOUT_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/MagmaHideout_2F_3R/map.json b/data/maps/MagmaHideout_2F_3R/map.json index 51a4daf26..40cbc1994 100644 --- a/data/maps/MagmaHideout_2F_3R/map.json +++ b/data/maps/MagmaHideout_2F_3R/map.json @@ -20,14 +20,14 @@ "y": 1, "elevation": 0, "dest_map": "MAP_MAGMA_HIDEOUT_1F", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 16, "y": 13, "elevation": 0, "dest_map": "MAP_MAGMA_HIDEOUT_3F_3R", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/MagmaHideout_3F_1R/map.json b/data/maps/MagmaHideout_3F_1R/map.json index edf4cfa21..48dd16844 100644 --- a/data/maps/MagmaHideout_3F_1R/map.json +++ b/data/maps/MagmaHideout_3F_1R/map.json @@ -60,21 +60,21 @@ "y": 21, "elevation": 0, "dest_map": "MAP_MAGMA_HIDEOUT_4F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 21, "y": 9, "elevation": 0, "dest_map": "MAP_MAGMA_HIDEOUT_3F_2R", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 23, "y": 3, "elevation": 0, "dest_map": "MAP_MAGMA_HIDEOUT_2F_1R", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/MagmaHideout_3F_2R/map.json b/data/maps/MagmaHideout_3F_2R/map.json index 70c6bfb97..51ad53545 100644 --- a/data/maps/MagmaHideout_3F_2R/map.json +++ b/data/maps/MagmaHideout_3F_2R/map.json @@ -47,7 +47,7 @@ "y": 15, "elevation": 0, "dest_map": "MAP_MAGMA_HIDEOUT_3F_1R", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/MagmaHideout_3F_3R/map.json b/data/maps/MagmaHideout_3F_3R/map.json index 824f5cb74..c3e7f3241 100644 --- a/data/maps/MagmaHideout_3F_3R/map.json +++ b/data/maps/MagmaHideout_3F_3R/map.json @@ -34,14 +34,14 @@ "y": 1, "elevation": 0, "dest_map": "MAP_MAGMA_HIDEOUT_2F_3R", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 16, "y": 21, "elevation": 0, "dest_map": "MAP_MAGMA_HIDEOUT_4F", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/MagmaHideout_4F/map.json b/data/maps/MagmaHideout_4F/map.json index 67c11481f..d426affde 100644 --- a/data/maps/MagmaHideout_4F/map.json +++ b/data/maps/MagmaHideout_4F/map.json @@ -125,14 +125,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_MAGMA_HIDEOUT_3F_1R", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 20, "y": 21, "elevation": 0, "dest_map": "MAP_MAGMA_HIDEOUT_3F_3R", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/MarineCave_End/map.json b/data/maps/MarineCave_End/map.json index 0beeb7a4c..3430b2da0 100644 --- a/data/maps/MarineCave_End/map.json +++ b/data/maps/MarineCave_End/map.json @@ -34,7 +34,7 @@ "y": 4, "elevation": 0, "dest_map": "MAP_MARINE_CAVE_ENTRANCE", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [ diff --git a/data/maps/MarineCave_Entrance/map.json b/data/maps/MarineCave_Entrance/map.json index f815ca069..d15583dac 100644 --- a/data/maps/MarineCave_Entrance/map.json +++ b/data/maps/MarineCave_Entrance/map.json @@ -20,7 +20,7 @@ "y": 1, "elevation": 3, "dest_map": "MAP_MARINE_CAVE_END", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/MauvilleCity/map.json b/data/maps/MauvilleCity/map.json index cf3d5f8a1..f4da4222b 100644 --- a/data/maps/MauvilleCity/map.json +++ b/data/maps/MauvilleCity/map.json @@ -14,24 +14,24 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "up", + "map": "MAP_ROUTE111", "offset": 0, - "map": "MAP_ROUTE111" + "direction": "up" }, { - "direction": "down", + "map": "MAP_ROUTE110", "offset": 0, - "map": "MAP_ROUTE110" + "direction": "down" }, { - "direction": "left", + "map": "MAP_ROUTE117", "offset": 0, - "map": "MAP_ROUTE117" + "direction": "left" }, { - "direction": "right", + "map": "MAP_ROUTE118", "offset": 0, - "map": "MAP_ROUTE118" + "direction": "right" } ], "object_events": [ @@ -185,49 +185,49 @@ "y": 5, "elevation": 0, "dest_map": "MAP_MAUVILLE_CITY_GYM", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 22, "y": 5, "elevation": 0, "dest_map": "MAP_MAUVILLE_CITY_POKEMON_CENTER_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 35, "y": 5, "elevation": 0, "dest_map": "MAP_MAUVILLE_CITY_BIKE_SHOP", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 23, "y": 14, "elevation": 0, "dest_map": "MAP_MAUVILLE_CITY_MART", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 32, "y": 14, "elevation": 0, "dest_map": "MAP_MAUVILLE_CITY_HOUSE1", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 8, "y": 13, "elevation": 0, "dest_map": "MAP_MAUVILLE_CITY_GAME_CORNER", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 19, "y": 14, "elevation": 0, "dest_map": "MAP_MAUVILLE_CITY_HOUSE2", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/MauvilleCity_BikeShop/map.json b/data/maps/MauvilleCity_BikeShop/map.json index 217d3be26..7c9a68414 100644 --- a/data/maps/MauvilleCity_BikeShop/map.json +++ b/data/maps/MauvilleCity_BikeShop/map.json @@ -47,14 +47,14 @@ "y": 8, "elevation": 0, "dest_map": "MAP_MAUVILLE_CITY", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 4, "y": 8, "elevation": 0, "dest_map": "MAP_MAUVILLE_CITY", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/MauvilleCity_GameCorner/map.json b/data/maps/MauvilleCity_GameCorner/map.json index 2564596ba..7fc434b05 100644 --- a/data/maps/MauvilleCity_GameCorner/map.json +++ b/data/maps/MauvilleCity_GameCorner/map.json @@ -177,14 +177,14 @@ "y": 10, "elevation": 3, "dest_map": "MAP_MAUVILLE_CITY", - "dest_warp_id": 5 + "dest_warp_id": "5" }, { "x": 12, "y": 10, "elevation": 3, "dest_map": "MAP_MAUVILLE_CITY", - "dest_warp_id": 5 + "dest_warp_id": "5" } ], "coord_events": [], diff --git a/data/maps/MauvilleCity_Gym/map.json b/data/maps/MauvilleCity_Gym/map.json index 2451c6cd6..53c1f26bd 100644 --- a/data/maps/MauvilleCity_Gym/map.json +++ b/data/maps/MauvilleCity_Gym/map.json @@ -112,14 +112,14 @@ "y": 20, "elevation": 0, "dest_map": "MAP_MAUVILLE_CITY", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 5, "y": 20, "elevation": 0, "dest_map": "MAP_MAUVILLE_CITY", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [ diff --git a/data/maps/MauvilleCity_House1/map.json b/data/maps/MauvilleCity_House1/map.json index 019ae6f09..4b134d6ee 100644 --- a/data/maps/MauvilleCity_House1/map.json +++ b/data/maps/MauvilleCity_House1/map.json @@ -34,14 +34,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_MAUVILLE_CITY", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 4, "y": 7, "elevation": 0, "dest_map": "MAP_MAUVILLE_CITY", - "dest_warp_id": 4 + "dest_warp_id": "4" } ], "coord_events": [], diff --git a/data/maps/MauvilleCity_House2/map.json b/data/maps/MauvilleCity_House2/map.json index 009befbab..83cca3a17 100644 --- a/data/maps/MauvilleCity_House2/map.json +++ b/data/maps/MauvilleCity_House2/map.json @@ -34,14 +34,14 @@ "y": 8, "elevation": 0, "dest_map": "MAP_MAUVILLE_CITY", - "dest_warp_id": 6 + "dest_warp_id": "6" }, { "x": 4, "y": 8, "elevation": 0, "dest_map": "MAP_MAUVILLE_CITY", - "dest_warp_id": 6 + "dest_warp_id": "6" } ], "coord_events": [], diff --git a/data/maps/MauvilleCity_Mart/map.json b/data/maps/MauvilleCity_Mart/map.json index ee4091ee1..53ab6ce22 100644 --- a/data/maps/MauvilleCity_Mart/map.json +++ b/data/maps/MauvilleCity_Mart/map.json @@ -60,14 +60,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_MAUVILLE_CITY", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 4, "y": 7, "elevation": 0, "dest_map": "MAP_MAUVILLE_CITY", - "dest_warp_id": 3 + "dest_warp_id": "3" } ], "coord_events": [], diff --git a/data/maps/MauvilleCity_PokemonCenter_1F/map.json b/data/maps/MauvilleCity_PokemonCenter_1F/map.json index 9feb04be9..1b0a401b8 100644 --- a/data/maps/MauvilleCity_PokemonCenter_1F/map.json +++ b/data/maps/MauvilleCity_PokemonCenter_1F/map.json @@ -86,21 +86,21 @@ "y": 8, "elevation": 3, "dest_map": "MAP_MAUVILLE_CITY", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 6, "y": 8, "elevation": 3, "dest_map": "MAP_MAUVILLE_CITY", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 1, "y": 6, "elevation": 4, "dest_map": "MAP_MAUVILLE_CITY_POKEMON_CENTER_2F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/MauvilleCity_PokemonCenter_2F/map.json b/data/maps/MauvilleCity_PokemonCenter_2F/map.json index 3f616938b..96cd6007a 100644 --- a/data/maps/MauvilleCity_PokemonCenter_2F/map.json +++ b/data/maps/MauvilleCity_PokemonCenter_2F/map.json @@ -86,21 +86,21 @@ "y": 6, "elevation": 4, "dest_map": "MAP_MAUVILLE_CITY_POKEMON_CENTER_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 5, "y": 1, "elevation": 3, "dest_map": "MAP_UNION_ROOM", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 9, "y": 1, "elevation": 3, "dest_map": "MAP_TRADE_CENTER", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/MeteorFalls_1F_1R/map.json b/data/maps/MeteorFalls_1F_1R/map.json index 145289ce7..71f1d1cc5 100644 --- a/data/maps/MeteorFalls_1F_1R/map.json +++ b/data/maps/MeteorFalls_1F_1R/map.json @@ -151,42 +151,42 @@ "y": 18, "elevation": 4, "dest_map": "MAP_ROUTE114", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 6, "y": 39, "elevation": 3, "dest_map": "MAP_ROUTE115", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 10, "y": 3, "elevation": 3, "dest_map": "MAP_METEOR_FALLS_1F_2R", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 5, "y": 4, "elevation": 3, "dest_map": "MAP_METEOR_FALLS_B1F_1R", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 26, "y": 28, "elevation": 3, "dest_map": "MAP_METEOR_FALLS_B1F_1R", - "dest_warp_id": 5 + "dest_warp_id": "5" }, { "x": 4, "y": 2, "elevation": 0, "dest_map": "MAP_METEOR_FALLS_STEVENS_CAVE", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [ diff --git a/data/maps/MeteorFalls_1F_2R/map.json b/data/maps/MeteorFalls_1F_2R/map.json index 49e001c88..ee7857c3a 100644 --- a/data/maps/MeteorFalls_1F_2R/map.json +++ b/data/maps/MeteorFalls_1F_2R/map.json @@ -60,28 +60,28 @@ "y": 29, "elevation": 3, "dest_map": "MAP_METEOR_FALLS_1F_1R", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 4, "y": 14, "elevation": 3, "dest_map": "MAP_METEOR_FALLS_B1F_1R", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 7, "y": 20, "elevation": 3, "dest_map": "MAP_METEOR_FALLS_B1F_1R", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 21, "y": 23, "elevation": 3, "dest_map": "MAP_METEOR_FALLS_B1F_1R", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/MeteorFalls_B1F_1R/map.json b/data/maps/MeteorFalls_B1F_1R/map.json index 6cba2ec48..e9bb08f1b 100644 --- a/data/maps/MeteorFalls_B1F_1R/map.json +++ b/data/maps/MeteorFalls_B1F_1R/map.json @@ -20,42 +20,42 @@ "y": 6, "elevation": 4, "dest_map": "MAP_METEOR_FALLS_1F_2R", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 7, "y": 11, "elevation": 5, "dest_map": "MAP_METEOR_FALLS_1F_2R", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 18, "y": 15, "elevation": 4, "dest_map": "MAP_METEOR_FALLS_1F_2R", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 17, "y": 3, "elevation": 3, "dest_map": "MAP_METEOR_FALLS_B1F_2R", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 3, "y": 23, "elevation": 5, "dest_map": "MAP_METEOR_FALLS_1F_1R", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 20, "y": 36, "elevation": 3, "dest_map": "MAP_METEOR_FALLS_1F_1R", - "dest_warp_id": 4 + "dest_warp_id": "4" } ], "coord_events": [], diff --git a/data/maps/MeteorFalls_B1F_2R/map.json b/data/maps/MeteorFalls_B1F_2R/map.json index 7fc43762f..8d153c423 100644 --- a/data/maps/MeteorFalls_B1F_2R/map.json +++ b/data/maps/MeteorFalls_B1F_2R/map.json @@ -34,7 +34,7 @@ "y": 15, "elevation": 3, "dest_map": "MAP_METEOR_FALLS_B1F_1R", - "dest_warp_id": 3 + "dest_warp_id": "3" } ], "coord_events": [], diff --git a/data/maps/MeteorFalls_StevensCave/map.json b/data/maps/MeteorFalls_StevensCave/map.json index 01b05d308..8e329fc0d 100644 --- a/data/maps/MeteorFalls_StevensCave/map.json +++ b/data/maps/MeteorFalls_StevensCave/map.json @@ -34,7 +34,7 @@ "y": 29, "elevation": 3, "dest_map": "MAP_METEOR_FALLS_1F_1R", - "dest_warp_id": 5 + "dest_warp_id": "5" } ], "coord_events": [], diff --git a/data/maps/MirageTower_1F/map.json b/data/maps/MirageTower_1F/map.json index bb7930006..961d6a826 100644 --- a/data/maps/MirageTower_1F/map.json +++ b/data/maps/MirageTower_1F/map.json @@ -20,14 +20,14 @@ "y": 14, "elevation": 3, "dest_map": "MAP_ROUTE111", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 15, "y": 2, "elevation": 3, "dest_map": "MAP_MIRAGE_TOWER_2F", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/MirageTower_2F/map.json b/data/maps/MirageTower_2F/map.json index bf4561675..792128f56 100644 --- a/data/maps/MirageTower_2F/map.json +++ b/data/maps/MirageTower_2F/map.json @@ -20,14 +20,14 @@ "y": 12, "elevation": 3, "dest_map": "MAP_MIRAGE_TOWER_3F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 15, "y": 2, "elevation": 3, "dest_map": "MAP_MIRAGE_TOWER_1F", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/MirageTower_3F/map.json b/data/maps/MirageTower_3F/map.json index 6ccbf4678..88a1e5435 100644 --- a/data/maps/MirageTower_3F/map.json +++ b/data/maps/MirageTower_3F/map.json @@ -47,14 +47,14 @@ "y": 12, "elevation": 3, "dest_map": "MAP_MIRAGE_TOWER_2F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 2, "y": 4, "elevation": 0, "dest_map": "MAP_MIRAGE_TOWER_4F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/MirageTower_4F/map.json b/data/maps/MirageTower_4F/map.json index a153fbb2a..fb375f6ae 100644 --- a/data/maps/MirageTower_4F/map.json +++ b/data/maps/MirageTower_4F/map.json @@ -60,7 +60,7 @@ "y": 4, "elevation": 3, "dest_map": "MAP_MIRAGE_TOWER_3F", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/MossdeepCity/map.json b/data/maps/MossdeepCity/map.json index ff8ae1b61..3759694d8 100644 --- a/data/maps/MossdeepCity/map.json +++ b/data/maps/MossdeepCity/map.json @@ -14,19 +14,19 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "up", + "map": "MAP_ROUTE125", "offset": 0, - "map": "MAP_ROUTE125" + "direction": "up" }, { - "direction": "down", + "map": "MAP_ROUTE127", "offset": 0, - "map": "MAP_ROUTE127" + "direction": "down" }, { - "direction": "left", + "map": "MAP_ROUTE124", "offset": -40, - "map": "MAP_ROUTE124" + "direction": "left" } ], "object_events": [ @@ -258,70 +258,70 @@ "y": 9, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY_HOUSE1", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 38, "y": 9, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY_GYM", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 28, "y": 16, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY_POKEMON_CENTER_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 67, "y": 25, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY_HOUSE2", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 37, "y": 18, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY_MART", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 49, "y": 6, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY_HOUSE3", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 19, "y": 10, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY_STEVENS_HOUSE", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 18, "y": 16, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY_HOUSE4", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 64, "y": 15, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY_SPACE_CENTER_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 36, "y": 24, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY_GAME_CORNER_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [ diff --git a/data/maps/MossdeepCity_GameCorner_1F/map.json b/data/maps/MossdeepCity_GameCorner_1F/map.json index 14b89fe42..0833460ba 100644 --- a/data/maps/MossdeepCity_GameCorner_1F/map.json +++ b/data/maps/MossdeepCity_GameCorner_1F/map.json @@ -47,21 +47,21 @@ "y": 9, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY", - "dest_warp_id": 9 + "dest_warp_id": "9" }, { "x": 6, "y": 9, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY", - "dest_warp_id": 9 + "dest_warp_id": "9" }, { "x": 2, "y": 0, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY_GAME_CORNER_B1F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/MossdeepCity_GameCorner_B1F/map.json b/data/maps/MossdeepCity_GameCorner_B1F/map.json index 180bd703a..3aed0cceb 100644 --- a/data/maps/MossdeepCity_GameCorner_B1F/map.json +++ b/data/maps/MossdeepCity_GameCorner_B1F/map.json @@ -34,7 +34,7 @@ "y": 1, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY_GAME_CORNER_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/MossdeepCity_Gym/map.json b/data/maps/MossdeepCity_Gym/map.json index 9b63a0c08..9ffe9d6fc 100644 --- a/data/maps/MossdeepCity_Gym/map.json +++ b/data/maps/MossdeepCity_Gym/map.json @@ -489,98 +489,98 @@ "y": 35, "elevation": 3, "dest_map": "MAP_MOSSDEEP_CITY", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 7, "y": 35, "elevation": 3, "dest_map": "MAP_MOSSDEEP_CITY", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 3, "y": 28, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY_GYM", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 1, "y": 23, "elevation": 3, "dest_map": "MAP_MOSSDEEP_CITY_GYM", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 7, "y": 18, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY_GYM", - "dest_warp_id": 5 + "dest_warp_id": "5" }, { "x": 8, "y": 12, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY_GYM", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 9, "y": 18, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY_GYM", - "dest_warp_id": 7 + "dest_warp_id": "7" }, { "x": 23, "y": 20, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY_GYM", - "dest_warp_id": 6 + "dest_warp_id": "6" }, { "x": 1, "y": 33, "elevation": 3, "dest_map": "MAP_MOSSDEEP_CITY_GYM", - "dest_warp_id": 9 + "dest_warp_id": "9" }, { "x": 20, "y": 24, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY_GYM", - "dest_warp_id": 8 + "dest_warp_id": "8" }, { "x": 11, "y": 3, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY_GYM", - "dest_warp_id": 11 + "dest_warp_id": "11" }, { "x": 11, "y": 35, "elevation": 3, "dest_map": "MAP_MOSSDEEP_CITY_GYM", - "dest_warp_id": 10 + "dest_warp_id": "10" }, { "x": 13, "y": 32, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY_GYM", - "dest_warp_id": 13 + "dest_warp_id": "13" }, { "x": 21, "y": 10, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY_GYM", - "dest_warp_id": 12 + "dest_warp_id": "12" } ], "coord_events": [ diff --git a/data/maps/MossdeepCity_House1/map.json b/data/maps/MossdeepCity_House1/map.json index f4338078e..e45335ac5 100644 --- a/data/maps/MossdeepCity_House1/map.json +++ b/data/maps/MossdeepCity_House1/map.json @@ -47,14 +47,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 4, "y": 7, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/MossdeepCity_House2/map.json b/data/maps/MossdeepCity_House2/map.json index e7990bad9..a8a03ed95 100644 --- a/data/maps/MossdeepCity_House2/map.json +++ b/data/maps/MossdeepCity_House2/map.json @@ -60,14 +60,14 @@ "y": 8, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 4, "y": 8, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY", - "dest_warp_id": 3 + "dest_warp_id": "3" } ], "coord_events": [], diff --git a/data/maps/MossdeepCity_House3/map.json b/data/maps/MossdeepCity_House3/map.json index a0587ca0a..4a6574121 100644 --- a/data/maps/MossdeepCity_House3/map.json +++ b/data/maps/MossdeepCity_House3/map.json @@ -34,14 +34,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY", - "dest_warp_id": 5 + "dest_warp_id": "5" }, { "x": 4, "y": 7, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY", - "dest_warp_id": 5 + "dest_warp_id": "5" } ], "coord_events": [], diff --git a/data/maps/MossdeepCity_House4/map.json b/data/maps/MossdeepCity_House4/map.json index 0c7e0a112..b17bc357a 100644 --- a/data/maps/MossdeepCity_House4/map.json +++ b/data/maps/MossdeepCity_House4/map.json @@ -60,14 +60,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY", - "dest_warp_id": 7 + "dest_warp_id": "7" }, { "x": 3, "y": 7, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY", - "dest_warp_id": 7 + "dest_warp_id": "7" } ], "coord_events": [], diff --git a/data/maps/MossdeepCity_Mart/map.json b/data/maps/MossdeepCity_Mart/map.json index 37885b752..9679df789 100644 --- a/data/maps/MossdeepCity_Mart/map.json +++ b/data/maps/MossdeepCity_Mart/map.json @@ -73,14 +73,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 4, "y": 7, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY", - "dest_warp_id": 4 + "dest_warp_id": "4" } ], "coord_events": [], diff --git a/data/maps/MossdeepCity_PokemonCenter_1F/map.json b/data/maps/MossdeepCity_PokemonCenter_1F/map.json index ac3b51e8f..72863244c 100644 --- a/data/maps/MossdeepCity_PokemonCenter_1F/map.json +++ b/data/maps/MossdeepCity_PokemonCenter_1F/map.json @@ -60,21 +60,21 @@ "y": 8, "elevation": 3, "dest_map": "MAP_MOSSDEEP_CITY", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 6, "y": 8, "elevation": 3, "dest_map": "MAP_MOSSDEEP_CITY", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 1, "y": 6, "elevation": 4, "dest_map": "MAP_MOSSDEEP_CITY_POKEMON_CENTER_2F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/MossdeepCity_PokemonCenter_2F/map.json b/data/maps/MossdeepCity_PokemonCenter_2F/map.json index 7fa656697..be24e32cc 100644 --- a/data/maps/MossdeepCity_PokemonCenter_2F/map.json +++ b/data/maps/MossdeepCity_PokemonCenter_2F/map.json @@ -86,21 +86,21 @@ "y": 6, "elevation": 4, "dest_map": "MAP_MOSSDEEP_CITY_POKEMON_CENTER_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 5, "y": 1, "elevation": 3, "dest_map": "MAP_UNION_ROOM", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 9, "y": 1, "elevation": 3, "dest_map": "MAP_TRADE_CENTER", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/MossdeepCity_SpaceCenter_1F/map.json b/data/maps/MossdeepCity_SpaceCenter_1F/map.json index 0f5069665..e7f47bcfb 100644 --- a/data/maps/MossdeepCity_SpaceCenter_1F/map.json +++ b/data/maps/MossdeepCity_SpaceCenter_1F/map.json @@ -164,21 +164,21 @@ "y": 9, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY", - "dest_warp_id": 8 + "dest_warp_id": "8" }, { "x": 8, "y": 9, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY", - "dest_warp_id": 8 + "dest_warp_id": "8" }, { "x": 13, "y": 1, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY_SPACE_CENTER_2F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/MossdeepCity_SpaceCenter_2F/map.json b/data/maps/MossdeepCity_SpaceCenter_2F/map.json index 8990aa075..f68b5bfd3 100644 --- a/data/maps/MossdeepCity_SpaceCenter_2F/map.json +++ b/data/maps/MossdeepCity_SpaceCenter_2F/map.json @@ -138,7 +138,7 @@ "y": 1, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY_SPACE_CENTER_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/MossdeepCity_StevensHouse/map.json b/data/maps/MossdeepCity_StevensHouse/map.json index cad7609d3..3a864a67c 100644 --- a/data/maps/MossdeepCity_StevensHouse/map.json +++ b/data/maps/MossdeepCity_StevensHouse/map.json @@ -60,14 +60,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY", - "dest_warp_id": 6 + "dest_warp_id": "6" }, { "x": 4, "y": 7, "elevation": 0, "dest_map": "MAP_MOSSDEEP_CITY", - "dest_warp_id": 6 + "dest_warp_id": "6" } ], "coord_events": [], diff --git a/data/maps/MtChimney/map.json b/data/maps/MtChimney/map.json index 7083ff7de..55bd065cb 100644 --- a/data/maps/MtChimney/map.json +++ b/data/maps/MtChimney/map.json @@ -411,28 +411,28 @@ "y": 36, "elevation": 0, "dest_map": "MAP_MT_CHIMNEY_CABLE_CAR_STATION", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 18, "y": 36, "elevation": 0, "dest_map": "MAP_MT_CHIMNEY_CABLE_CAR_STATION", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 20, "y": 41, "elevation": 3, "dest_map": "MAP_JAGGED_PASS", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 21, "y": 41, "elevation": 3, "dest_map": "MAP_JAGGED_PASS", - "dest_warp_id": 3 + "dest_warp_id": "3" } ], "coord_events": [], diff --git a/data/maps/MtChimney_CableCarStation/map.json b/data/maps/MtChimney_CableCarStation/map.json index 410bc0c2e..5fe36a373 100644 --- a/data/maps/MtChimney_CableCarStation/map.json +++ b/data/maps/MtChimney_CableCarStation/map.json @@ -47,14 +47,14 @@ "y": 11, "elevation": 0, "dest_map": "MAP_MT_CHIMNEY", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 7, "y": 11, "elevation": 0, "dest_map": "MAP_MT_CHIMNEY", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/MtPyre_1F/map.json b/data/maps/MtPyre_1F/map.json index 248bd6530..b8a164d4c 100644 --- a/data/maps/MtPyre_1F/map.json +++ b/data/maps/MtPyre_1F/map.json @@ -60,42 +60,42 @@ "y": 18, "elevation": 3, "dest_map": "MAP_ROUTE122", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 3, "y": 6, "elevation": 3, "dest_map": "MAP_MT_PYRE_EXTERIOR", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 18, "y": 18, "elevation": 3, "dest_map": "MAP_ROUTE122", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 4, "y": 6, "elevation": 3, "dest_map": "MAP_MT_PYRE_EXTERIOR", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 11, "y": 1, "elevation": 3, "dest_map": "MAP_MT_PYRE_2F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 20, "y": 9, "elevation": 3, "dest_map": "MAP_MT_PYRE_2F", - "dest_warp_id": 4 + "dest_warp_id": "4" } ], "coord_events": [], diff --git a/data/maps/MtPyre_2F/map.json b/data/maps/MtPyre_2F/map.json index 0668bcf78..a0a86cd84 100644 --- a/data/maps/MtPyre_2F/map.json +++ b/data/maps/MtPyre_2F/map.json @@ -125,35 +125,35 @@ "y": 1, "elevation": 3, "dest_map": "MAP_MT_PYRE_1F", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 10, "y": 1, "elevation": 3, "dest_map": "MAP_MT_PYRE_3F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 10, "y": 12, "elevation": 3, "dest_map": "MAP_MT_PYRE_3F", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 6, "y": 12, "elevation": 3, "dest_map": "MAP_MT_PYRE_3F", - "dest_warp_id": 5 + "dest_warp_id": "5" }, { "x": 11, "y": 9, "elevation": 3, "dest_map": "MAP_MT_PYRE_1F", - "dest_warp_id": 5 + "dest_warp_id": "5" } ], "coord_events": [], diff --git a/data/maps/MtPyre_3F/map.json b/data/maps/MtPyre_3F/map.json index 35c6c1b04..5202a583b 100644 --- a/data/maps/MtPyre_3F/map.json +++ b/data/maps/MtPyre_3F/map.json @@ -73,42 +73,42 @@ "y": 1, "elevation": 3, "dest_map": "MAP_MT_PYRE_2F", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 2, "y": 1, "elevation": 3, "dest_map": "MAP_MT_PYRE_4F", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 9, "y": 10, "elevation": 3, "dest_map": "MAP_MT_PYRE_4F", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 1, "y": 12, "elevation": 3, "dest_map": "MAP_MT_PYRE_4F", - "dest_warp_id": 5 + "dest_warp_id": "5" }, { "x": 10, "y": 12, "elevation": 3, "dest_map": "MAP_MT_PYRE_2F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 6, "y": 12, "elevation": 3, "dest_map": "MAP_MT_PYRE_2F", - "dest_warp_id": 3 + "dest_warp_id": "3" } ], "coord_events": [], diff --git a/data/maps/MtPyre_4F/map.json b/data/maps/MtPyre_4F/map.json index d326bff72..48fdeec2d 100644 --- a/data/maps/MtPyre_4F/map.json +++ b/data/maps/MtPyre_4F/map.json @@ -47,42 +47,42 @@ "y": 1, "elevation": 3, "dest_map": "MAP_MT_PYRE_5F", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 2, "y": 5, "elevation": 3, "dest_map": "MAP_MT_PYRE_3F", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 12, "y": 10, "elevation": 3, "dest_map": "MAP_MT_PYRE_5F", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 12, "y": 12, "elevation": 3, "dest_map": "MAP_MT_PYRE_5F", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 9, "y": 10, "elevation": 3, "dest_map": "MAP_MT_PYRE_3F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 2, "y": 12, "elevation": 3, "dest_map": "MAP_MT_PYRE_3F", - "dest_warp_id": 3 + "dest_warp_id": "3" } ], "coord_events": [], diff --git a/data/maps/MtPyre_5F/map.json b/data/maps/MtPyre_5F/map.json index fb7c3f2f8..04b889c6c 100644 --- a/data/maps/MtPyre_5F/map.json +++ b/data/maps/MtPyre_5F/map.json @@ -47,35 +47,35 @@ "y": 1, "elevation": 3, "dest_map": "MAP_MT_PYRE_6F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 10, "y": 5, "elevation": 3, "dest_map": "MAP_MT_PYRE_4F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 1, "y": 10, "elevation": 3, "dest_map": "MAP_MT_PYRE_6F", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 12, "y": 10, "elevation": 3, "dest_map": "MAP_MT_PYRE_4F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 12, "y": 12, "elevation": 3, "dest_map": "MAP_MT_PYRE_4F", - "dest_warp_id": 3 + "dest_warp_id": "3" } ], "coord_events": [], diff --git a/data/maps/MtPyre_6F/map.json b/data/maps/MtPyre_6F/map.json index 88c091f3e..9da33f4bc 100644 --- a/data/maps/MtPyre_6F/map.json +++ b/data/maps/MtPyre_6F/map.json @@ -60,14 +60,14 @@ "y": 1, "elevation": 3, "dest_map": "MAP_MT_PYRE_5F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 1, "y": 10, "elevation": 3, "dest_map": "MAP_MT_PYRE_5F", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/MtPyre_Exterior/map.json b/data/maps/MtPyre_Exterior/map.json index 2df79262c..417a38d97 100644 --- a/data/maps/MtPyre_Exterior/map.json +++ b/data/maps/MtPyre_Exterior/map.json @@ -47,21 +47,21 @@ "y": 42, "elevation": 3, "dest_map": "MAP_MT_PYRE_1F", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 19, "y": 10, "elevation": 3, "dest_map": "MAP_MT_PYRE_SUMMIT", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 20, "y": 10, "elevation": 3, "dest_map": "MAP_MT_PYRE_SUMMIT", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [ @@ -70,7 +70,7 @@ "x": 24, "y": 21, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "MtPyre_Exterior_EventScript_FogTrigger" }, @@ -79,7 +79,7 @@ "x": 25, "y": 21, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "MtPyre_Exterior_EventScript_FogTrigger" }, @@ -88,7 +88,7 @@ "x": 22, "y": 27, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "MtPyre_Exterior_EventScript_SunTrigger" }, @@ -97,7 +97,7 @@ "x": 23, "y": 28, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "MtPyre_Exterior_EventScript_SunTrigger" }, @@ -106,7 +106,7 @@ "x": 26, "y": 21, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "MtPyre_Exterior_EventScript_FogTrigger" } diff --git a/data/maps/MtPyre_Summit/map.json b/data/maps/MtPyre_Summit/map.json index aa3341f8a..49fd8b9f7 100644 --- a/data/maps/MtPyre_Summit/map.json +++ b/data/maps/MtPyre_Summit/map.json @@ -125,21 +125,21 @@ "y": 31, "elevation": 3, "dest_map": "MAP_MT_PYRE_EXTERIOR", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 23, "y": 31, "elevation": 3, "dest_map": "MAP_MT_PYRE_EXTERIOR", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 24, "y": 31, "elevation": 3, "dest_map": "MAP_MT_PYRE_EXTERIOR", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [ diff --git a/data/maps/NavelRock_B1F/map.json b/data/maps/NavelRock_B1F/map.json index 8e366fc16..6a0a9bf23 100644 --- a/data/maps/NavelRock_B1F/map.json +++ b/data/maps/NavelRock_B1F/map.json @@ -20,14 +20,14 @@ "y": 3, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_ENTRANCE", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 18, "y": 9, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_FORK", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/NavelRock_Bottom/map.json b/data/maps/NavelRock_Bottom/map.json index 13d676200..bd7ce3ffe 100644 --- a/data/maps/NavelRock_Bottom/map.json +++ b/data/maps/NavelRock_Bottom/map.json @@ -34,7 +34,7 @@ "y": 19, "elevation": 0, "dest_map": "MAP_NAVEL_ROCK_DOWN11", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/NavelRock_Down01/map.json b/data/maps/NavelRock_Down01/map.json index 674996920..4f5276ee1 100644 --- a/data/maps/NavelRock_Down01/map.json +++ b/data/maps/NavelRock_Down01/map.json @@ -20,14 +20,14 @@ "y": 3, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_FORK", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 5, "y": 5, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_DOWN02", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/NavelRock_Down02/map.json b/data/maps/NavelRock_Down02/map.json index 7c75a1b03..094e00c68 100644 --- a/data/maps/NavelRock_Down02/map.json +++ b/data/maps/NavelRock_Down02/map.json @@ -20,14 +20,14 @@ "y": 5, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_DOWN01", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 3, "y": 3, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_DOWN03", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/NavelRock_Down03/map.json b/data/maps/NavelRock_Down03/map.json index 936ebab77..a5983697c 100644 --- a/data/maps/NavelRock_Down03/map.json +++ b/data/maps/NavelRock_Down03/map.json @@ -20,14 +20,14 @@ "y": 3, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_DOWN02", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 5, "y": 5, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_DOWN04", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/NavelRock_Down04/map.json b/data/maps/NavelRock_Down04/map.json index 585ee7538..59a703f14 100644 --- a/data/maps/NavelRock_Down04/map.json +++ b/data/maps/NavelRock_Down04/map.json @@ -20,14 +20,14 @@ "y": 5, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_DOWN03", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 3, "y": 3, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_DOWN05", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/NavelRock_Down05/map.json b/data/maps/NavelRock_Down05/map.json index 1099d9caa..7df23fdbb 100644 --- a/data/maps/NavelRock_Down05/map.json +++ b/data/maps/NavelRock_Down05/map.json @@ -20,14 +20,14 @@ "y": 3, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_DOWN04", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 5, "y": 5, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_DOWN06", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/NavelRock_Down06/map.json b/data/maps/NavelRock_Down06/map.json index 7fb26f293..bbec56a76 100644 --- a/data/maps/NavelRock_Down06/map.json +++ b/data/maps/NavelRock_Down06/map.json @@ -20,14 +20,14 @@ "y": 5, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_DOWN05", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 3, "y": 3, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_DOWN07", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/NavelRock_Down07/map.json b/data/maps/NavelRock_Down07/map.json index 36896f306..2815f3b13 100644 --- a/data/maps/NavelRock_Down07/map.json +++ b/data/maps/NavelRock_Down07/map.json @@ -20,14 +20,14 @@ "y": 3, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_DOWN06", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 5, "y": 5, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_DOWN08", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/NavelRock_Down08/map.json b/data/maps/NavelRock_Down08/map.json index f9945f49f..d6887a481 100644 --- a/data/maps/NavelRock_Down08/map.json +++ b/data/maps/NavelRock_Down08/map.json @@ -20,14 +20,14 @@ "y": 5, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_DOWN07", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 3, "y": 3, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_DOWN09", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/NavelRock_Down09/map.json b/data/maps/NavelRock_Down09/map.json index 38b2fdae8..1345a5aae 100644 --- a/data/maps/NavelRock_Down09/map.json +++ b/data/maps/NavelRock_Down09/map.json @@ -20,14 +20,14 @@ "y": 3, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_DOWN08", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 5, "y": 5, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_DOWN10", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/NavelRock_Down10/map.json b/data/maps/NavelRock_Down10/map.json index 7ea3bfa3b..eece7988e 100644 --- a/data/maps/NavelRock_Down10/map.json +++ b/data/maps/NavelRock_Down10/map.json @@ -20,14 +20,14 @@ "y": 5, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_DOWN09", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 3, "y": 3, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_DOWN11", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/NavelRock_Down11/map.json b/data/maps/NavelRock_Down11/map.json index da05c7e6b..1e8ffe54b 100644 --- a/data/maps/NavelRock_Down11/map.json +++ b/data/maps/NavelRock_Down11/map.json @@ -20,14 +20,14 @@ "y": 5, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_BOTTOM", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 3, "y": 3, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_DOWN10", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/NavelRock_Entrance/map.json b/data/maps/NavelRock_Entrance/map.json index ab14b2da1..242113036 100644 --- a/data/maps/NavelRock_Entrance/map.json +++ b/data/maps/NavelRock_Entrance/map.json @@ -20,14 +20,14 @@ "y": 5, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_B1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 10, "y": 26, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_EXTERIOR", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/NavelRock_Exterior/map.json b/data/maps/NavelRock_Exterior/map.json index 13927b6b6..a900e7e64 100644 --- a/data/maps/NavelRock_Exterior/map.json +++ b/data/maps/NavelRock_Exterior/map.json @@ -20,14 +20,14 @@ "y": 18, "elevation": 0, "dest_map": "MAP_NAVEL_ROCK_HARBOR", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 10, "y": 10, "elevation": 0, "dest_map": "MAP_NAVEL_ROCK_ENTRANCE", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/NavelRock_Fork/map.json b/data/maps/NavelRock_Fork/map.json index a8929208f..cbb7be029 100644 --- a/data/maps/NavelRock_Fork/map.json +++ b/data/maps/NavelRock_Fork/map.json @@ -20,21 +20,21 @@ "y": 6, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_UP1", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 11, "y": 79, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_B1F", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 22, "y": 6, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_DOWN01", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/NavelRock_Harbor/map.json b/data/maps/NavelRock_Harbor/map.json index 34e139108..ed0bb70da 100644 --- a/data/maps/NavelRock_Harbor/map.json +++ b/data/maps/NavelRock_Harbor/map.json @@ -47,7 +47,7 @@ "y": 2, "elevation": 0, "dest_map": "MAP_NAVEL_ROCK_EXTERIOR", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/NavelRock_Top/map.json b/data/maps/NavelRock_Top/map.json index c06202726..c818fc399 100644 --- a/data/maps/NavelRock_Top/map.json +++ b/data/maps/NavelRock_Top/map.json @@ -34,7 +34,7 @@ "y": 20, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_UP4", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [ diff --git a/data/maps/NavelRock_Up1/map.json b/data/maps/NavelRock_Up1/map.json index ee744ff4b..ff20085a8 100644 --- a/data/maps/NavelRock_Up1/map.json +++ b/data/maps/NavelRock_Up1/map.json @@ -20,14 +20,14 @@ "y": 5, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_FORK", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 3, "y": 3, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_UP2", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/NavelRock_Up2/map.json b/data/maps/NavelRock_Up2/map.json index aa2470329..fd9324a79 100644 --- a/data/maps/NavelRock_Up2/map.json +++ b/data/maps/NavelRock_Up2/map.json @@ -20,14 +20,14 @@ "y": 3, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_UP1", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 5, "y": 5, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_UP3", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/NavelRock_Up3/map.json b/data/maps/NavelRock_Up3/map.json index 2629eafb1..2394a6a1b 100644 --- a/data/maps/NavelRock_Up3/map.json +++ b/data/maps/NavelRock_Up3/map.json @@ -20,14 +20,14 @@ "y": 5, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_UP2", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 3, "y": 3, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_UP4", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/NavelRock_Up4/map.json b/data/maps/NavelRock_Up4/map.json index 4060a52a7..de9b7655f 100644 --- a/data/maps/NavelRock_Up4/map.json +++ b/data/maps/NavelRock_Up4/map.json @@ -20,14 +20,14 @@ "y": 3, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_UP3", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 5, "y": 5, "elevation": 3, "dest_map": "MAP_NAVEL_ROCK_TOP", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/NewMauville_Entrance/map.json b/data/maps/NewMauville_Entrance/map.json index d66c5b13b..aadb84744 100644 --- a/data/maps/NewMauville_Entrance/map.json +++ b/data/maps/NewMauville_Entrance/map.json @@ -20,14 +20,14 @@ "y": 6, "elevation": 3, "dest_map": "MAP_ROUTE110", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 4, "y": 1, "elevation": 3, "dest_map": "MAP_NEW_MAUVILLE_INSIDE", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [ diff --git a/data/maps/NewMauville_Inside/map.json b/data/maps/NewMauville_Inside/map.json index ae1654d8b..8524c25ec 100644 --- a/data/maps/NewMauville_Inside/map.json +++ b/data/maps/NewMauville_Inside/map.json @@ -125,7 +125,7 @@ "y": 33, "elevation": 3, "dest_map": "MAP_NEW_MAUVILLE_ENTRANCE", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [ diff --git a/data/maps/OldaleTown/map.json b/data/maps/OldaleTown/map.json index cc4bd008c..302ef5e9d 100644 --- a/data/maps/OldaleTown/map.json +++ b/data/maps/OldaleTown/map.json @@ -14,19 +14,19 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "up", + "map": "MAP_ROUTE103", "offset": 0, - "map": "MAP_ROUTE103" + "direction": "up" }, { - "direction": "down", + "map": "MAP_ROUTE101", "offset": 0, - "map": "MAP_ROUTE101" + "direction": "down" }, { - "direction": "left", + "map": "MAP_ROUTE102", "offset": 0, - "map": "MAP_ROUTE102" + "direction": "left" } ], "object_events": [ @@ -89,28 +89,28 @@ "y": 7, "elevation": 0, "dest_map": "MAP_OLDALE_TOWN_HOUSE1", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 15, "y": 16, "elevation": 0, "dest_map": "MAP_OLDALE_TOWN_HOUSE2", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 6, "y": 16, "elevation": 0, "dest_map": "MAP_OLDALE_TOWN_POKEMON_CENTER_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 14, "y": 6, "elevation": 0, "dest_map": "MAP_OLDALE_TOWN_MART", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [ diff --git a/data/maps/OldaleTown_House1/map.json b/data/maps/OldaleTown_House1/map.json index cd64357dc..8b8f92b9f 100644 --- a/data/maps/OldaleTown_House1/map.json +++ b/data/maps/OldaleTown_House1/map.json @@ -34,14 +34,14 @@ "y": 8, "elevation": 0, "dest_map": "MAP_OLDALE_TOWN", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 4, "y": 8, "elevation": 0, "dest_map": "MAP_OLDALE_TOWN", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/OldaleTown_House2/map.json b/data/maps/OldaleTown_House2/map.json index 2347fc29a..de6bb9ac6 100644 --- a/data/maps/OldaleTown_House2/map.json +++ b/data/maps/OldaleTown_House2/map.json @@ -47,14 +47,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_OLDALE_TOWN", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 4, "y": 7, "elevation": 0, "dest_map": "MAP_OLDALE_TOWN", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/OldaleTown_Mart/map.json b/data/maps/OldaleTown_Mart/map.json index 692223541..cfca496fd 100644 --- a/data/maps/OldaleTown_Mart/map.json +++ b/data/maps/OldaleTown_Mart/map.json @@ -60,14 +60,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_OLDALE_TOWN", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 4, "y": 7, "elevation": 0, "dest_map": "MAP_OLDALE_TOWN", - "dest_warp_id": 3 + "dest_warp_id": "3" } ], "coord_events": [], diff --git a/data/maps/OldaleTown_PokemonCenter_1F/map.json b/data/maps/OldaleTown_PokemonCenter_1F/map.json index 46ee3f9bd..d3f72b849 100644 --- a/data/maps/OldaleTown_PokemonCenter_1F/map.json +++ b/data/maps/OldaleTown_PokemonCenter_1F/map.json @@ -73,21 +73,21 @@ "y": 8, "elevation": 3, "dest_map": "MAP_OLDALE_TOWN", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 6, "y": 8, "elevation": 3, "dest_map": "MAP_OLDALE_TOWN", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 1, "y": 6, "elevation": 4, "dest_map": "MAP_OLDALE_TOWN_POKEMON_CENTER_2F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/OldaleTown_PokemonCenter_2F/map.json b/data/maps/OldaleTown_PokemonCenter_2F/map.json index fdeb28c06..9fad68821 100644 --- a/data/maps/OldaleTown_PokemonCenter_2F/map.json +++ b/data/maps/OldaleTown_PokemonCenter_2F/map.json @@ -73,21 +73,21 @@ "y": 6, "elevation": 4, "dest_map": "MAP_OLDALE_TOWN_POKEMON_CENTER_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 5, "y": 1, "elevation": 3, "dest_map": "MAP_UNION_ROOM", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 9, "y": 1, "elevation": 3, "dest_map": "MAP_TRADE_CENTER", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/PacifidlogTown/map.json b/data/maps/PacifidlogTown/map.json index 51fc772a9..37cfe8ad0 100644 --- a/data/maps/PacifidlogTown/map.json +++ b/data/maps/PacifidlogTown/map.json @@ -14,14 +14,14 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "left", + "map": "MAP_ROUTE132", "offset": 0, - "map": "MAP_ROUTE132" + "direction": "left" }, { - "direction": "right", + "map": "MAP_ROUTE131", "offset": 0, - "map": "MAP_ROUTE131" + "direction": "right" } ], "object_events": [ @@ -71,42 +71,42 @@ "y": 15, "elevation": 0, "dest_map": "MAP_PACIFIDLOG_TOWN_POKEMON_CENTER_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 16, "y": 13, "elevation": 0, "dest_map": "MAP_PACIFIDLOG_TOWN_HOUSE1", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 3, "y": 22, "elevation": 0, "dest_map": "MAP_PACIFIDLOG_TOWN_HOUSE2", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 12, "y": 24, "elevation": 0, "dest_map": "MAP_PACIFIDLOG_TOWN_HOUSE3", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 2, "y": 12, "elevation": 0, "dest_map": "MAP_PACIFIDLOG_TOWN_HOUSE4", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 17, "y": 21, "elevation": 0, "dest_map": "MAP_PACIFIDLOG_TOWN_HOUSE5", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/PacifidlogTown_House1/map.json b/data/maps/PacifidlogTown_House1/map.json index a494819a5..0eb98e8d5 100644 --- a/data/maps/PacifidlogTown_House1/map.json +++ b/data/maps/PacifidlogTown_House1/map.json @@ -47,14 +47,14 @@ "y": 8, "elevation": 0, "dest_map": "MAP_PACIFIDLOG_TOWN", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 5, "y": 8, "elevation": 0, "dest_map": "MAP_PACIFIDLOG_TOWN", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/PacifidlogTown_House2/map.json b/data/maps/PacifidlogTown_House2/map.json index 027442b4b..5f8d260c1 100644 --- a/data/maps/PacifidlogTown_House2/map.json +++ b/data/maps/PacifidlogTown_House2/map.json @@ -60,14 +60,14 @@ "y": 8, "elevation": 0, "dest_map": "MAP_PACIFIDLOG_TOWN", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 5, "y": 8, "elevation": 0, "dest_map": "MAP_PACIFIDLOG_TOWN", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/PacifidlogTown_House3/map.json b/data/maps/PacifidlogTown_House3/map.json index 17f99cea1..8b9efefa3 100644 --- a/data/maps/PacifidlogTown_House3/map.json +++ b/data/maps/PacifidlogTown_House3/map.json @@ -47,14 +47,14 @@ "y": 8, "elevation": 0, "dest_map": "MAP_PACIFIDLOG_TOWN", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 5, "y": 8, "elevation": 0, "dest_map": "MAP_PACIFIDLOG_TOWN", - "dest_warp_id": 3 + "dest_warp_id": "3" } ], "coord_events": [], diff --git a/data/maps/PacifidlogTown_House4/map.json b/data/maps/PacifidlogTown_House4/map.json index 4c4cdb15b..0dc3774d7 100644 --- a/data/maps/PacifidlogTown_House4/map.json +++ b/data/maps/PacifidlogTown_House4/map.json @@ -60,14 +60,14 @@ "y": 8, "elevation": 0, "dest_map": "MAP_PACIFIDLOG_TOWN", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 5, "y": 8, "elevation": 0, "dest_map": "MAP_PACIFIDLOG_TOWN", - "dest_warp_id": 4 + "dest_warp_id": "4" } ], "coord_events": [], diff --git a/data/maps/PacifidlogTown_House5/map.json b/data/maps/PacifidlogTown_House5/map.json index ac9384502..b665908c0 100644 --- a/data/maps/PacifidlogTown_House5/map.json +++ b/data/maps/PacifidlogTown_House5/map.json @@ -47,14 +47,14 @@ "y": 8, "elevation": 0, "dest_map": "MAP_PACIFIDLOG_TOWN", - "dest_warp_id": 5 + "dest_warp_id": "5" }, { "x": 5, "y": 8, "elevation": 0, "dest_map": "MAP_PACIFIDLOG_TOWN", - "dest_warp_id": 5 + "dest_warp_id": "5" } ], "coord_events": [], diff --git a/data/maps/PacifidlogTown_PokemonCenter_1F/map.json b/data/maps/PacifidlogTown_PokemonCenter_1F/map.json index 50baa2b7c..f98fdb3dd 100644 --- a/data/maps/PacifidlogTown_PokemonCenter_1F/map.json +++ b/data/maps/PacifidlogTown_PokemonCenter_1F/map.json @@ -86,21 +86,21 @@ "y": 8, "elevation": 3, "dest_map": "MAP_PACIFIDLOG_TOWN", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 6, "y": 8, "elevation": 3, "dest_map": "MAP_PACIFIDLOG_TOWN", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 1, "y": 6, "elevation": 4, "dest_map": "MAP_PACIFIDLOG_TOWN_POKEMON_CENTER_2F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/PacifidlogTown_PokemonCenter_2F/map.json b/data/maps/PacifidlogTown_PokemonCenter_2F/map.json index 1837ab55c..3741feb83 100644 --- a/data/maps/PacifidlogTown_PokemonCenter_2F/map.json +++ b/data/maps/PacifidlogTown_PokemonCenter_2F/map.json @@ -73,21 +73,21 @@ "y": 6, "elevation": 4, "dest_map": "MAP_PACIFIDLOG_TOWN_POKEMON_CENTER_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 5, "y": 1, "elevation": 3, "dest_map": "MAP_UNION_ROOM", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 9, "y": 1, "elevation": 3, "dest_map": "MAP_TRADE_CENTER", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/PetalburgCity/map.json b/data/maps/PetalburgCity/map.json index d9587cdbb..d653e46ae 100644 --- a/data/maps/PetalburgCity/map.json +++ b/data/maps/PetalburgCity/map.json @@ -14,14 +14,14 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "left", + "map": "MAP_ROUTE104", "offset": -50, - "map": "MAP_ROUTE104" + "direction": "left" }, { - "direction": "right", + "map": "MAP_ROUTE102", "offset": 10, - "map": "MAP_ROUTE102" + "direction": "right" } ], "object_events": [ @@ -149,42 +149,42 @@ "y": 19, "elevation": 0, "dest_map": "MAP_PETALBURG_CITY_HOUSE1", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 7, "y": 5, "elevation": 0, "dest_map": "MAP_PETALBURG_CITY_WALLYS_HOUSE", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 15, "y": 8, "elevation": 0, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 20, "y": 16, "elevation": 0, "dest_map": "MAP_PETALBURG_CITY_POKEMON_CENTER_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 20, "y": 24, "elevation": 0, "dest_map": "MAP_PETALBURG_CITY_HOUSE2", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 25, "y": 12, "elevation": 0, "dest_map": "MAP_PETALBURG_CITY_MART", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [ diff --git a/data/maps/PetalburgCity_Gym/map.json b/data/maps/PetalburgCity_Gym/map.json index 307708fc1..ef5849171 100644 --- a/data/maps/PetalburgCity_Gym/map.json +++ b/data/maps/PetalburgCity_Gym/map.json @@ -164,266 +164,266 @@ "y": 111, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 5, "y": 111, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 1, "y": 105, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 7, "y": 85, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 6, "y": 85, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 7, "y": 105, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 6 + "dest_warp_id": "6" }, { "x": 1, "y": 98, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 5 + "dest_warp_id": "5" }, { "x": 2, "y": 98, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 5 + "dest_warp_id": "5" }, { "x": 1, "y": 79, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 10 + "dest_warp_id": "10" }, { "x": 7, "y": 79, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 12 + "dest_warp_id": "12" }, { "x": 7, "y": 46, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 8 + "dest_warp_id": "8" }, { "x": 6, "y": 46, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 8 + "dest_warp_id": "8" }, { "x": 1, "y": 59, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 9 + "dest_warp_id": "9" }, { "x": 2, "y": 59, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 9 + "dest_warp_id": "9" }, { "x": 1, "y": 92, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 16 + "dest_warp_id": "16" }, { "x": 7, "y": 92, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 18 + "dest_warp_id": "18" }, { "x": 7, "y": 59, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 14 + "dest_warp_id": "14" }, { "x": 6, "y": 59, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 14 + "dest_warp_id": "14" }, { "x": 1, "y": 72, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 15 + "dest_warp_id": "15" }, { "x": 2, "y": 72, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 15 + "dest_warp_id": "15" }, { "x": 7, "y": 40, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 24 + "dest_warp_id": "24" }, { "x": 1, "y": 53, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 26 + "dest_warp_id": "26" }, { "x": 7, "y": 53, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 28 + "dest_warp_id": "28" }, { "x": 1, "y": 66, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 30 + "dest_warp_id": "30" }, { "x": 1, "y": 20, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 20 + "dest_warp_id": "20" }, { "x": 2, "y": 20, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 20 + "dest_warp_id": "20" }, { "x": 7, "y": 20, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 21 + "dest_warp_id": "21" }, { "x": 6, "y": 20, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 21 + "dest_warp_id": "21" }, { "x": 1, "y": 33, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 22 + "dest_warp_id": "22" }, { "x": 2, "y": 33, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 22 + "dest_warp_id": "22" }, { "x": 7, "y": 33, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 23 + "dest_warp_id": "23" }, { "x": 6, "y": 33, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 23 + "dest_warp_id": "23" }, { "x": 7, "y": 14, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 34 + "dest_warp_id": "34" }, { "x": 1, "y": 27, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 36 + "dest_warp_id": "36" }, { "x": 1, "y": 7, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 32 + "dest_warp_id": "32" }, { "x": 2, "y": 7, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 32 + "dest_warp_id": "32" }, { "x": 7, "y": 7, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 33 + "dest_warp_id": "33" }, { "x": 6, "y": 7, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY_GYM", - "dest_warp_id": 33 + "dest_warp_id": "33" } ], "coord_events": [], diff --git a/data/maps/PetalburgCity_House1/map.json b/data/maps/PetalburgCity_House1/map.json index 54bd3303f..2b1e96648 100644 --- a/data/maps/PetalburgCity_House1/map.json +++ b/data/maps/PetalburgCity_House1/map.json @@ -47,14 +47,14 @@ "y": 8, "elevation": 0, "dest_map": "MAP_PETALBURG_CITY", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 4, "y": 8, "elevation": 0, "dest_map": "MAP_PETALBURG_CITY", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/PetalburgCity_House2/map.json b/data/maps/PetalburgCity_House2/map.json index 4a5436b97..74d128759 100644 --- a/data/maps/PetalburgCity_House2/map.json +++ b/data/maps/PetalburgCity_House2/map.json @@ -47,14 +47,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_PETALBURG_CITY", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 4, "y": 7, "elevation": 0, "dest_map": "MAP_PETALBURG_CITY", - "dest_warp_id": 4 + "dest_warp_id": "4" } ], "coord_events": [], diff --git a/data/maps/PetalburgCity_Mart/map.json b/data/maps/PetalburgCity_Mart/map.json index a55e27293..7c8a70b28 100644 --- a/data/maps/PetalburgCity_Mart/map.json +++ b/data/maps/PetalburgCity_Mart/map.json @@ -73,14 +73,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_PETALBURG_CITY", - "dest_warp_id": 5 + "dest_warp_id": "5" }, { "x": 4, "y": 7, "elevation": 0, "dest_map": "MAP_PETALBURG_CITY", - "dest_warp_id": 5 + "dest_warp_id": "5" } ], "coord_events": [], diff --git a/data/maps/PetalburgCity_PokemonCenter_1F/map.json b/data/maps/PetalburgCity_PokemonCenter_1F/map.json index 875c53c2b..12b7810df 100644 --- a/data/maps/PetalburgCity_PokemonCenter_1F/map.json +++ b/data/maps/PetalburgCity_PokemonCenter_1F/map.json @@ -86,21 +86,21 @@ "y": 8, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 6, "y": 8, "elevation": 3, "dest_map": "MAP_PETALBURG_CITY", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 1, "y": 6, "elevation": 4, "dest_map": "MAP_PETALBURG_CITY_POKEMON_CENTER_2F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/PetalburgCity_PokemonCenter_2F/map.json b/data/maps/PetalburgCity_PokemonCenter_2F/map.json index 8eb89d208..b2078e495 100644 --- a/data/maps/PetalburgCity_PokemonCenter_2F/map.json +++ b/data/maps/PetalburgCity_PokemonCenter_2F/map.json @@ -73,21 +73,21 @@ "y": 6, "elevation": 4, "dest_map": "MAP_PETALBURG_CITY_POKEMON_CENTER_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 5, "y": 1, "elevation": 3, "dest_map": "MAP_UNION_ROOM", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 9, "y": 1, "elevation": 3, "dest_map": "MAP_TRADE_CENTER", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/PetalburgCity_WallysHouse/map.json b/data/maps/PetalburgCity_WallysHouse/map.json index 0b8007a91..f2fd03e7f 100644 --- a/data/maps/PetalburgCity_WallysHouse/map.json +++ b/data/maps/PetalburgCity_WallysHouse/map.json @@ -47,14 +47,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_PETALBURG_CITY", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 4, "y": 7, "elevation": 0, "dest_map": "MAP_PETALBURG_CITY", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/PetalburgWoods/map.json b/data/maps/PetalburgWoods/map.json index fa97b5dd1..4179d8195 100644 --- a/data/maps/PetalburgWoods/map.json +++ b/data/maps/PetalburgWoods/map.json @@ -190,42 +190,42 @@ "y": 5, "elevation": 0, "dest_map": "MAP_ROUTE104", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 15, "y": 5, "elevation": 0, "dest_map": "MAP_ROUTE104", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 16, "y": 38, "elevation": 0, "dest_map": "MAP_ROUTE104", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 17, "y": 38, "elevation": 0, "dest_map": "MAP_ROUTE104", - "dest_warp_id": 5 + "dest_warp_id": "5" }, { "x": 36, "y": 38, "elevation": 0, "dest_map": "MAP_ROUTE104", - "dest_warp_id": 6 + "dest_warp_id": "6" }, { "x": 37, "y": 38, "elevation": 0, "dest_map": "MAP_ROUTE104", - "dest_warp_id": 7 + "dest_warp_id": "7" } ], "coord_events": [ diff --git a/data/maps/RecordCorner/map.json b/data/maps/RecordCorner/map.json index 083f44445..e19e89e09 100644 --- a/data/maps/RecordCorner/map.json +++ b/data/maps/RecordCorner/map.json @@ -33,29 +33,29 @@ "x": 8, "y": 9, "elevation": 3, - "dest_map": "MAP_NONE", - "dest_warp_id": 127 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_DYNAMIC" }, { "x": 9, "y": 9, "elevation": 3, - "dest_map": "MAP_NONE", - "dest_warp_id": 127 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_DYNAMIC" }, { "x": 11, "y": 9, "elevation": 3, - "dest_map": "MAP_NONE", - "dest_warp_id": 127 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_DYNAMIC" }, { "x": 10, "y": 9, "elevation": 3, - "dest_map": "MAP_NONE", - "dest_warp_id": 127 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_DYNAMIC" } ], "coord_events": [ diff --git a/data/maps/Route101/map.json b/data/maps/Route101/map.json index 34dc92841..1abb23030 100644 --- a/data/maps/Route101/map.json +++ b/data/maps/Route101/map.json @@ -14,14 +14,14 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "up", + "map": "MAP_OLDALE_TOWN", "offset": 0, - "map": "MAP_OLDALE_TOWN" + "direction": "up" }, { - "direction": "down", + "map": "MAP_LITTLEROOT_TOWN", "offset": 0, - "map": "MAP_LITTLEROOT_TOWN" + "direction": "down" } ], "object_events": [ diff --git a/data/maps/Route102/map.json b/data/maps/Route102/map.json index aaa63b11f..68e3549db 100644 --- a/data/maps/Route102/map.json +++ b/data/maps/Route102/map.json @@ -14,14 +14,14 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "left", + "map": "MAP_PETALBURG_CITY", "offset": -10, - "map": "MAP_PETALBURG_CITY" + "direction": "left" }, { - "direction": "right", + "map": "MAP_OLDALE_TOWN", "offset": 0, - "map": "MAP_OLDALE_TOWN" + "direction": "right" } ], "object_events": [ diff --git a/data/maps/Route103/map.json b/data/maps/Route103/map.json index fbf92dd0c..9bc6fed67 100644 --- a/data/maps/Route103/map.json +++ b/data/maps/Route103/map.json @@ -14,14 +14,14 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "down", + "map": "MAP_OLDALE_TOWN", "offset": 0, - "map": "MAP_OLDALE_TOWN" + "direction": "down" }, { - "direction": "right", + "map": "MAP_ROUTE110", "offset": -60, - "map": "MAP_ROUTE110" + "direction": "right" } ], "object_events": [ @@ -292,7 +292,7 @@ "y": 6, "elevation": 0, "dest_map": "MAP_ALTERING_CAVE", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/Route103/scripts.inc b/data/maps/Route103/scripts.inc index e2b75e0c3..557db64e2 100644 --- a/data/maps/Route103/scripts.inc +++ b/data/maps/Route103/scripts.inc @@ -114,7 +114,7 @@ Route103_EventScript_RivalExitFacingNorth:: applymovement LOCALID_RIVAL, Route103_Movement_RivalExitFacingNorth1 waitmovement 0 playse SE_LEDGE - applymovement LOCALID_RIVAL, Route103_EventScript_RivalExitFacingNorth2 + applymovement LOCALID_RIVAL, Route103_Movement_RivalExitFacingNorth2 waitmovement 0 goto Route103_EventScript_RivalEnd end @@ -155,7 +155,7 @@ Route103_Movement_RivalExitFacingNorth1: walk_down step_end -Route103_EventScript_RivalExitFacingNorth2: +Route103_Movement_RivalExitFacingNorth2: jump_2_down delay_16 walk_down diff --git a/data/maps/Route104/map.json b/data/maps/Route104/map.json index 6ec8b3752..80af8aa6d 100644 --- a/data/maps/Route104/map.json +++ b/data/maps/Route104/map.json @@ -14,19 +14,19 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "up", + "map": "MAP_RUSTBORO_CITY", "offset": 0, - "map": "MAP_RUSTBORO_CITY" + "direction": "up" }, { - "direction": "down", + "map": "MAP_ROUTE105", "offset": 0, - "map": "MAP_ROUTE105" + "direction": "down" }, { - "direction": "right", + "map": "MAP_PETALBURG_CITY", "offset": 50, - "map": "MAP_PETALBURG_CITY" + "direction": "right" } ], "object_events": [ @@ -479,56 +479,56 @@ "y": 50, "elevation": 0, "dest_map": "MAP_ROUTE104_MR_BRINEYS_HOUSE", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 5, "y": 18, "elevation": 0, "dest_map": "MAP_ROUTE104_PRETTY_PETAL_FLOWER_SHOP", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 10, "y": 30, "elevation": 3, "dest_map": "MAP_PETALBURG_WOODS", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 11, "y": 30, "elevation": 3, "dest_map": "MAP_PETALBURG_WOODS", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 10, "y": 38, "elevation": 3, "dest_map": "MAP_PETALBURG_WOODS", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 11, "y": 38, "elevation": 3, "dest_map": "MAP_PETALBURG_WOODS", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 32, "y": 42, "elevation": 3, "dest_map": "MAP_PETALBURG_WOODS", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 33, "y": 42, "elevation": 3, "dest_map": "MAP_PETALBURG_WOODS", - "dest_warp_id": 5 + "dest_warp_id": "5" } ], "coord_events": [ diff --git a/data/maps/Route104_MrBrineysHouse/map.json b/data/maps/Route104_MrBrineysHouse/map.json index ae4ffc791..642496529 100644 --- a/data/maps/Route104_MrBrineysHouse/map.json +++ b/data/maps/Route104_MrBrineysHouse/map.json @@ -47,14 +47,14 @@ "y": 8, "elevation": 0, "dest_map": "MAP_ROUTE104", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 6, "y": 8, "elevation": 0, "dest_map": "MAP_ROUTE104", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/Route104_PrettyPetalFlowerShop/map.json b/data/maps/Route104_PrettyPetalFlowerShop/map.json index ec18b1ded..27e18ddc7 100644 --- a/data/maps/Route104_PrettyPetalFlowerShop/map.json +++ b/data/maps/Route104_PrettyPetalFlowerShop/map.json @@ -60,14 +60,14 @@ "y": 8, "elevation": 0, "dest_map": "MAP_ROUTE104", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 3, "y": 8, "elevation": 0, "dest_map": "MAP_ROUTE104", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/Route105/map.json b/data/maps/Route105/map.json index bd951f62c..ae9bb6a5a 100644 --- a/data/maps/Route105/map.json +++ b/data/maps/Route105/map.json @@ -14,19 +14,19 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "up", + "map": "MAP_ROUTE104", "offset": 0, - "map": "MAP_ROUTE104" + "direction": "up" }, { - "direction": "down", + "map": "MAP_ROUTE106", "offset": 0, - "map": "MAP_ROUTE106" + "direction": "down" }, { - "direction": "dive", + "map": "MAP_UNDERWATER_ROUTE105", "offset": 0, - "map": "MAP_UNDERWATER_ROUTE105" + "direction": "dive" } ], "object_events": [ @@ -141,7 +141,7 @@ "y": 20, "elevation": 0, "dest_map": "MAP_ISLAND_CAVE", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/Route106/map.json b/data/maps/Route106/map.json index c28d593a7..5a0a38dc9 100644 --- a/data/maps/Route106/map.json +++ b/data/maps/Route106/map.json @@ -14,14 +14,14 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "up", + "map": "MAP_ROUTE105", "offset": 0, - "map": "MAP_ROUTE105" + "direction": "up" }, { - "direction": "down", + "map": "MAP_DEWFORD_TOWN", "offset": 60, - "map": "MAP_DEWFORD_TOWN" + "direction": "down" } ], "object_events": [ @@ -97,7 +97,7 @@ "y": 16, "elevation": 0, "dest_map": "MAP_GRANITE_CAVE_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/Route107/map.json b/data/maps/Route107/map.json index ddc0f1459..ee15509cd 100644 --- a/data/maps/Route107/map.json +++ b/data/maps/Route107/map.json @@ -14,14 +14,14 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "left", + "map": "MAP_DEWFORD_TOWN", "offset": 0, - "map": "MAP_DEWFORD_TOWN" + "direction": "left" }, { - "direction": "right", + "map": "MAP_ROUTE108", "offset": 0, - "map": "MAP_ROUTE108" + "direction": "right" } ], "object_events": [ diff --git a/data/maps/Route108/map.json b/data/maps/Route108/map.json index 21acfd6ca..405ae3401 100644 --- a/data/maps/Route108/map.json +++ b/data/maps/Route108/map.json @@ -14,14 +14,14 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "left", + "map": "MAP_ROUTE107", "offset": 0, - "map": "MAP_ROUTE107" + "direction": "left" }, { - "direction": "right", + "map": "MAP_ROUTE109", "offset": -40, - "map": "MAP_ROUTE109" + "direction": "right" } ], "object_events": [ @@ -123,7 +123,7 @@ "y": 6, "elevation": 3, "dest_map": "MAP_ABANDONED_SHIP_DECK", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/Route109/map.json b/data/maps/Route109/map.json index 2ddcc4530..49357f0a0 100644 --- a/data/maps/Route109/map.json +++ b/data/maps/Route109/map.json @@ -14,14 +14,14 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "up", + "map": "MAP_SLATEPORT_CITY", "offset": 0, - "map": "MAP_SLATEPORT_CITY" + "direction": "up" }, { - "direction": "left", + "map": "MAP_ROUTE108", "offset": 40, - "map": "MAP_ROUTE108" + "direction": "left" } ], "object_events": [ @@ -344,7 +344,7 @@ "y": 5, "elevation": 0, "dest_map": "MAP_ROUTE109_SEASHORE_HOUSE", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/Route109_SeashoreHouse/map.json b/data/maps/Route109_SeashoreHouse/map.json index 0a8164ba7..e2ae2a68e 100644 --- a/data/maps/Route109_SeashoreHouse/map.json +++ b/data/maps/Route109_SeashoreHouse/map.json @@ -73,14 +73,14 @@ "y": 9, "elevation": 0, "dest_map": "MAP_ROUTE109", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 7, "y": 9, "elevation": 0, "dest_map": "MAP_ROUTE109", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/Route110/map.json b/data/maps/Route110/map.json index abfc2b767..630b20bd3 100644 --- a/data/maps/Route110/map.json +++ b/data/maps/Route110/map.json @@ -14,19 +14,19 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "up", + "map": "MAP_MAUVILLE_CITY", "offset": 0, - "map": "MAP_MAUVILLE_CITY" + "direction": "up" }, { - "direction": "down", + "map": "MAP_SLATEPORT_CITY", "offset": 0, - "map": "MAP_SLATEPORT_CITY" + "direction": "down" }, { - "direction": "left", + "map": "MAP_ROUTE103", "offset": 60, - "map": "MAP_ROUTE103" + "direction": "left" } ], "object_events": [ @@ -505,42 +505,42 @@ "y": 24, "elevation": 3, "dest_map": "MAP_NEW_MAUVILLE_ENTRANCE", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 11, "y": 66, "elevation": 0, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_ENTRANCE", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 15, "y": 16, "elevation": 0, "dest_map": "MAP_ROUTE110_SEASIDE_CYCLING_ROAD_SOUTH_ENTRANCE", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 18, "y": 16, "elevation": 0, "dest_map": "MAP_ROUTE110_SEASIDE_CYCLING_ROAD_SOUTH_ENTRANCE", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 16, "y": 88, "elevation": 0, "dest_map": "MAP_ROUTE110_SEASIDE_CYCLING_ROAD_NORTH_ENTRANCE", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 19, "y": 88, "elevation": 0, "dest_map": "MAP_ROUTE110_SEASIDE_CYCLING_ROAD_NORTH_ENTRANCE", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [ diff --git a/data/maps/Route110_SeasideCyclingRoadNorthEntrance/map.json b/data/maps/Route110_SeasideCyclingRoadNorthEntrance/map.json index 0d382f275..6f3c6c75c 100644 --- a/data/maps/Route110_SeasideCyclingRoadNorthEntrance/map.json +++ b/data/maps/Route110_SeasideCyclingRoadNorthEntrance/map.json @@ -34,28 +34,28 @@ "y": 5, "elevation": 0, "dest_map": "MAP_ROUTE110", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 2, "y": 5, "elevation": 0, "dest_map": "MAP_ROUTE110", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 12, "y": 5, "elevation": 0, "dest_map": "MAP_ROUTE110", - "dest_warp_id": 5 + "dest_warp_id": "5" }, { "x": 13, "y": 5, "elevation": 0, "dest_map": "MAP_ROUTE110", - "dest_warp_id": 5 + "dest_warp_id": "5" } ], "coord_events": [ diff --git a/data/maps/Route110_SeasideCyclingRoadSouthEntrance/map.json b/data/maps/Route110_SeasideCyclingRoadSouthEntrance/map.json index 12cd26ada..59e3e5be6 100644 --- a/data/maps/Route110_SeasideCyclingRoadSouthEntrance/map.json +++ b/data/maps/Route110_SeasideCyclingRoadSouthEntrance/map.json @@ -34,28 +34,28 @@ "y": 5, "elevation": 0, "dest_map": "MAP_ROUTE110", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 2, "y": 5, "elevation": 0, "dest_map": "MAP_ROUTE110", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 12, "y": 5, "elevation": 0, "dest_map": "MAP_ROUTE110", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 13, "y": 5, "elevation": 0, "dest_map": "MAP_ROUTE110", - "dest_warp_id": 3 + "dest_warp_id": "3" } ], "coord_events": [ diff --git a/data/maps/Route110_TrickHouseCorridor/map.json b/data/maps/Route110_TrickHouseCorridor/map.json index 5d6ddb556..70bf78258 100644 --- a/data/maps/Route110_TrickHouseCorridor/map.json +++ b/data/maps/Route110_TrickHouseCorridor/map.json @@ -20,28 +20,28 @@ "y": 3, "elevation": 3, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_END", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 14, "y": 3, "elevation": 3, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_END", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 4, "y": 23, "elevation": 3, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_ENTRANCE", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 5, "y": 23, "elevation": 3, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_ENTRANCE", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/Route110_TrickHouseEnd/map.json b/data/maps/Route110_TrickHouseEnd/map.json index c82d871fb..90d228549 100644 --- a/data/maps/Route110_TrickHouseEnd/map.json +++ b/data/maps/Route110_TrickHouseEnd/map.json @@ -34,14 +34,14 @@ "y": 1, "elevation": 3, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_PUZZLE1", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 2, "y": 1, "elevation": 3, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_CORRIDOR", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [ diff --git a/data/maps/Route110_TrickHouseEntrance/map.json b/data/maps/Route110_TrickHouseEntrance/map.json index 5895ae788..5584a534c 100644 --- a/data/maps/Route110_TrickHouseEntrance/map.json +++ b/data/maps/Route110_TrickHouseEntrance/map.json @@ -34,21 +34,21 @@ "y": 7, "elevation": 3, "dest_map": "MAP_ROUTE110", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 6, "y": 7, "elevation": 3, "dest_map": "MAP_ROUTE110", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 5, "y": 2, "elevation": 3, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_PUZZLE1", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [ diff --git a/data/maps/Route110_TrickHouseEntrance/scripts.inc b/data/maps/Route110_TrickHouseEntrance/scripts.inc index 44dda8c5c..52327553e 100644 --- a/data/maps/Route110_TrickHouseEntrance/scripts.inc +++ b/data/maps/Route110_TrickHouseEntrance/scripts.inc @@ -625,7 +625,7 @@ Route110_TrickHousePuzzle6_EventScript_Door:: Route110_TrickHousePuzzle7_EventScript_Door:: goto_if_eq VAR_TRICK_HOUSE_PUZZLE_7_STATE, 0, Route110_TrickHousePuzzle_EventScript_DoorLocked - msgbox Route110_TrickHousePuzzle7_EventScript_WroteSecretCodeLockOpened, MSGBOX_DEFAULT + msgbox Route110_TrickHousePuzzle7_Text_WroteSecretCodeLockOpened, MSGBOX_DEFAULT playse SE_PIN setvar VAR_TRICK_HOUSE_PUZZLE_7_STATE, 2 setmetatile 13, 1, METATILE_TrickHousePuzzle_Stairs_Down, FALSE @@ -635,7 +635,7 @@ Route110_TrickHousePuzzle7_EventScript_Door:: Route110_TrickHousePuzzle8_EventScript_Door:: goto_if_eq VAR_TRICK_HOUSE_PUZZLE_8_STATE, 0, Route110_TrickHousePuzzle_EventScript_DoorLocked - msgbox Route110_TrickHousePuzzle8_EventScript_WroteSecretCodeLockOpened, MSGBOX_DEFAULT + msgbox Route110_TrickHousePuzzle8_Text_WroteSecretCodeLockOpened, MSGBOX_DEFAULT playse SE_PIN setvar VAR_TRICK_HOUSE_PUZZLE_8_STATE, 2 setmetatile 13, 1, METATILE_TrickHousePuzzle_Stairs_Down, FALSE diff --git a/data/maps/Route110_TrickHousePuzzle1/map.json b/data/maps/Route110_TrickHousePuzzle1/map.json index 42a416b51..1af3b9de2 100644 --- a/data/maps/Route110_TrickHousePuzzle1/map.json +++ b/data/maps/Route110_TrickHousePuzzle1/map.json @@ -216,21 +216,21 @@ "y": 21, "elevation": 3, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_ENTRANCE", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 1, "y": 21, "elevation": 3, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_ENTRANCE", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 13, "y": 1, "elevation": 3, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_END", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/Route110_TrickHousePuzzle2/map.json b/data/maps/Route110_TrickHousePuzzle2/map.json index 2b3ca9b2e..1aea0fde0 100644 --- a/data/maps/Route110_TrickHousePuzzle2/map.json +++ b/data/maps/Route110_TrickHousePuzzle2/map.json @@ -86,21 +86,21 @@ "y": 21, "elevation": 3, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_ENTRANCE", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 1, "y": 21, "elevation": 3, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_ENTRANCE", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 13, "y": 1, "elevation": 3, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_END", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [ diff --git a/data/maps/Route110_TrickHousePuzzle3/map.json b/data/maps/Route110_TrickHousePuzzle3/map.json index ba01c6b33..ba6c31c5d 100644 --- a/data/maps/Route110_TrickHousePuzzle3/map.json +++ b/data/maps/Route110_TrickHousePuzzle3/map.json @@ -112,21 +112,21 @@ "y": 21, "elevation": 3, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_ENTRANCE", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 1, "y": 21, "elevation": 3, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_ENTRANCE", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 13, "y": 1, "elevation": 3, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_END", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [ diff --git a/data/maps/Route110_TrickHousePuzzle4/map.json b/data/maps/Route110_TrickHousePuzzle4/map.json index 8e8348c95..3653dfba9 100644 --- a/data/maps/Route110_TrickHousePuzzle4/map.json +++ b/data/maps/Route110_TrickHousePuzzle4/map.json @@ -203,21 +203,21 @@ "y": 21, "elevation": 3, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_ENTRANCE", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 1, "y": 21, "elevation": 3, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_ENTRANCE", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 13, "y": 1, "elevation": 3, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_END", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/Route110_TrickHousePuzzle5/map.json b/data/maps/Route110_TrickHousePuzzle5/map.json index 9eba5d7f8..377550523 100644 --- a/data/maps/Route110_TrickHousePuzzle5/map.json +++ b/data/maps/Route110_TrickHousePuzzle5/map.json @@ -86,21 +86,21 @@ "y": 21, "elevation": 3, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_ENTRANCE", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 1, "y": 21, "elevation": 3, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_ENTRANCE", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 13, "y": 1, "elevation": 3, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_END", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [ diff --git a/data/maps/Route110_TrickHousePuzzle6/map.json b/data/maps/Route110_TrickHousePuzzle6/map.json index ff6e3e7f3..8c6aa3048 100644 --- a/data/maps/Route110_TrickHousePuzzle6/map.json +++ b/data/maps/Route110_TrickHousePuzzle6/map.json @@ -73,21 +73,21 @@ "y": 21, "elevation": 3, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_ENTRANCE", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 1, "y": 21, "elevation": 3, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_ENTRANCE", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 13, "y": 1, "elevation": 3, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_END", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/Route110_TrickHousePuzzle7/map.json b/data/maps/Route110_TrickHousePuzzle7/map.json index f5976bdef..15237e23c 100644 --- a/data/maps/Route110_TrickHousePuzzle7/map.json +++ b/data/maps/Route110_TrickHousePuzzle7/map.json @@ -138,91 +138,91 @@ "y": 21, "elevation": 3, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_ENTRANCE", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 1, "y": 21, "elevation": 3, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_ENTRANCE", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 13, "y": 1, "elevation": 3, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_END", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 13, "y": 4, "elevation": 0, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_PUZZLE7", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 7, "y": 3, "elevation": 0, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_PUZZLE7", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 13, "y": 11, "elevation": 0, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_PUZZLE7", - "dest_warp_id": 6 + "dest_warp_id": "6" }, { "x": 4, "y": 3, "elevation": 0, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_PUZZLE7", - "dest_warp_id": 5 + "dest_warp_id": "5" }, { "x": 1, "y": 17, "elevation": 0, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_PUZZLE7", - "dest_warp_id": 8 + "dest_warp_id": "8" }, { "x": 0, "y": 11, "elevation": 0, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_PUZZLE7", - "dest_warp_id": 7 + "dest_warp_id": "7" }, { "x": 2, "y": 3, "elevation": 0, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_PUZZLE7", - "dest_warp_id": 10 + "dest_warp_id": "10" }, { "x": 4, "y": 13, "elevation": 0, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_PUZZLE7", - "dest_warp_id": 9 + "dest_warp_id": "9" }, { "x": 1, "y": 3, "elevation": 0, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_PUZZLE7", - "dest_warp_id": 12 + "dest_warp_id": "12" }, { "x": 8, "y": 12, "elevation": 0, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_PUZZLE7", - "dest_warp_id": 11 + "dest_warp_id": "11" } ], "coord_events": [ diff --git a/data/maps/Route110_TrickHousePuzzle7/scripts.inc b/data/maps/Route110_TrickHousePuzzle7/scripts.inc index a47df82ca..45f4e8d0f 100644 --- a/data/maps/Route110_TrickHousePuzzle7/scripts.inc +++ b/data/maps/Route110_TrickHousePuzzle7/scripts.inc @@ -314,7 +314,7 @@ Route110_TrickHousePuzzle7_EventScript_Everett:: msgbox Route110_TrickHousePuzzle7_Text_EverettPostBattle, MSGBOX_AUTOCLOSE end -Route110_TrickHousePuzzle7_EventScript_WroteSecretCodeLockOpened:: +Route110_TrickHousePuzzle7_Text_WroteSecretCodeLockOpened:: .string "{PLAYER} wrote down the secret code\n" .string "on the door.\p" .string "“TRICK MASTER is huggable.”\n" diff --git a/data/maps/Route110_TrickHousePuzzle8/map.json b/data/maps/Route110_TrickHousePuzzle8/map.json index bfb106eb6..c9fa42d7b 100644 --- a/data/maps/Route110_TrickHousePuzzle8/map.json +++ b/data/maps/Route110_TrickHousePuzzle8/map.json @@ -73,21 +73,21 @@ "y": 21, "elevation": 3, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_ENTRANCE", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 1, "y": 21, "elevation": 3, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_ENTRANCE", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 13, "y": 1, "elevation": 0, "dest_map": "MAP_ROUTE110_TRICK_HOUSE_END", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/Route110_TrickHousePuzzle8/scripts.inc b/data/maps/Route110_TrickHousePuzzle8/scripts.inc index 371f61000..5f268224d 100644 --- a/data/maps/Route110_TrickHousePuzzle8/scripts.inc +++ b/data/maps/Route110_TrickHousePuzzle8/scripts.inc @@ -27,7 +27,7 @@ Route110_TrickHousePuzzle8_EventScript_Leroy:: msgbox Route110_TrickHousePuzzle8_Text_LeroyPostBattle, MSGBOX_AUTOCLOSE end -Route110_TrickHousePuzzle8_EventScript_WroteSecretCodeLockOpened:: +Route110_TrickHousePuzzle8_Text_WroteSecretCodeLockOpened:: .string "{PLAYER} wrote down the secret code\n" .string "on the door.\p" .string "“TRICK MASTER I love.”\n" diff --git a/data/maps/Route111/map.json b/data/maps/Route111/map.json index 566e7c962..bc476ebaa 100644 --- a/data/maps/Route111/map.json +++ b/data/maps/Route111/map.json @@ -14,19 +14,19 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "down", + "map": "MAP_MAUVILLE_CITY", "offset": 0, - "map": "MAP_MAUVILLE_CITY" + "direction": "down" }, { - "direction": "left", + "map": "MAP_ROUTE113", "offset": 0, - "map": "MAP_ROUTE113" + "direction": "left" }, { - "direction": "left", + "map": "MAP_ROUTE112", "offset": 20, - "map": "MAP_ROUTE112" + "direction": "left" } ], "object_events": [ @@ -635,35 +635,35 @@ "y": 113, "elevation": 0, "dest_map": "MAP_ROUTE111_WINSTRATE_FAMILYS_HOUSE", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 29, "y": 87, "elevation": 0, "dest_map": "MAP_DESERT_RUINS", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 26, "y": 18, "elevation": 0, "dest_map": "MAP_ROUTE111_OLD_LADYS_REST_STOP", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 19, "y": 58, "elevation": 0, "dest_map": "MAP_MIRAGE_TOWER_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 31, "y": 113, "elevation": 0, "dest_map": "MAP_TRAINER_HILL_ENTRANCE", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [ @@ -672,7 +672,7 @@ "x": 12, "y": 62, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "Route111_EventScript_SandstormTrigger" }, @@ -708,7 +708,7 @@ "x": 7, "y": 63, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "Route111_EventScript_SunTrigger" }, @@ -762,7 +762,7 @@ "x": 18, "y": 32, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "Route111_EventScript_SunTrigger" }, @@ -771,7 +771,7 @@ "x": 17, "y": 31, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "Route111_EventScript_SunTrigger" }, @@ -780,7 +780,7 @@ "x": 9, "y": 37, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "Route111_EventScript_SunTrigger" }, @@ -789,7 +789,7 @@ "x": 10, "y": 36, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "Route111_EventScript_SunTrigger" }, @@ -816,7 +816,7 @@ "x": 8, "y": 64, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "Route111_EventScript_SunTrigger" }, @@ -825,7 +825,7 @@ "x": 9, "y": 65, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "Route111_EventScript_SunTrigger" }, @@ -834,7 +834,7 @@ "x": 10, "y": 65, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "Route111_EventScript_SunTrigger" }, @@ -843,7 +843,7 @@ "x": 11, "y": 66, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "Route111_EventScript_SunTrigger" }, @@ -852,7 +852,7 @@ "x": 12, "y": 67, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "Route111_EventScript_SunTrigger" }, @@ -861,7 +861,7 @@ "x": 13, "y": 68, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "Route111_EventScript_SunTrigger" }, @@ -870,7 +870,7 @@ "x": 14, "y": 69, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "Route111_EventScript_SunTrigger" }, @@ -879,7 +879,7 @@ "x": 10, "y": 61, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "Route111_EventScript_SandstormTrigger" }, @@ -888,7 +888,7 @@ "x": 11, "y": 62, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "Route111_EventScript_SandstormTrigger" }, @@ -897,7 +897,7 @@ "x": 13, "y": 62, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "Route111_EventScript_SandstormTrigger" }, @@ -906,7 +906,7 @@ "x": 14, "y": 62, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "Route111_EventScript_SandstormTrigger" }, @@ -915,7 +915,7 @@ "x": 17, "y": 38, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "Route111_EventScript_SandstormTrigger" }, @@ -924,7 +924,7 @@ "x": 16, "y": 39, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "Route111_EventScript_SandstormTrigger" }, @@ -933,7 +933,7 @@ "x": 15, "y": 40, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "Route111_EventScript_SandstormTrigger" }, @@ -942,7 +942,7 @@ "x": 14, "y": 41, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "Route111_EventScript_SandstormTrigger" }, @@ -951,7 +951,7 @@ "x": 13, "y": 42, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "Route111_EventScript_SandstormTrigger" }, @@ -960,7 +960,7 @@ "x": 12, "y": 43, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "Route111_EventScript_SandstormTrigger" }, @@ -969,7 +969,7 @@ "x": 11, "y": 44, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "Route111_EventScript_SandstormTrigger" } diff --git a/data/maps/Route111_OldLadysRestStop/map.json b/data/maps/Route111_OldLadysRestStop/map.json index 419e4c2ee..b72b7e8e2 100644 --- a/data/maps/Route111_OldLadysRestStop/map.json +++ b/data/maps/Route111_OldLadysRestStop/map.json @@ -34,14 +34,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_ROUTE111", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 4, "y": 7, "elevation": 0, "dest_map": "MAP_ROUTE111", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/Route111_WinstrateFamilysHouse/map.json b/data/maps/Route111_WinstrateFamilysHouse/map.json index f88935971..5e6f9d75e 100644 --- a/data/maps/Route111_WinstrateFamilysHouse/map.json +++ b/data/maps/Route111_WinstrateFamilysHouse/map.json @@ -73,14 +73,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_ROUTE111", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 4, "y": 7, "elevation": 0, "dest_map": "MAP_ROUTE111", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/Route112/map.json b/data/maps/Route112/map.json index 04b2e6d12..5340680ea 100644 --- a/data/maps/Route112/map.json +++ b/data/maps/Route112/map.json @@ -14,19 +14,19 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "up", + "map": "MAP_ROUTE113", "offset": -60, - "map": "MAP_ROUTE113" + "direction": "up" }, { - "direction": "left", + "map": "MAP_LAVARIDGE_TOWN", "offset": 40, - "map": "MAP_LAVARIDGE_TOWN" + "direction": "left" }, { - "direction": "right", + "map": "MAP_ROUTE111", "offset": -20, - "map": "MAP_ROUTE111" + "direction": "right" } ], "object_events": [ @@ -219,42 +219,42 @@ "y": 27, "elevation": 0, "dest_map": "MAP_ROUTE112_CABLE_CAR_STATION", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 29, "y": 27, "elevation": 0, "dest_map": "MAP_ROUTE112_CABLE_CAR_STATION", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 6, "y": 46, "elevation": 3, "dest_map": "MAP_JAGGED_PASS", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 7, "y": 46, "elevation": 3, "dest_map": "MAP_JAGGED_PASS", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 11, "y": 36, "elevation": 0, "dest_map": "MAP_FIERY_PATH", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 22, "y": 10, "elevation": 0, "dest_map": "MAP_FIERY_PATH", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/Route112_CableCarStation/map.json b/data/maps/Route112_CableCarStation/map.json index 7adae98f7..09401d83b 100644 --- a/data/maps/Route112_CableCarStation/map.json +++ b/data/maps/Route112_CableCarStation/map.json @@ -47,14 +47,14 @@ "y": 11, "elevation": 0, "dest_map": "MAP_ROUTE112", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 7, "y": 11, "elevation": 0, "dest_map": "MAP_ROUTE112", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/Route113/map.json b/data/maps/Route113/map.json index 783406346..4c45d904c 100644 --- a/data/maps/Route113/map.json +++ b/data/maps/Route113/map.json @@ -14,19 +14,19 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "down", + "map": "MAP_ROUTE112", "offset": 60, - "map": "MAP_ROUTE112" + "direction": "down" }, { - "direction": "left", + "map": "MAP_FALLARBOR_TOWN", "offset": 0, - "map": "MAP_FALLARBOR_TOWN" + "direction": "left" }, { - "direction": "right", + "map": "MAP_ROUTE111", "offset": 0, - "map": "MAP_ROUTE111" + "direction": "right" } ], "object_events": [ @@ -245,21 +245,21 @@ "y": 5, "elevation": 0, "dest_map": "MAP_ROUTE113_GLASS_WORKSHOP", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 41, "y": 12, "elevation": 0, "dest_map": "MAP_TERRA_CAVE_ENTRANCE", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 88, "y": 5, "elevation": 0, "dest_map": "MAP_TERRA_CAVE_ENTRANCE", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [ diff --git a/data/maps/Route113_GlassWorkshop/map.json b/data/maps/Route113_GlassWorkshop/map.json index 924fbd85d..61d470b46 100644 --- a/data/maps/Route113_GlassWorkshop/map.json +++ b/data/maps/Route113_GlassWorkshop/map.json @@ -47,14 +47,14 @@ "y": 8, "elevation": 0, "dest_map": "MAP_ROUTE113", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 4, "y": 8, "elevation": 0, "dest_map": "MAP_ROUTE113", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/Route114/map.json b/data/maps/Route114/map.json index 38891b518..10f15233c 100644 --- a/data/maps/Route114/map.json +++ b/data/maps/Route114/map.json @@ -14,14 +14,14 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "left", + "map": "MAP_ROUTE115", "offset": 40, - "map": "MAP_ROUTE115" + "direction": "left" }, { - "direction": "right", + "map": "MAP_FALLARBOR_TOWN", "offset": 0, - "map": "MAP_FALLARBOR_TOWN" + "direction": "right" } ], "object_events": [ @@ -383,35 +383,35 @@ "y": 63, "elevation": 0, "dest_map": "MAP_METEOR_FALLS_1F_1R", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 29, "y": 5, "elevation": 0, "dest_map": "MAP_ROUTE114_FOSSIL_MANIACS_HOUSE", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 27, "y": 36, "elevation": 0, "dest_map": "MAP_ROUTE114_LANETTES_HOUSE", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 6, "y": 46, "elevation": 0, "dest_map": "MAP_TERRA_CAVE_ENTRANCE", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 7, "y": 4, "elevation": 0, "dest_map": "MAP_TERRA_CAVE_ENTRANCE", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/Route114_FossilManiacsHouse/map.json b/data/maps/Route114_FossilManiacsHouse/map.json index dd21ff77f..a4b00fac4 100644 --- a/data/maps/Route114_FossilManiacsHouse/map.json +++ b/data/maps/Route114_FossilManiacsHouse/map.json @@ -34,21 +34,21 @@ "y": 7, "elevation": 0, "dest_map": "MAP_ROUTE114", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 5, "y": 7, "elevation": 0, "dest_map": "MAP_ROUTE114", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 4, "y": 1, "elevation": 0, "dest_map": "MAP_ROUTE114_FOSSIL_MANIACS_TUNNEL", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/Route114_FossilManiacsTunnel/map.json b/data/maps/Route114_FossilManiacsTunnel/map.json index 9a8ac70c9..034545e6b 100644 --- a/data/maps/Route114_FossilManiacsTunnel/map.json +++ b/data/maps/Route114_FossilManiacsTunnel/map.json @@ -34,21 +34,21 @@ "y": 25, "elevation": 3, "dest_map": "MAP_ROUTE114_FOSSIL_MANIACS_HOUSE", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 7, "y": 25, "elevation": 3, "dest_map": "MAP_ROUTE114_FOSSIL_MANIACS_HOUSE", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 6, "y": 2, "elevation": 0, "dest_map": "MAP_DESERT_UNDERPASS", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [ diff --git a/data/maps/Route114_LanettesHouse/map.json b/data/maps/Route114_LanettesHouse/map.json index fcb8edfc9..c56bf3146 100644 --- a/data/maps/Route114_LanettesHouse/map.json +++ b/data/maps/Route114_LanettesHouse/map.json @@ -34,14 +34,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_ROUTE114", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 6, "y": 7, "elevation": 0, "dest_map": "MAP_ROUTE114", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/Route115/map.json b/data/maps/Route115/map.json index a5e2b10f9..a4143fad3 100644 --- a/data/maps/Route115/map.json +++ b/data/maps/Route115/map.json @@ -14,14 +14,14 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "down", + "map": "MAP_RUSTBORO_CITY", "offset": 0, - "map": "MAP_RUSTBORO_CITY" + "direction": "down" }, { - "direction": "right", + "map": "MAP_ROUTE114", "offset": -40, - "map": "MAP_ROUTE114" + "direction": "right" } ], "object_events": [ @@ -331,21 +331,21 @@ "y": 37, "elevation": 0, "dest_map": "MAP_METEOR_FALLS_1F_1R", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 21, "y": 6, "elevation": 0, "dest_map": "MAP_TERRA_CAVE_ENTRANCE", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 36, "y": 10, "elevation": 0, "dest_map": "MAP_TERRA_CAVE_ENTRANCE", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/Route116/map.json b/data/maps/Route116/map.json index 13b4bac1c..adf9a86d5 100644 --- a/data/maps/Route116/map.json +++ b/data/maps/Route116/map.json @@ -14,14 +14,14 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "down", + "map": "MAP_VERDANTURF_TOWN", "offset": 80, - "map": "MAP_VERDANTURF_TOWN" + "direction": "down" }, { - "direction": "left", + "map": "MAP_RUSTBORO_CITY", "offset": 0, - "map": "MAP_RUSTBORO_CITY" + "direction": "left" } ], "object_events": [ @@ -396,35 +396,35 @@ "y": 8, "elevation": 0, "dest_map": "MAP_RUSTURF_TUNNEL", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 38, "y": 8, "elevation": 0, "dest_map": "MAP_ROUTE116_TUNNELERS_REST_HOUSE", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 65, "y": 10, "elevation": 0, "dest_map": "MAP_RUSTURF_TUNNEL", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 59, "y": 13, "elevation": 0, "dest_map": "MAP_TERRA_CAVE_ENTRANCE", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 79, "y": 6, "elevation": 0, "dest_map": "MAP_TERRA_CAVE_ENTRANCE", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [ diff --git a/data/maps/Route116_TunnelersRestHouse/map.json b/data/maps/Route116_TunnelersRestHouse/map.json index b83971532..ad00aafa7 100644 --- a/data/maps/Route116_TunnelersRestHouse/map.json +++ b/data/maps/Route116_TunnelersRestHouse/map.json @@ -60,14 +60,14 @@ "y": 8, "elevation": 0, "dest_map": "MAP_ROUTE116", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 5, "y": 8, "elevation": 0, "dest_map": "MAP_ROUTE116", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/Route117/map.json b/data/maps/Route117/map.json index b72866741..80304ddf4 100644 --- a/data/maps/Route117/map.json +++ b/data/maps/Route117/map.json @@ -14,14 +14,14 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "left", + "map": "MAP_VERDANTURF_TOWN", "offset": 0, - "map": "MAP_VERDANTURF_TOWN" + "direction": "left" }, { - "direction": "right", + "map": "MAP_MAUVILLE_CITY", "offset": 0, - "map": "MAP_MAUVILLE_CITY" + "direction": "right" } ], "object_events": [ @@ -344,7 +344,7 @@ "y": 5, "elevation": 0, "dest_map": "MAP_ROUTE117_POKEMON_DAY_CARE", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/Route117_PokemonDayCare/map.json b/data/maps/Route117_PokemonDayCare/map.json index 5b51aa958..128c9f6e7 100644 --- a/data/maps/Route117_PokemonDayCare/map.json +++ b/data/maps/Route117_PokemonDayCare/map.json @@ -34,14 +34,14 @@ "y": 8, "elevation": 0, "dest_map": "MAP_ROUTE117", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 3, "y": 8, "elevation": 0, "dest_map": "MAP_ROUTE117", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/Route118/map.json b/data/maps/Route118/map.json index 67acb1b98..1068e4a1a 100644 --- a/data/maps/Route118/map.json +++ b/data/maps/Route118/map.json @@ -14,19 +14,19 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "up", + "map": "MAP_ROUTE119", "offset": 40, - "map": "MAP_ROUTE119" + "direction": "up" }, { - "direction": "left", + "map": "MAP_MAUVILLE_CITY", "offset": 0, - "map": "MAP_MAUVILLE_CITY" + "direction": "left" }, { - "direction": "right", + "map": "MAP_ROUTE123", "offset": 0, - "map": "MAP_ROUTE123" + "direction": "right" } ], "object_events": [ @@ -310,14 +310,14 @@ "y": 6, "elevation": 0, "dest_map": "MAP_TERRA_CAVE_ENTRANCE", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 9, "y": 6, "elevation": 0, "dest_map": "MAP_TERRA_CAVE_ENTRANCE", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [ diff --git a/data/maps/Route119/map.json b/data/maps/Route119/map.json index c5715daa2..f8591a5ba 100644 --- a/data/maps/Route119/map.json +++ b/data/maps/Route119/map.json @@ -14,14 +14,14 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "down", + "map": "MAP_ROUTE118", "offset": -40, - "map": "MAP_ROUTE118" + "direction": "down" }, { - "direction": "right", + "map": "MAP_FORTREE_CITY", "offset": 0, - "map": "MAP_FORTREE_CITY" + "direction": "right" } ], "object_events": [ @@ -591,14 +591,14 @@ "y": 32, "elevation": 0, "dest_map": "MAP_ROUTE119_WEATHER_INSTITUTE_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 33, "y": 109, "elevation": 0, "dest_map": "MAP_ROUTE119_HOUSE", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [ diff --git a/data/maps/Route119_House/map.json b/data/maps/Route119_House/map.json index 0225f1cd3..dc48897d1 100644 --- a/data/maps/Route119_House/map.json +++ b/data/maps/Route119_House/map.json @@ -112,14 +112,14 @@ "y": 8, "elevation": 0, "dest_map": "MAP_ROUTE119", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 4, "y": 8, "elevation": 0, "dest_map": "MAP_ROUTE119", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/Route119_WeatherInstitute_1F/map.json b/data/maps/Route119_WeatherInstitute_1F/map.json index 9a9e23882..02f2ffe37 100644 --- a/data/maps/Route119_WeatherInstitute_1F/map.json +++ b/data/maps/Route119_WeatherInstitute_1F/map.json @@ -86,21 +86,21 @@ "y": 12, "elevation": 0, "dest_map": "MAP_ROUTE119", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 10, "y": 12, "elevation": 0, "dest_map": "MAP_ROUTE119", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 17, "y": 1, "elevation": 0, "dest_map": "MAP_ROUTE119_WEATHER_INSTITUTE_2F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/Route119_WeatherInstitute_2F/map.json b/data/maps/Route119_WeatherInstitute_2F/map.json index e2e5ebb8a..935ea48dd 100644 --- a/data/maps/Route119_WeatherInstitute_2F/map.json +++ b/data/maps/Route119_WeatherInstitute_2F/map.json @@ -125,7 +125,7 @@ "y": 1, "elevation": 0, "dest_map": "MAP_ROUTE119_WEATHER_INSTITUTE_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/Route120/map.json b/data/maps/Route120/map.json index 6b67310d3..6bb2c84c1 100644 --- a/data/maps/Route120/map.json +++ b/data/maps/Route120/map.json @@ -14,14 +14,14 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "left", + "map": "MAP_FORTREE_CITY", "offset": 0, - "map": "MAP_FORTREE_CITY" + "direction": "left" }, { - "direction": "right", + "map": "MAP_ROUTE121", "offset": 80, - "map": "MAP_ROUTE121" + "direction": "right" } ], "object_events": [ @@ -604,14 +604,14 @@ "y": 55, "elevation": 0, "dest_map": "MAP_ANCIENT_TOMB", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 19, "y": 23, "elevation": 1, "dest_map": "MAP_SCORCHED_SLAB", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [ diff --git a/data/maps/Route121/map.json b/data/maps/Route121/map.json index aa8f07085..4a73f3fdd 100644 --- a/data/maps/Route121/map.json +++ b/data/maps/Route121/map.json @@ -14,19 +14,19 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "down", + "map": "MAP_ROUTE122", "offset": 20, - "map": "MAP_ROUTE122" + "direction": "down" }, { - "direction": "left", + "map": "MAP_ROUTE120", "offset": -80, - "map": "MAP_ROUTE120" + "direction": "left" }, { - "direction": "right", + "map": "MAP_LILYCOVE_CITY", "offset": -10, - "map": "MAP_LILYCOVE_CITY" + "direction": "right" } ], "object_events": [ @@ -414,7 +414,7 @@ "y": 5, "elevation": 0, "dest_map": "MAP_ROUTE121_SAFARI_ZONE_ENTRANCE", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [ diff --git a/data/maps/Route121_SafariZoneEntrance/map.json b/data/maps/Route121_SafariZoneEntrance/map.json index 231d3b4a7..3ab11461b 100644 --- a/data/maps/Route121_SafariZoneEntrance/map.json +++ b/data/maps/Route121_SafariZoneEntrance/map.json @@ -60,28 +60,28 @@ "y": 5, "elevation": 0, "dest_map": "MAP_SAFARI_ZONE_SOUTH", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 3, "y": 5, "elevation": 0, "dest_map": "MAP_SAFARI_ZONE_SOUTH", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 14, "y": 13, "elevation": 0, "dest_map": "MAP_ROUTE121", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 15, "y": 13, "elevation": 0, "dest_map": "MAP_ROUTE121", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [ diff --git a/data/maps/Route122/map.json b/data/maps/Route122/map.json index 8c9213347..fe21fe773 100644 --- a/data/maps/Route122/map.json +++ b/data/maps/Route122/map.json @@ -14,14 +14,14 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "up", + "map": "MAP_ROUTE121", "offset": -20, - "map": "MAP_ROUTE121" + "direction": "up" }, { - "direction": "down", + "map": "MAP_ROUTE123", "offset": -100, - "map": "MAP_ROUTE123" + "direction": "down" } ], "object_events": [], @@ -31,7 +31,7 @@ "y": 29, "elevation": 0, "dest_map": "MAP_MT_PYRE_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/Route123/map.json b/data/maps/Route123/map.json index 695b50acd..11798b95d 100644 --- a/data/maps/Route123/map.json +++ b/data/maps/Route123/map.json @@ -14,14 +14,14 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "up", + "map": "MAP_ROUTE122", "offset": 100, - "map": "MAP_ROUTE122" + "direction": "up" }, { - "direction": "left", + "map": "MAP_ROUTE118", "offset": 0, - "map": "MAP_ROUTE118" + "direction": "left" } ], "object_events": [ @@ -591,7 +591,7 @@ "y": 6, "elevation": 0, "dest_map": "MAP_ROUTE123_BERRY_MASTERS_HOUSE", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [ diff --git a/data/maps/Route123_BerryMastersHouse/map.json b/data/maps/Route123_BerryMastersHouse/map.json index 488ee97b5..80603aef5 100644 --- a/data/maps/Route123_BerryMastersHouse/map.json +++ b/data/maps/Route123_BerryMastersHouse/map.json @@ -47,14 +47,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_ROUTE123", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 4, "y": 7, "elevation": 0, "dest_map": "MAP_ROUTE123", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/Route124/map.json b/data/maps/Route124/map.json index 370a5f4e4..21e2ecd06 100644 --- a/data/maps/Route124/map.json +++ b/data/maps/Route124/map.json @@ -14,29 +14,29 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "down", + "map": "MAP_ROUTE126", "offset": 0, - "map": "MAP_ROUTE126" + "direction": "down" }, { - "direction": "left", + "map": "MAP_LILYCOVE_CITY", "offset": 10, - "map": "MAP_LILYCOVE_CITY" + "direction": "left" }, { - "direction": "right", + "map": "MAP_ROUTE125", "offset": 0, - "map": "MAP_ROUTE125" + "direction": "right" }, { - "direction": "right", + "map": "MAP_MOSSDEEP_CITY", "offset": 40, - "map": "MAP_MOSSDEEP_CITY" + "direction": "right" }, { - "direction": "dive", + "map": "MAP_UNDERWATER_ROUTE124", "offset": 0, - "map": "MAP_UNDERWATER_ROUTE124" + "direction": "dive" } ], "object_events": [ @@ -203,7 +203,7 @@ "y": 48, "elevation": 3, "dest_map": "MAP_ROUTE124_DIVING_TREASURE_HUNTERS_HOUSE", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/Route124_DivingTreasureHuntersHouse/map.json b/data/maps/Route124_DivingTreasureHuntersHouse/map.json index a9c16cd22..148014b99 100644 --- a/data/maps/Route124_DivingTreasureHuntersHouse/map.json +++ b/data/maps/Route124_DivingTreasureHuntersHouse/map.json @@ -34,14 +34,14 @@ "y": 8, "elevation": 0, "dest_map": "MAP_ROUTE124", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 4, "y": 8, "elevation": 0, "dest_map": "MAP_ROUTE124", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/Route125/map.json b/data/maps/Route125/map.json index 719e6b699..cc8bdf09c 100644 --- a/data/maps/Route125/map.json +++ b/data/maps/Route125/map.json @@ -14,19 +14,19 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "down", + "map": "MAP_MOSSDEEP_CITY", "offset": 0, - "map": "MAP_MOSSDEEP_CITY" + "direction": "down" }, { - "direction": "left", + "map": "MAP_ROUTE124", "offset": 0, - "map": "MAP_ROUTE124" + "direction": "left" }, { - "direction": "dive", + "map": "MAP_UNDERWATER_ROUTE125", "offset": 0, - "map": "MAP_UNDERWATER_ROUTE125" + "direction": "dive" } ], "object_events": [ @@ -167,7 +167,7 @@ "y": 19, "elevation": 0, "dest_map": "MAP_SHOAL_CAVE_LOW_TIDE_ENTRANCE_ROOM", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/Route126/map.json b/data/maps/Route126/map.json index bf7d7027c..0997e46b1 100644 --- a/data/maps/Route126/map.json +++ b/data/maps/Route126/map.json @@ -14,19 +14,19 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "up", + "map": "MAP_ROUTE124", "offset": 0, - "map": "MAP_ROUTE124" + "direction": "up" }, { - "direction": "right", + "map": "MAP_ROUTE127", "offset": 0, - "map": "MAP_ROUTE127" + "direction": "right" }, { - "direction": "dive", + "map": "MAP_UNDERWATER_ROUTE126", "offset": 0, - "map": "MAP_UNDERWATER_ROUTE126" + "direction": "dive" } ], "object_events": [ diff --git a/data/maps/Route127/map.json b/data/maps/Route127/map.json index 6ef7022f4..30652264e 100644 --- a/data/maps/Route127/map.json +++ b/data/maps/Route127/map.json @@ -14,24 +14,24 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "up", + "map": "MAP_MOSSDEEP_CITY", "offset": 0, - "map": "MAP_MOSSDEEP_CITY" + "direction": "up" }, { - "direction": "down", + "map": "MAP_ROUTE128", "offset": 0, - "map": "MAP_ROUTE128" + "direction": "down" }, { - "direction": "left", + "map": "MAP_ROUTE126", "offset": 0, - "map": "MAP_ROUTE126" + "direction": "left" }, { - "direction": "dive", + "map": "MAP_UNDERWATER_ROUTE127", "offset": 0, - "map": "MAP_UNDERWATER_ROUTE127" + "direction": "dive" } ], "object_events": [ diff --git a/data/maps/Route128/map.json b/data/maps/Route128/map.json index 0bed932d5..464aa83fc 100644 --- a/data/maps/Route128/map.json +++ b/data/maps/Route128/map.json @@ -14,24 +14,24 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "up", + "map": "MAP_ROUTE127", "offset": 0, - "map": "MAP_ROUTE127" + "direction": "up" }, { - "direction": "down", + "map": "MAP_ROUTE129", "offset": 0, - "map": "MAP_ROUTE129" + "direction": "down" }, { - "direction": "right", + "map": "MAP_EVER_GRANDE_CITY", "offset": -40, - "map": "MAP_EVER_GRANDE_CITY" + "direction": "right" }, { - "direction": "dive", + "map": "MAP_UNDERWATER_ROUTE128", "offset": 0, - "map": "MAP_UNDERWATER_ROUTE128" + "direction": "dive" } ], "object_events": [ diff --git a/data/maps/Route129/map.json b/data/maps/Route129/map.json index d5383eb50..427b70bd1 100644 --- a/data/maps/Route129/map.json +++ b/data/maps/Route129/map.json @@ -14,19 +14,19 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "up", + "map": "MAP_ROUTE128", "offset": 0, - "map": "MAP_ROUTE128" + "direction": "up" }, { - "direction": "left", + "map": "MAP_ROUTE130", "offset": 0, - "map": "MAP_ROUTE130" + "direction": "left" }, { - "direction": "dive", + "map": "MAP_UNDERWATER_ROUTE129", "offset": 0, - "map": "MAP_UNDERWATER_ROUTE129" + "direction": "dive" } ], "object_events": [ diff --git a/data/maps/Route130/map.json b/data/maps/Route130/map.json index c612eccb5..7b37a10ed 100644 --- a/data/maps/Route130/map.json +++ b/data/maps/Route130/map.json @@ -14,14 +14,14 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "left", + "map": "MAP_ROUTE131", "offset": 0, - "map": "MAP_ROUTE131" + "direction": "left" }, { - "direction": "right", + "map": "MAP_ROUTE129", "offset": 0, - "map": "MAP_ROUTE129" + "direction": "right" } ], "object_events": [ diff --git a/data/maps/Route131/map.json b/data/maps/Route131/map.json index 3599ae556..18cdecc6e 100644 --- a/data/maps/Route131/map.json +++ b/data/maps/Route131/map.json @@ -14,14 +14,14 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "left", + "map": "MAP_PACIFIDLOG_TOWN", "offset": 0, - "map": "MAP_PACIFIDLOG_TOWN" + "direction": "left" }, { - "direction": "right", + "map": "MAP_ROUTE130", "offset": 0, - "map": "MAP_ROUTE130" + "direction": "right" } ], "object_events": [ @@ -136,7 +136,7 @@ "y": 6, "elevation": 3, "dest_map": "MAP_SKY_PILLAR_ENTRANCE", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/Route132/map.json b/data/maps/Route132/map.json index 1d3d9efd0..698dd050f 100644 --- a/data/maps/Route132/map.json +++ b/data/maps/Route132/map.json @@ -14,14 +14,14 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "left", + "map": "MAP_ROUTE133", "offset": 0, - "map": "MAP_ROUTE133" + "direction": "left" }, { - "direction": "right", + "map": "MAP_PACIFIDLOG_TOWN", "offset": 0, - "map": "MAP_PACIFIDLOG_TOWN" + "direction": "right" } ], "object_events": [ diff --git a/data/maps/Route133/map.json b/data/maps/Route133/map.json index 80e64638b..106546ef5 100644 --- a/data/maps/Route133/map.json +++ b/data/maps/Route133/map.json @@ -14,14 +14,14 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "left", + "map": "MAP_ROUTE134", "offset": 0, - "map": "MAP_ROUTE134" + "direction": "left" }, { - "direction": "right", + "map": "MAP_ROUTE132", "offset": 0, - "map": "MAP_ROUTE132" + "direction": "right" } ], "object_events": [ diff --git a/data/maps/Route134/map.json b/data/maps/Route134/map.json index dd642a8e1..f516f16de 100644 --- a/data/maps/Route134/map.json +++ b/data/maps/Route134/map.json @@ -14,14 +14,14 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "left", + "map": "MAP_SLATEPORT_CITY", "offset": 0, - "map": "MAP_SLATEPORT_CITY" + "direction": "left" }, { - "direction": "right", + "map": "MAP_ROUTE133", "offset": 0, - "map": "MAP_ROUTE133" + "direction": "right" } ], "object_events": [ diff --git a/data/maps/RustboroCity/map.json b/data/maps/RustboroCity/map.json index 445bc5189..3d77404ee 100644 --- a/data/maps/RustboroCity/map.json +++ b/data/maps/RustboroCity/map.json @@ -14,19 +14,19 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "up", + "map": "MAP_ROUTE115", "offset": 0, - "map": "MAP_ROUTE115" + "direction": "up" }, { - "direction": "down", + "map": "MAP_ROUTE104", "offset": 0, - "map": "MAP_ROUTE104" + "direction": "down" }, { - "direction": "right", + "map": "MAP_ROUTE116", "offset": 0, - "map": "MAP_ROUTE116" + "direction": "right" } ], "object_events": [ @@ -245,84 +245,84 @@ "y": 19, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY_GYM", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 13, "y": 30, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY_FLAT1_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 16, "y": 45, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY_MART", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 16, "y": 38, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY_POKEMON_CENTER_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 27, "y": 34, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY_POKEMON_SCHOOL", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 11, "y": 15, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY_DEVON_CORP_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 12, "y": 15, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY_DEVON_CORP_1F", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 33, "y": 19, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY_HOUSE1", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 9, "y": 38, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY_CUTTERS_HOUSE", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 30, "y": 28, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY_HOUSE2", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 5, "y": 51, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY_FLAT2_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 26, "y": 46, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY_HOUSE3", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [ diff --git a/data/maps/RustboroCity_CuttersHouse/map.json b/data/maps/RustboroCity_CuttersHouse/map.json index 081799cd1..16394a68b 100644 --- a/data/maps/RustboroCity_CuttersHouse/map.json +++ b/data/maps/RustboroCity_CuttersHouse/map.json @@ -47,14 +47,14 @@ "y": 8, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY", - "dest_warp_id": 8 + "dest_warp_id": "8" }, { "x": 6, "y": 8, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY", - "dest_warp_id": 8 + "dest_warp_id": "8" } ], "coord_events": [], diff --git a/data/maps/RustboroCity_DevonCorp_1F/map.json b/data/maps/RustboroCity_DevonCorp_1F/map.json index 714f15506..64a8b917a 100644 --- a/data/maps/RustboroCity_DevonCorp_1F/map.json +++ b/data/maps/RustboroCity_DevonCorp_1F/map.json @@ -60,21 +60,21 @@ "y": 8, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY", - "dest_warp_id": 5 + "dest_warp_id": "5" }, { "x": 6, "y": 8, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY", - "dest_warp_id": 6 + "dest_warp_id": "6" }, { "x": 14, "y": 1, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY_DEVON_CORP_2F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/RustboroCity_DevonCorp_2F/map.json b/data/maps/RustboroCity_DevonCorp_2F/map.json index 95a931e94..3892ba40a 100644 --- a/data/maps/RustboroCity_DevonCorp_2F/map.json +++ b/data/maps/RustboroCity_DevonCorp_2F/map.json @@ -99,14 +99,14 @@ "y": 1, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY_DEVON_CORP_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 2, "y": 1, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY_DEVON_CORP_3F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/RustboroCity_DevonCorp_3F/map.json b/data/maps/RustboroCity_DevonCorp_3F/map.json index a31a49dd3..4ddb72718 100644 --- a/data/maps/RustboroCity_DevonCorp_3F/map.json +++ b/data/maps/RustboroCity_DevonCorp_3F/map.json @@ -60,7 +60,7 @@ "y": 1, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY_DEVON_CORP_2F", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/RustboroCity_Flat1_1F/map.json b/data/maps/RustboroCity_Flat1_1F/map.json index d4ddfb2f6..1ed8aafd1 100644 --- a/data/maps/RustboroCity_Flat1_1F/map.json +++ b/data/maps/RustboroCity_Flat1_1F/map.json @@ -47,21 +47,21 @@ "y": 7, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 7, "y": 7, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 2, "y": 1, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY_FLAT1_2F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/RustboroCity_Flat1_2F/map.json b/data/maps/RustboroCity_Flat1_2F/map.json index 3756411d7..bb8767062 100644 --- a/data/maps/RustboroCity_Flat1_2F/map.json +++ b/data/maps/RustboroCity_Flat1_2F/map.json @@ -125,7 +125,7 @@ "y": 1, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY_FLAT1_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/RustboroCity_Flat2_1F/map.json b/data/maps/RustboroCity_Flat2_1F/map.json index 5379567ff..21c1d5d7f 100644 --- a/data/maps/RustboroCity_Flat2_1F/map.json +++ b/data/maps/RustboroCity_Flat2_1F/map.json @@ -47,21 +47,21 @@ "y": 8, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY", - "dest_warp_id": 10 + "dest_warp_id": "10" }, { "x": 3, "y": 8, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY", - "dest_warp_id": 10 + "dest_warp_id": "10" }, { "x": 3, "y": 1, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY_FLAT2_2F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/RustboroCity_Flat2_2F/map.json b/data/maps/RustboroCity_Flat2_2F/map.json index 1ba0bbbba..8494c5232 100644 --- a/data/maps/RustboroCity_Flat2_2F/map.json +++ b/data/maps/RustboroCity_Flat2_2F/map.json @@ -47,14 +47,14 @@ "y": 1, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY_FLAT2_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 1, "y": 1, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY_FLAT2_3F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/RustboroCity_Flat2_3F/map.json b/data/maps/RustboroCity_Flat2_3F/map.json index da911f004..d7f47d6a0 100644 --- a/data/maps/RustboroCity_Flat2_3F/map.json +++ b/data/maps/RustboroCity_Flat2_3F/map.json @@ -47,7 +47,7 @@ "y": 1, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY_FLAT2_2F", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/RustboroCity_Gym/map.json b/data/maps/RustboroCity_Gym/map.json index 36ae306ab..dc7a34be2 100644 --- a/data/maps/RustboroCity_Gym/map.json +++ b/data/maps/RustboroCity_Gym/map.json @@ -86,14 +86,14 @@ "y": 19, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 6, "y": 19, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/RustboroCity_House1/map.json b/data/maps/RustboroCity_House1/map.json index a57b1a693..ad8e9d7ff 100644 --- a/data/maps/RustboroCity_House1/map.json +++ b/data/maps/RustboroCity_House1/map.json @@ -47,14 +47,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY", - "dest_warp_id": 7 + "dest_warp_id": "7" }, { "x": 6, "y": 7, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY", - "dest_warp_id": 7 + "dest_warp_id": "7" } ], "coord_events": [], diff --git a/data/maps/RustboroCity_House2/map.json b/data/maps/RustboroCity_House2/map.json index fdaed84fc..398c3ca2a 100644 --- a/data/maps/RustboroCity_House2/map.json +++ b/data/maps/RustboroCity_House2/map.json @@ -47,14 +47,14 @@ "y": 8, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY", - "dest_warp_id": 9 + "dest_warp_id": "9" }, { "x": 6, "y": 8, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY", - "dest_warp_id": 9 + "dest_warp_id": "9" } ], "coord_events": [], diff --git a/data/maps/RustboroCity_House3/map.json b/data/maps/RustboroCity_House3/map.json index 491550a2c..94a9f1ba9 100644 --- a/data/maps/RustboroCity_House3/map.json +++ b/data/maps/RustboroCity_House3/map.json @@ -60,14 +60,14 @@ "y": 8, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY", - "dest_warp_id": 11 + "dest_warp_id": "11" }, { "x": 6, "y": 8, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY", - "dest_warp_id": 11 + "dest_warp_id": "11" } ], "coord_events": [], diff --git a/data/maps/RustboroCity_Mart/map.json b/data/maps/RustboroCity_Mart/map.json index 1a5b4549f..92a23b6bf 100644 --- a/data/maps/RustboroCity_Mart/map.json +++ b/data/maps/RustboroCity_Mart/map.json @@ -73,14 +73,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 4, "y": 7, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/RustboroCity_PokemonCenter_1F/map.json b/data/maps/RustboroCity_PokemonCenter_1F/map.json index 633626c4c..d187d49a3 100644 --- a/data/maps/RustboroCity_PokemonCenter_1F/map.json +++ b/data/maps/RustboroCity_PokemonCenter_1F/map.json @@ -73,21 +73,21 @@ "y": 8, "elevation": 3, "dest_map": "MAP_RUSTBORO_CITY", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 6, "y": 8, "elevation": 3, "dest_map": "MAP_RUSTBORO_CITY", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 1, "y": 6, "elevation": 4, "dest_map": "MAP_RUSTBORO_CITY_POKEMON_CENTER_2F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/RustboroCity_PokemonCenter_2F/map.json b/data/maps/RustboroCity_PokemonCenter_2F/map.json index 912e4b263..5c9c5d42e 100644 --- a/data/maps/RustboroCity_PokemonCenter_2F/map.json +++ b/data/maps/RustboroCity_PokemonCenter_2F/map.json @@ -73,21 +73,21 @@ "y": 6, "elevation": 4, "dest_map": "MAP_RUSTBORO_CITY_POKEMON_CENTER_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 5, "y": 1, "elevation": 3, "dest_map": "MAP_UNION_ROOM", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 9, "y": 1, "elevation": 3, "dest_map": "MAP_TRADE_CENTER", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/RustboroCity_PokemonSchool/map.json b/data/maps/RustboroCity_PokemonSchool/map.json index e299248a0..5dfab29f7 100644 --- a/data/maps/RustboroCity_PokemonSchool/map.json +++ b/data/maps/RustboroCity_PokemonSchool/map.json @@ -112,14 +112,14 @@ "y": 10, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 6, "y": 10, "elevation": 0, "dest_map": "MAP_RUSTBORO_CITY", - "dest_warp_id": 4 + "dest_warp_id": "4" } ], "coord_events": [], diff --git a/data/maps/RusturfTunnel/map.json b/data/maps/RusturfTunnel/map.json index d8531c879..ef07714ad 100644 --- a/data/maps/RusturfTunnel/map.json +++ b/data/maps/RusturfTunnel/map.json @@ -151,21 +151,21 @@ "y": 10, "elevation": 3, "dest_map": "MAP_ROUTE116", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 29, "y": 16, "elevation": 3, "dest_map": "MAP_VERDANTURF_TOWN", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 18, "y": 20, "elevation": 3, "dest_map": "MAP_ROUTE116", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [ @@ -174,7 +174,7 @@ "x": 23, "y": 4, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "RusturfTunnel_EventScript_TunnelBlockagePos1" }, @@ -201,7 +201,7 @@ "x": 25, "y": 4, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "RusturfTunnel_EventScript_TunnelBlockagePos2" }, @@ -210,7 +210,7 @@ "x": 25, "y": 5, "elevation": 3, - "var": "0", + "var": "TRIGGER_RUN_IMMEDIATELY", "var_value": "0", "script": "RusturfTunnel_EventScript_TunnelBlockagePos3" } diff --git a/data/maps/SSTidalCorridor/map.json b/data/maps/SSTidalCorridor/map.json index 7356e1fe0..7a25d4450 100644 --- a/data/maps/SSTidalCorridor/map.json +++ b/data/maps/SSTidalCorridor/map.json @@ -86,63 +86,63 @@ "y": 9, "elevation": 3, "dest_map": "MAP_SS_TIDAL_ROOMS", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 7, "y": 9, "elevation": 3, "dest_map": "MAP_SS_TIDAL_ROOMS", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 10, "y": 9, "elevation": 3, "dest_map": "MAP_SS_TIDAL_ROOMS", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 13, "y": 9, "elevation": 3, "dest_map": "MAP_SS_TIDAL_ROOMS", - "dest_warp_id": 6 + "dest_warp_id": "6" }, { "x": 4, "y": 3, "elevation": 3, "dest_map": "MAP_SS_TIDAL_ROOMS", - "dest_warp_id": 8 + "dest_warp_id": "8" }, { "x": 7, "y": 3, "elevation": 3, "dest_map": "MAP_SS_TIDAL_ROOMS", - "dest_warp_id": 9 + "dest_warp_id": "9" }, { "x": 10, "y": 3, "elevation": 3, "dest_map": "MAP_SS_TIDAL_ROOMS", - "dest_warp_id": 10 + "dest_warp_id": "10" }, { "x": 13, "y": 3, "elevation": 3, "dest_map": "MAP_SS_TIDAL_ROOMS", - "dest_warp_id": 11 + "dest_warp_id": "11" }, { "x": 16, "y": 2, "elevation": 3, "dest_map": "MAP_SS_TIDAL_LOWER_DECK", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/SSTidalLowerDeck/map.json b/data/maps/SSTidalLowerDeck/map.json index 79331001a..cdabcd01b 100644 --- a/data/maps/SSTidalLowerDeck/map.json +++ b/data/maps/SSTidalLowerDeck/map.json @@ -47,7 +47,7 @@ "y": 2, "elevation": 3, "dest_map": "MAP_SS_TIDAL_CORRIDOR", - "dest_warp_id": 8 + "dest_warp_id": "8" } ], "coord_events": [], diff --git a/data/maps/SSTidalRooms/map.json b/data/maps/SSTidalRooms/map.json index fd65d5ce2..d66505b48 100644 --- a/data/maps/SSTidalRooms/map.json +++ b/data/maps/SSTidalRooms/map.json @@ -125,84 +125,84 @@ "y": 16, "elevation": 0, "dest_map": "MAP_SS_TIDAL_CORRIDOR", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 5, "y": 16, "elevation": 0, "dest_map": "MAP_SS_TIDAL_CORRIDOR", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 13, "y": 16, "elevation": 0, "dest_map": "MAP_SS_TIDAL_CORRIDOR", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 14, "y": 16, "elevation": 0, "dest_map": "MAP_SS_TIDAL_CORRIDOR", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 22, "y": 16, "elevation": 0, "dest_map": "MAP_SS_TIDAL_CORRIDOR", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 23, "y": 16, "elevation": 0, "dest_map": "MAP_SS_TIDAL_CORRIDOR", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 31, "y": 16, "elevation": 0, "dest_map": "MAP_SS_TIDAL_CORRIDOR", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 32, "y": 16, "elevation": 0, "dest_map": "MAP_SS_TIDAL_CORRIDOR", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 4, "y": 1, "elevation": 0, "dest_map": "MAP_SS_TIDAL_CORRIDOR", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 13, "y": 1, "elevation": 0, "dest_map": "MAP_SS_TIDAL_CORRIDOR", - "dest_warp_id": 5 + "dest_warp_id": "5" }, { "x": 22, "y": 1, "elevation": 0, "dest_map": "MAP_SS_TIDAL_CORRIDOR", - "dest_warp_id": 6 + "dest_warp_id": "6" }, { "x": 31, "y": 1, "elevation": 0, "dest_map": "MAP_SS_TIDAL_CORRIDOR", - "dest_warp_id": 7 + "dest_warp_id": "7" } ], "coord_events": [], diff --git a/data/maps/SafariZone_North/map.json b/data/maps/SafariZone_North/map.json index 2419587d8..f1e9048b1 100644 --- a/data/maps/SafariZone_North/map.json +++ b/data/maps/SafariZone_North/map.json @@ -14,19 +14,19 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "left", + "map": "MAP_SAFARI_ZONE_NORTHWEST", "offset": 0, - "map": "MAP_SAFARI_ZONE_NORTHWEST" + "direction": "left" }, { - "direction": "down", + "map": "MAP_SAFARI_ZONE_SOUTH", "offset": 0, - "map": "MAP_SAFARI_ZONE_SOUTH" + "direction": "down" }, { - "direction": "right", + "map": "MAP_SAFARI_ZONE_NORTHEAST", "offset": 0, - "map": "MAP_SAFARI_ZONE_NORTHEAST" + "direction": "right" } ], "object_events": [ diff --git a/data/maps/SafariZone_Northeast/map.json b/data/maps/SafariZone_Northeast/map.json index 910403107..876ffb8f6 100644 --- a/data/maps/SafariZone_Northeast/map.json +++ b/data/maps/SafariZone_Northeast/map.json @@ -14,14 +14,14 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "left", + "map": "MAP_SAFARI_ZONE_NORTH", "offset": 0, - "map": "MAP_SAFARI_ZONE_NORTH" + "direction": "left" }, { - "direction": "down", + "map": "MAP_SAFARI_ZONE_SOUTHEAST", "offset": 0, - "map": "MAP_SAFARI_ZONE_SOUTHEAST" + "direction": "down" } ], "object_events": [ diff --git a/data/maps/SafariZone_Northwest/map.json b/data/maps/SafariZone_Northwest/map.json index 20fffd049..93f3d2a79 100644 --- a/data/maps/SafariZone_Northwest/map.json +++ b/data/maps/SafariZone_Northwest/map.json @@ -14,14 +14,14 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "right", + "map": "MAP_SAFARI_ZONE_NORTH", "offset": 0, - "map": "MAP_SAFARI_ZONE_NORTH" + "direction": "right" }, { - "direction": "down", + "map": "MAP_SAFARI_ZONE_SOUTHWEST", "offset": 0, - "map": "MAP_SAFARI_ZONE_SOUTHWEST" + "direction": "down" } ], "object_events": [ diff --git a/data/maps/SafariZone_RestHouse/map.json b/data/maps/SafariZone_RestHouse/map.json index e03b024ae..09493d9b5 100644 --- a/data/maps/SafariZone_RestHouse/map.json +++ b/data/maps/SafariZone_RestHouse/map.json @@ -60,14 +60,14 @@ "y": 8, "elevation": 0, "dest_map": "MAP_SAFARI_ZONE_SOUTHWEST", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 4, "y": 8, "elevation": 0, "dest_map": "MAP_SAFARI_ZONE_SOUTHWEST", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/SafariZone_South/map.json b/data/maps/SafariZone_South/map.json index 562b85b9e..dee1e4062 100644 --- a/data/maps/SafariZone_South/map.json +++ b/data/maps/SafariZone_South/map.json @@ -14,19 +14,19 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "up", + "map": "MAP_SAFARI_ZONE_NORTH", "offset": 0, - "map": "MAP_SAFARI_ZONE_NORTH" + "direction": "up" }, { - "direction": "left", + "map": "MAP_SAFARI_ZONE_SOUTHWEST", "offset": 0, - "map": "MAP_SAFARI_ZONE_SOUTHWEST" + "direction": "left" }, { - "direction": "right", + "map": "MAP_SAFARI_ZONE_SOUTHEAST", "offset": 0, - "map": "MAP_SAFARI_ZONE_SOUTHEAST" + "direction": "right" } ], "object_events": [ @@ -115,7 +115,7 @@ "y": 33, "elevation": 0, "dest_map": "MAP_ROUTE121_SAFARI_ZONE_ENTRANCE", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/SafariZone_Southeast/map.json b/data/maps/SafariZone_Southeast/map.json index 723e874cc..87fdc8318 100644 --- a/data/maps/SafariZone_Southeast/map.json +++ b/data/maps/SafariZone_Southeast/map.json @@ -14,14 +14,14 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "left", + "map": "MAP_SAFARI_ZONE_SOUTH", "offset": 0, - "map": "MAP_SAFARI_ZONE_SOUTH" + "direction": "left" }, { - "direction": "up", + "map": "MAP_SAFARI_ZONE_NORTHEAST", "offset": 0, - "map": "MAP_SAFARI_ZONE_NORTHEAST" + "direction": "up" } ], "object_events": [ diff --git a/data/maps/SafariZone_Southwest/map.json b/data/maps/SafariZone_Southwest/map.json index 42faf1f50..39edcb2c6 100644 --- a/data/maps/SafariZone_Southwest/map.json +++ b/data/maps/SafariZone_Southwest/map.json @@ -14,14 +14,14 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "up", + "map": "MAP_SAFARI_ZONE_NORTHWEST", "offset": 0, - "map": "MAP_SAFARI_ZONE_NORTHWEST" + "direction": "up" }, { - "direction": "right", + "map": "MAP_SAFARI_ZONE_SOUTH", "offset": 0, - "map": "MAP_SAFARI_ZONE_SOUTH" + "direction": "right" } ], "object_events": [ @@ -58,7 +58,7 @@ "y": 7, "elevation": 3, "dest_map": "MAP_SAFARI_ZONE_REST_HOUSE", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/ScorchedSlab/map.json b/data/maps/ScorchedSlab/map.json index cb9789490..ca367b921 100644 --- a/data/maps/ScorchedSlab/map.json +++ b/data/maps/ScorchedSlab/map.json @@ -34,7 +34,7 @@ "y": 16, "elevation": 1, "dest_map": "MAP_ROUTE120", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/SeafloorCavern_Entrance/map.json b/data/maps/SeafloorCavern_Entrance/map.json index 1f7095def..5e88d7143 100644 --- a/data/maps/SeafloorCavern_Entrance/map.json +++ b/data/maps/SeafloorCavern_Entrance/map.json @@ -34,14 +34,14 @@ "y": 18, "elevation": 3, "dest_map": "MAP_UNDERWATER_ROUTE128", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 10, "y": 1, "elevation": 3, "dest_map": "MAP_SEAFLOOR_CAVERN_ROOM1", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/SeafloorCavern_Room1/map.json b/data/maps/SeafloorCavern_Room1/map.json index 2caa79414..bb580a8ab 100644 --- a/data/maps/SeafloorCavern_Room1/map.json +++ b/data/maps/SeafloorCavern_Room1/map.json @@ -86,21 +86,21 @@ "y": 18, "elevation": 3, "dest_map": "MAP_SEAFLOOR_CAVERN_ENTRANCE", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 17, "y": 13, "elevation": 3, "dest_map": "MAP_SEAFLOOR_CAVERN_ROOM5", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 6, "y": 2, "elevation": 3, "dest_map": "MAP_SEAFLOOR_CAVERN_ROOM2", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/SeafloorCavern_Room2/map.json b/data/maps/SeafloorCavern_Room2/map.json index bfdd30499..903c80ede 100644 --- a/data/maps/SeafloorCavern_Room2/map.json +++ b/data/maps/SeafloorCavern_Room2/map.json @@ -125,28 +125,28 @@ "y": 7, "elevation": 3, "dest_map": "MAP_SEAFLOOR_CAVERN_ROOM1", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 4, "y": 10, "elevation": 3, "dest_map": "MAP_SEAFLOOR_CAVERN_ROOM4", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 6, "y": 1, "elevation": 3, "dest_map": "MAP_SEAFLOOR_CAVERN_ROOM6", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 11, "y": 1, "elevation": 3, "dest_map": "MAP_SEAFLOOR_CAVERN_ROOM7", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/SeafloorCavern_Room3/map.json b/data/maps/SeafloorCavern_Room3/map.json index 478e108be..aedea66fc 100644 --- a/data/maps/SeafloorCavern_Room3/map.json +++ b/data/maps/SeafloorCavern_Room3/map.json @@ -138,21 +138,21 @@ "y": 1, "elevation": 3, "dest_map": "MAP_SEAFLOOR_CAVERN_ROOM8", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 9, "y": 13, "elevation": 3, "dest_map": "MAP_SEAFLOOR_CAVERN_ROOM7", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 4, "y": 15, "elevation": 3, "dest_map": "MAP_SEAFLOOR_CAVERN_ROOM6", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/SeafloorCavern_Room4/map.json b/data/maps/SeafloorCavern_Room4/map.json index 9ea3528a3..ef3733bb7 100644 --- a/data/maps/SeafloorCavern_Room4/map.json +++ b/data/maps/SeafloorCavern_Room4/map.json @@ -47,28 +47,28 @@ "y": 1, "elevation": 3, "dest_map": "MAP_SEAFLOOR_CAVERN_ROOM2", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 4, "y": 1, "elevation": 3, "dest_map": "MAP_SEAFLOOR_CAVERN_ROOM5", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 9, "y": 10, "elevation": 3, "dest_map": "MAP_SEAFLOOR_CAVERN_ROOM5", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 10, "y": 15, "elevation": 3, "dest_map": "MAP_SEAFLOOR_CAVERN_ENTRANCE", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/SeafloorCavern_Room5/map.json b/data/maps/SeafloorCavern_Room5/map.json index 415e2a718..aeb9f99d4 100644 --- a/data/maps/SeafloorCavern_Room5/map.json +++ b/data/maps/SeafloorCavern_Room5/map.json @@ -99,21 +99,21 @@ "y": 1, "elevation": 3, "dest_map": "MAP_SEAFLOOR_CAVERN_ROOM1", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 15, "y": 12, "elevation": 3, "dest_map": "MAP_SEAFLOOR_CAVERN_ROOM4", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 7, "y": 17, "elevation": 3, "dest_map": "MAP_SEAFLOOR_CAVERN_ROOM4", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/SeafloorCavern_Room6/map.json b/data/maps/SeafloorCavern_Room6/map.json index 598f4a042..8e1df23a8 100644 --- a/data/maps/SeafloorCavern_Room6/map.json +++ b/data/maps/SeafloorCavern_Room6/map.json @@ -20,21 +20,21 @@ "y": 21, "elevation": 3, "dest_map": "MAP_SEAFLOOR_CAVERN_ROOM2", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 4, "y": 1, "elevation": 3, "dest_map": "MAP_SEAFLOOR_CAVERN_ROOM3", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 14, "y": 8, "elevation": 1, "dest_map": "MAP_SEAFLOOR_CAVERN_ENTRANCE", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/SeafloorCavern_Room7/map.json b/data/maps/SeafloorCavern_Room7/map.json index 243a1f9d1..1911fefde 100644 --- a/data/maps/SeafloorCavern_Room7/map.json +++ b/data/maps/SeafloorCavern_Room7/map.json @@ -20,14 +20,14 @@ "y": 23, "elevation": 3, "dest_map": "MAP_SEAFLOOR_CAVERN_ROOM2", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 5, "y": 1, "elevation": 3, "dest_map": "MAP_SEAFLOOR_CAVERN_ROOM3", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/SeafloorCavern_Room8/map.json b/data/maps/SeafloorCavern_Room8/map.json index 7c5d5c820..20c796f9d 100644 --- a/data/maps/SeafloorCavern_Room8/map.json +++ b/data/maps/SeafloorCavern_Room8/map.json @@ -177,14 +177,14 @@ "y": 2, "elevation": 3, "dest_map": "MAP_SEAFLOOR_CAVERN_ROOM9", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 5, "y": 12, "elevation": 3, "dest_map": "MAP_SEAFLOOR_CAVERN_ROOM3", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/SeafloorCavern_Room9/map.json b/data/maps/SeafloorCavern_Room9/map.json index 7942b3d1d..f191941a2 100644 --- a/data/maps/SeafloorCavern_Room9/map.json +++ b/data/maps/SeafloorCavern_Room9/map.json @@ -112,7 +112,7 @@ "y": 4, "elevation": 3, "dest_map": "MAP_SEAFLOOR_CAVERN_ROOM8", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [ diff --git a/data/maps/SealedChamber_InnerRoom/map.json b/data/maps/SealedChamber_InnerRoom/map.json index 1f8e741d8..7f35fadd6 100644 --- a/data/maps/SealedChamber_InnerRoom/map.json +++ b/data/maps/SealedChamber_InnerRoom/map.json @@ -20,7 +20,7 @@ "y": 19, "elevation": 3, "dest_map": "MAP_SEALED_CHAMBER_OUTER_ROOM", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/SealedChamber_OuterRoom/map.json b/data/maps/SealedChamber_OuterRoom/map.json index e16350d7e..52e81b884 100644 --- a/data/maps/SealedChamber_OuterRoom/map.json +++ b/data/maps/SealedChamber_OuterRoom/map.json @@ -20,7 +20,7 @@ "y": 2, "elevation": 3, "dest_map": "MAP_SEALED_CHAMBER_INNER_ROOM", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/SecretBase_BlueCave1/map.json b/data/maps/SecretBase_BlueCave1/map.json index 066cfb385..0edcb99df 100644 --- a/data/maps/SecretBase_BlueCave1/map.json +++ b/data/maps/SecretBase_BlueCave1/map.json @@ -216,8 +216,8 @@ "x": 5, "y": 7, "elevation": 0, - "dest_map": "MAP_NONE", - "dest_warp_id": 126 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_SECRET_BASE" } ], "coord_events": [], diff --git a/data/maps/SecretBase_BlueCave2/map.json b/data/maps/SecretBase_BlueCave2/map.json index b74fa5afb..c93bddd12 100644 --- a/data/maps/SecretBase_BlueCave2/map.json +++ b/data/maps/SecretBase_BlueCave2/map.json @@ -216,8 +216,8 @@ "x": 7, "y": 5, "elevation": 0, - "dest_map": "MAP_NONE", - "dest_warp_id": 126 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_SECRET_BASE" } ], "coord_events": [], diff --git a/data/maps/SecretBase_BlueCave3/map.json b/data/maps/SecretBase_BlueCave3/map.json index dd67e2d54..4d7887ae7 100644 --- a/data/maps/SecretBase_BlueCave3/map.json +++ b/data/maps/SecretBase_BlueCave3/map.json @@ -216,8 +216,8 @@ "x": 4, "y": 15, "elevation": 0, - "dest_map": "MAP_NONE", - "dest_warp_id": 126 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_SECRET_BASE" } ], "coord_events": [], diff --git a/data/maps/SecretBase_BlueCave4/map.json b/data/maps/SecretBase_BlueCave4/map.json index 3c97371f5..b8938396a 100644 --- a/data/maps/SecretBase_BlueCave4/map.json +++ b/data/maps/SecretBase_BlueCave4/map.json @@ -216,8 +216,8 @@ "x": 4, "y": 15, "elevation": 0, - "dest_map": "MAP_NONE", - "dest_warp_id": 126 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_SECRET_BASE" } ], "coord_events": [], diff --git a/data/maps/SecretBase_BrownCave1/map.json b/data/maps/SecretBase_BrownCave1/map.json index 062eac9f4..e0d8b2639 100644 --- a/data/maps/SecretBase_BrownCave1/map.json +++ b/data/maps/SecretBase_BrownCave1/map.json @@ -216,8 +216,8 @@ "x": 5, "y": 7, "elevation": 0, - "dest_map": "MAP_NONE", - "dest_warp_id": 126 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_SECRET_BASE" } ], "coord_events": [], diff --git a/data/maps/SecretBase_BrownCave2/map.json b/data/maps/SecretBase_BrownCave2/map.json index eb04f2a8d..9ab47030b 100644 --- a/data/maps/SecretBase_BrownCave2/map.json +++ b/data/maps/SecretBase_BrownCave2/map.json @@ -216,8 +216,8 @@ "x": 1, "y": 7, "elevation": 0, - "dest_map": "MAP_NONE", - "dest_warp_id": 126 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_SECRET_BASE" } ], "coord_events": [], diff --git a/data/maps/SecretBase_BrownCave3/map.json b/data/maps/SecretBase_BrownCave3/map.json index 1d00ee139..4f5ce0401 100644 --- a/data/maps/SecretBase_BrownCave3/map.json +++ b/data/maps/SecretBase_BrownCave3/map.json @@ -216,8 +216,8 @@ "x": 11, "y": 9, "elevation": 0, - "dest_map": "MAP_NONE", - "dest_warp_id": 126 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_SECRET_BASE" } ], "coord_events": [], diff --git a/data/maps/SecretBase_BrownCave4/map.json b/data/maps/SecretBase_BrownCave4/map.json index f1fb82eb4..4fdb8e022 100644 --- a/data/maps/SecretBase_BrownCave4/map.json +++ b/data/maps/SecretBase_BrownCave4/map.json @@ -216,8 +216,8 @@ "x": 2, "y": 8, "elevation": 0, - "dest_map": "MAP_NONE", - "dest_warp_id": 126 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_SECRET_BASE" } ], "coord_events": [], diff --git a/data/maps/SecretBase_RedCave1/map.json b/data/maps/SecretBase_RedCave1/map.json index e83458a87..d3e1fd915 100644 --- a/data/maps/SecretBase_RedCave1/map.json +++ b/data/maps/SecretBase_RedCave1/map.json @@ -216,8 +216,8 @@ "x": 5, "y": 7, "elevation": 0, - "dest_map": "MAP_NONE", - "dest_warp_id": 126 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_SECRET_BASE" } ], "coord_events": [], diff --git a/data/maps/SecretBase_RedCave2/map.json b/data/maps/SecretBase_RedCave2/map.json index 9a0ac210f..591fe3b53 100644 --- a/data/maps/SecretBase_RedCave2/map.json +++ b/data/maps/SecretBase_RedCave2/map.json @@ -216,8 +216,8 @@ "x": 3, "y": 14, "elevation": 0, - "dest_map": "MAP_NONE", - "dest_warp_id": 126 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_SECRET_BASE" } ], "coord_events": [], diff --git a/data/maps/SecretBase_RedCave3/map.json b/data/maps/SecretBase_RedCave3/map.json index ce405a40a..88b86c929 100644 --- a/data/maps/SecretBase_RedCave3/map.json +++ b/data/maps/SecretBase_RedCave3/map.json @@ -216,8 +216,8 @@ "x": 3, "y": 6, "elevation": 0, - "dest_map": "MAP_NONE", - "dest_warp_id": 126 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_SECRET_BASE" } ], "coord_events": [], diff --git a/data/maps/SecretBase_RedCave4/map.json b/data/maps/SecretBase_RedCave4/map.json index 2b1ad8c2c..8a22aa7b6 100644 --- a/data/maps/SecretBase_RedCave4/map.json +++ b/data/maps/SecretBase_RedCave4/map.json @@ -216,8 +216,8 @@ "x": 2, "y": 12, "elevation": 0, - "dest_map": "MAP_NONE", - "dest_warp_id": 126 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_SECRET_BASE" } ], "coord_events": [], diff --git a/data/maps/SecretBase_Shrub1/map.json b/data/maps/SecretBase_Shrub1/map.json index a028cbe62..05dd99f04 100644 --- a/data/maps/SecretBase_Shrub1/map.json +++ b/data/maps/SecretBase_Shrub1/map.json @@ -216,8 +216,8 @@ "x": 5, "y": 7, "elevation": 0, - "dest_map": "MAP_NONE", - "dest_warp_id": 126 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_SECRET_BASE" } ], "coord_events": [], diff --git a/data/maps/SecretBase_Shrub2/map.json b/data/maps/SecretBase_Shrub2/map.json index 60977e70d..f2c206283 100644 --- a/data/maps/SecretBase_Shrub2/map.json +++ b/data/maps/SecretBase_Shrub2/map.json @@ -216,8 +216,8 @@ "x": 7, "y": 5, "elevation": 0, - "dest_map": "MAP_NONE", - "dest_warp_id": 126 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_SECRET_BASE" } ], "coord_events": [], diff --git a/data/maps/SecretBase_Shrub3/map.json b/data/maps/SecretBase_Shrub3/map.json index a513b0bd2..882e8185f 100644 --- a/data/maps/SecretBase_Shrub3/map.json +++ b/data/maps/SecretBase_Shrub3/map.json @@ -216,8 +216,8 @@ "x": 6, "y": 9, "elevation": 0, - "dest_map": "MAP_NONE", - "dest_warp_id": 126 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_SECRET_BASE" } ], "coord_events": [], diff --git a/data/maps/SecretBase_Shrub4/map.json b/data/maps/SecretBase_Shrub4/map.json index 6aded553b..1c98b91d7 100644 --- a/data/maps/SecretBase_Shrub4/map.json +++ b/data/maps/SecretBase_Shrub4/map.json @@ -216,8 +216,8 @@ "x": 11, "y": 8, "elevation": 0, - "dest_map": "MAP_NONE", - "dest_warp_id": 126 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_SECRET_BASE" } ], "coord_events": [], diff --git a/data/maps/SecretBase_Tree1/map.json b/data/maps/SecretBase_Tree1/map.json index cd6a0b33a..9c4b68455 100644 --- a/data/maps/SecretBase_Tree1/map.json +++ b/data/maps/SecretBase_Tree1/map.json @@ -216,8 +216,8 @@ "x": 5, "y": 7, "elevation": 0, - "dest_map": "MAP_NONE", - "dest_warp_id": 126 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_SECRET_BASE" } ], "coord_events": [], diff --git a/data/maps/SecretBase_Tree2/map.json b/data/maps/SecretBase_Tree2/map.json index 3aad151ff..0ab31e280 100644 --- a/data/maps/SecretBase_Tree2/map.json +++ b/data/maps/SecretBase_Tree2/map.json @@ -216,8 +216,8 @@ "x": 3, "y": 14, "elevation": 0, - "dest_map": "MAP_NONE", - "dest_warp_id": 126 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_SECRET_BASE" } ], "coord_events": [], diff --git a/data/maps/SecretBase_Tree3/map.json b/data/maps/SecretBase_Tree3/map.json index 498852c02..3243b564a 100644 --- a/data/maps/SecretBase_Tree3/map.json +++ b/data/maps/SecretBase_Tree3/map.json @@ -216,8 +216,8 @@ "x": 8, "y": 6, "elevation": 0, - "dest_map": "MAP_NONE", - "dest_warp_id": 126 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_SECRET_BASE" } ], "coord_events": [], diff --git a/data/maps/SecretBase_Tree4/map.json b/data/maps/SecretBase_Tree4/map.json index b24d1d8a9..232e64224 100644 --- a/data/maps/SecretBase_Tree4/map.json +++ b/data/maps/SecretBase_Tree4/map.json @@ -216,8 +216,8 @@ "x": 7, "y": 12, "elevation": 0, - "dest_map": "MAP_NONE", - "dest_warp_id": 126 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_SECRET_BASE" } ], "coord_events": [], diff --git a/data/maps/SecretBase_YellowCave1/map.json b/data/maps/SecretBase_YellowCave1/map.json index 54916fda3..a370c4a93 100644 --- a/data/maps/SecretBase_YellowCave1/map.json +++ b/data/maps/SecretBase_YellowCave1/map.json @@ -216,8 +216,8 @@ "x": 5, "y": 7, "elevation": 0, - "dest_map": "MAP_NONE", - "dest_warp_id": 126 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_SECRET_BASE" } ], "coord_events": [], diff --git a/data/maps/SecretBase_YellowCave2/map.json b/data/maps/SecretBase_YellowCave2/map.json index f9d9a572b..06f68b1f2 100644 --- a/data/maps/SecretBase_YellowCave2/map.json +++ b/data/maps/SecretBase_YellowCave2/map.json @@ -216,8 +216,8 @@ "x": 12, "y": 7, "elevation": 0, - "dest_map": "MAP_NONE", - "dest_warp_id": 126 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_SECRET_BASE" } ], "coord_events": [], diff --git a/data/maps/SecretBase_YellowCave3/map.json b/data/maps/SecretBase_YellowCave3/map.json index fdcc94c18..7d5c488c8 100644 --- a/data/maps/SecretBase_YellowCave3/map.json +++ b/data/maps/SecretBase_YellowCave3/map.json @@ -216,8 +216,8 @@ "x": 5, "y": 9, "elevation": 0, - "dest_map": "MAP_NONE", - "dest_warp_id": 126 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_SECRET_BASE" } ], "coord_events": [], diff --git a/data/maps/SecretBase_YellowCave4/map.json b/data/maps/SecretBase_YellowCave4/map.json index 246974eaa..ae73f170f 100644 --- a/data/maps/SecretBase_YellowCave4/map.json +++ b/data/maps/SecretBase_YellowCave4/map.json @@ -216,8 +216,8 @@ "x": 6, "y": 12, "elevation": 0, - "dest_map": "MAP_NONE", - "dest_warp_id": 126 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_SECRET_BASE" } ], "coord_events": [], diff --git a/data/maps/ShoalCave_LowTideEntranceRoom/map.json b/data/maps/ShoalCave_LowTideEntranceRoom/map.json index ba71e1085..652038dac 100644 --- a/data/maps/ShoalCave_LowTideEntranceRoom/map.json +++ b/data/maps/ShoalCave_LowTideEntranceRoom/map.json @@ -47,28 +47,28 @@ "y": 30, "elevation": 3, "dest_map": "MAP_ROUTE125", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 19, "y": 5, "elevation": 3, "dest_map": "MAP_SHOAL_CAVE_LOW_TIDE_INNER_ROOM", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 6, "y": 2, "elevation": 3, "dest_map": "MAP_SHOAL_CAVE_LOW_TIDE_INNER_ROOM", - "dest_warp_id": 6 + "dest_warp_id": "6" }, { "x": 27, "y": 2, "elevation": 3, "dest_map": "MAP_SHOAL_CAVE_LOW_TIDE_INNER_ROOM", - "dest_warp_id": 7 + "dest_warp_id": "7" } ], "coord_events": [], diff --git a/data/maps/ShoalCave_LowTideIceRoom/map.json b/data/maps/ShoalCave_LowTideIceRoom/map.json index 3195d408b..f87f88227 100644 --- a/data/maps/ShoalCave_LowTideIceRoom/map.json +++ b/data/maps/ShoalCave_LowTideIceRoom/map.json @@ -47,7 +47,7 @@ "y": 10, "elevation": 3, "dest_map": "MAP_SHOAL_CAVE_LOW_TIDE_LOWER_ROOM", - "dest_warp_id": 3 + "dest_warp_id": "3" } ], "coord_events": [], diff --git a/data/maps/ShoalCave_LowTideInnerRoom/map.json b/data/maps/ShoalCave_LowTideInnerRoom/map.json index bf172e8b4..e7261f295 100644 --- a/data/maps/ShoalCave_LowTideInnerRoom/map.json +++ b/data/maps/ShoalCave_LowTideInnerRoom/map.json @@ -34,56 +34,56 @@ "y": 29, "elevation": 3, "dest_map": "MAP_SHOAL_CAVE_LOW_TIDE_ENTRANCE_ROOM", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 38, "y": 15, "elevation": 3, "dest_map": "MAP_SHOAL_CAVE_LOW_TIDE_STAIRS_ROOM", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 42, "y": 4, "elevation": 3, "dest_map": "MAP_SHOAL_CAVE_LOW_TIDE_STAIRS_ROOM", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 19, "y": 14, "elevation": 4, "dest_map": "MAP_SHOAL_CAVE_LOW_TIDE_LOWER_ROOM", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 15, "y": 19, "elevation": 3, "dest_map": "MAP_SHOAL_CAVE_LOW_TIDE_LOWER_ROOM", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 30, "y": 25, "elevation": 3, "dest_map": "MAP_SHOAL_CAVE_LOW_TIDE_LOWER_ROOM", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 14, "y": 33, "elevation": 5, "dest_map": "MAP_SHOAL_CAVE_LOW_TIDE_ENTRANCE_ROOM", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 40, "y": 33, "elevation": 5, "dest_map": "MAP_SHOAL_CAVE_LOW_TIDE_ENTRANCE_ROOM", - "dest_warp_id": 3 + "dest_warp_id": "3" } ], "coord_events": [], diff --git a/data/maps/ShoalCave_LowTideLowerRoom/map.json b/data/maps/ShoalCave_LowTideLowerRoom/map.json index 719841ec0..06e30f049 100644 --- a/data/maps/ShoalCave_LowTideLowerRoom/map.json +++ b/data/maps/ShoalCave_LowTideLowerRoom/map.json @@ -47,28 +47,28 @@ "y": 2, "elevation": 3, "dest_map": "MAP_SHOAL_CAVE_LOW_TIDE_INNER_ROOM", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 2, "y": 6, "elevation": 3, "dest_map": "MAP_SHOAL_CAVE_LOW_TIDE_INNER_ROOM", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 19, "y": 11, "elevation": 3, "dest_map": "MAP_SHOAL_CAVE_LOW_TIDE_INNER_ROOM", - "dest_warp_id": 5 + "dest_warp_id": "5" }, { "x": 28, "y": 11, "elevation": 3, "dest_map": "MAP_SHOAL_CAVE_LOW_TIDE_ICE_ROOM", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/ShoalCave_LowTideStairsRoom/map.json b/data/maps/ShoalCave_LowTideStairsRoom/map.json index 4207c9584..758781a03 100644 --- a/data/maps/ShoalCave_LowTideStairsRoom/map.json +++ b/data/maps/ShoalCave_LowTideStairsRoom/map.json @@ -34,14 +34,14 @@ "y": 12, "elevation": 3, "dest_map": "MAP_SHOAL_CAVE_LOW_TIDE_INNER_ROOM", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 7, "y": 4, "elevation": 3, "dest_map": "MAP_SHOAL_CAVE_LOW_TIDE_INNER_ROOM", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/SkyPillar_1F/map.json b/data/maps/SkyPillar_1F/map.json index 6ce499be2..05e64034d 100644 --- a/data/maps/SkyPillar_1F/map.json +++ b/data/maps/SkyPillar_1F/map.json @@ -20,21 +20,21 @@ "y": 13, "elevation": 3, "dest_map": "MAP_SKY_PILLAR_OUTSIDE", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 7, "y": 13, "elevation": 3, "dest_map": "MAP_SKY_PILLAR_OUTSIDE", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 10, "y": 1, "elevation": 3, "dest_map": "MAP_SKY_PILLAR_2F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/SkyPillar_2F/map.json b/data/maps/SkyPillar_2F/map.json index 7b534c2f7..a89e5e3cb 100644 --- a/data/maps/SkyPillar_2F/map.json +++ b/data/maps/SkyPillar_2F/map.json @@ -20,14 +20,14 @@ "y": 1, "elevation": 3, "dest_map": "MAP_SKY_PILLAR_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 3, "y": 1, "elevation": 3, "dest_map": "MAP_SKY_PILLAR_3F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/SkyPillar_3F/map.json b/data/maps/SkyPillar_3F/map.json index c05324f10..abf456456 100644 --- a/data/maps/SkyPillar_3F/map.json +++ b/data/maps/SkyPillar_3F/map.json @@ -20,21 +20,21 @@ "y": 1, "elevation": 3, "dest_map": "MAP_SKY_PILLAR_2F", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 11, "y": 1, "elevation": 3, "dest_map": "MAP_SKY_PILLAR_4F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 7, "y": 1, "elevation": 3, "dest_map": "MAP_SKY_PILLAR_4F", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/SkyPillar_4F/map.json b/data/maps/SkyPillar_4F/map.json index 7b5ad062e..a8b3f705b 100644 --- a/data/maps/SkyPillar_4F/map.json +++ b/data/maps/SkyPillar_4F/map.json @@ -20,21 +20,21 @@ "y": 1, "elevation": 3, "dest_map": "MAP_SKY_PILLAR_3F", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 7, "y": 1, "elevation": 3, "dest_map": "MAP_SKY_PILLAR_3F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 3, "y": 1, "elevation": 3, "dest_map": "MAP_SKY_PILLAR_5F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/SkyPillar_5F/map.json b/data/maps/SkyPillar_5F/map.json index 5be104fb0..1fc8baf77 100644 --- a/data/maps/SkyPillar_5F/map.json +++ b/data/maps/SkyPillar_5F/map.json @@ -20,14 +20,14 @@ "y": 1, "elevation": 3, "dest_map": "MAP_SKY_PILLAR_4F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 10, "y": 1, "elevation": 3, "dest_map": "MAP_SKY_PILLAR_TOP", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/SkyPillar_Entrance/map.json b/data/maps/SkyPillar_Entrance/map.json index c880da6ea..a224bee2c 100644 --- a/data/maps/SkyPillar_Entrance/map.json +++ b/data/maps/SkyPillar_Entrance/map.json @@ -20,14 +20,14 @@ "y": 16, "elevation": 3, "dest_map": "MAP_ROUTE131", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 14, "y": 4, "elevation": 3, "dest_map": "MAP_SKY_PILLAR_OUTSIDE", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/SkyPillar_Outside/map.json b/data/maps/SkyPillar_Outside/map.json index b0d4e198b..d72441266 100644 --- a/data/maps/SkyPillar_Outside/map.json +++ b/data/maps/SkyPillar_Outside/map.json @@ -34,14 +34,14 @@ "y": 13, "elevation": 3, "dest_map": "MAP_SKY_PILLAR_ENTRANCE", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 14, "y": 5, "elevation": 0, "dest_map": "MAP_SKY_PILLAR_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/SkyPillar_Top/map.json b/data/maps/SkyPillar_Top/map.json index 2fee12106..4c7ea03d1 100644 --- a/data/maps/SkyPillar_Top/map.json +++ b/data/maps/SkyPillar_Top/map.json @@ -47,7 +47,7 @@ "y": 14, "elevation": 3, "dest_map": "MAP_SKY_PILLAR_5F", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [ diff --git a/data/maps/SlateportCity/map.json b/data/maps/SlateportCity/map.json index 6ffed4b45..972b51447 100644 --- a/data/maps/SlateportCity/map.json +++ b/data/maps/SlateportCity/map.json @@ -14,19 +14,19 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "up", + "map": "MAP_ROUTE110", "offset": 0, - "map": "MAP_ROUTE110" + "direction": "up" }, { - "direction": "down", + "map": "MAP_ROUTE109", "offset": 0, - "map": "MAP_ROUTE109" + "direction": "down" }, { - "direction": "right", + "map": "MAP_ROUTE134", "offset": 0, - "map": "MAP_ROUTE134" + "direction": "right" } ], "object_events": [ @@ -492,77 +492,77 @@ "y": 19, "elevation": 0, "dest_map": "MAP_SLATEPORT_CITY_POKEMON_CENTER_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 13, "y": 26, "elevation": 0, "dest_map": "MAP_SLATEPORT_CITY_MART", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 26, "y": 38, "elevation": 0, "dest_map": "MAP_SLATEPORT_CITY_STERNS_SHIPYARD_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 10, "y": 12, "elevation": 0, "dest_map": "MAP_SLATEPORT_CITY_BATTLE_TENT_LOBBY", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 4, "y": 26, "elevation": 0, "dest_map": "MAP_SLATEPORT_CITY_POKEMON_FAN_CLUB", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 30, "y": 26, "elevation": 0, "dest_map": "MAP_SLATEPORT_CITY_OCEANIC_MUSEUM_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 5, "y": 19, "elevation": 0, "dest_map": "MAP_SLATEPORT_CITY_NAME_RATERS_HOUSE", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 31, "y": 26, "elevation": 0, "dest_map": "MAP_SLATEPORT_CITY_OCEANIC_MUSEUM_1F", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 28, "y": 12, "elevation": 0, "dest_map": "MAP_SLATEPORT_CITY_HARBOR", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 40, "y": 7, "elevation": 0, "dest_map": "MAP_SLATEPORT_CITY_HARBOR", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 21, "y": 44, "elevation": 0, "dest_map": "MAP_SLATEPORT_CITY_HOUSE", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [ diff --git a/data/maps/SlateportCity_BattleTentLobby/map.json b/data/maps/SlateportCity_BattleTentLobby/map.json index efd03e1e2..6a599df8f 100644 --- a/data/maps/SlateportCity_BattleTentLobby/map.json +++ b/data/maps/SlateportCity_BattleTentLobby/map.json @@ -86,14 +86,14 @@ "y": 9, "elevation": 0, "dest_map": "MAP_SLATEPORT_CITY", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 7, "y": 9, "elevation": 0, "dest_map": "MAP_SLATEPORT_CITY", - "dest_warp_id": 3 + "dest_warp_id": "3" } ], "coord_events": [], diff --git a/data/maps/SlateportCity_Harbor/map.json b/data/maps/SlateportCity_Harbor/map.json index 17d3c8940..05fe77c61 100644 --- a/data/maps/SlateportCity_Harbor/map.json +++ b/data/maps/SlateportCity_Harbor/map.json @@ -125,28 +125,28 @@ "y": 14, "elevation": 0, "dest_map": "MAP_SLATEPORT_CITY", - "dest_warp_id": 8 + "dest_warp_id": "8" }, { "x": 12, "y": 14, "elevation": 0, "dest_map": "MAP_SLATEPORT_CITY", - "dest_warp_id": 8 + "dest_warp_id": "8" }, { "x": 19, "y": 15, "elevation": 0, "dest_map": "MAP_SLATEPORT_CITY", - "dest_warp_id": 9 + "dest_warp_id": "9" }, { "x": 20, "y": 15, "elevation": 0, "dest_map": "MAP_SLATEPORT_CITY", - "dest_warp_id": 9 + "dest_warp_id": "9" } ], "coord_events": [ diff --git a/data/maps/SlateportCity_House/map.json b/data/maps/SlateportCity_House/map.json index 5ccc92566..354c39441 100644 --- a/data/maps/SlateportCity_House/map.json +++ b/data/maps/SlateportCity_House/map.json @@ -47,14 +47,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_SLATEPORT_CITY", - "dest_warp_id": 10 + "dest_warp_id": "10" }, { "x": 4, "y": 7, "elevation": 0, "dest_map": "MAP_SLATEPORT_CITY", - "dest_warp_id": 10 + "dest_warp_id": "10" } ], "coord_events": [], diff --git a/data/maps/SlateportCity_Mart/map.json b/data/maps/SlateportCity_Mart/map.json index 45d322555..a86614bd1 100644 --- a/data/maps/SlateportCity_Mart/map.json +++ b/data/maps/SlateportCity_Mart/map.json @@ -60,14 +60,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_SLATEPORT_CITY", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 4, "y": 7, "elevation": 0, "dest_map": "MAP_SLATEPORT_CITY", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/SlateportCity_NameRatersHouse/map.json b/data/maps/SlateportCity_NameRatersHouse/map.json index c0a94fd69..5b93717a9 100644 --- a/data/maps/SlateportCity_NameRatersHouse/map.json +++ b/data/maps/SlateportCity_NameRatersHouse/map.json @@ -34,14 +34,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_SLATEPORT_CITY", - "dest_warp_id": 6 + "dest_warp_id": "6" }, { "x": 4, "y": 7, "elevation": 0, "dest_map": "MAP_SLATEPORT_CITY", - "dest_warp_id": 6 + "dest_warp_id": "6" } ], "coord_events": [], diff --git a/data/maps/SlateportCity_OceanicMuseum_1F/map.json b/data/maps/SlateportCity_OceanicMuseum_1F/map.json index 7748f5438..fd3468a52 100644 --- a/data/maps/SlateportCity_OceanicMuseum_1F/map.json +++ b/data/maps/SlateportCity_OceanicMuseum_1F/map.json @@ -203,21 +203,21 @@ "y": 8, "elevation": 0, "dest_map": "MAP_SLATEPORT_CITY", - "dest_warp_id": 5 + "dest_warp_id": "5" }, { "x": 10, "y": 8, "elevation": 0, "dest_map": "MAP_SLATEPORT_CITY", - "dest_warp_id": 7 + "dest_warp_id": "7" }, { "x": 6, "y": 1, "elevation": 0, "dest_map": "MAP_SLATEPORT_CITY_OCEANIC_MUSEUM_2F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [ diff --git a/data/maps/SlateportCity_OceanicMuseum_2F/map.json b/data/maps/SlateportCity_OceanicMuseum_2F/map.json index 7b78802e3..bab9c1ea5 100644 --- a/data/maps/SlateportCity_OceanicMuseum_2F/map.json +++ b/data/maps/SlateportCity_OceanicMuseum_2F/map.json @@ -112,7 +112,7 @@ "y": 1, "elevation": 0, "dest_map": "MAP_SLATEPORT_CITY_OCEANIC_MUSEUM_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/SlateportCity_PokemonCenter_1F/map.json b/data/maps/SlateportCity_PokemonCenter_1F/map.json index 91132909a..418210f0b 100644 --- a/data/maps/SlateportCity_PokemonCenter_1F/map.json +++ b/data/maps/SlateportCity_PokemonCenter_1F/map.json @@ -60,21 +60,21 @@ "y": 8, "elevation": 3, "dest_map": "MAP_SLATEPORT_CITY", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 6, "y": 8, "elevation": 3, "dest_map": "MAP_SLATEPORT_CITY", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 1, "y": 6, "elevation": 4, "dest_map": "MAP_SLATEPORT_CITY_POKEMON_CENTER_2F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/SlateportCity_PokemonCenter_2F/map.json b/data/maps/SlateportCity_PokemonCenter_2F/map.json index 74b5ee63c..02e122d0e 100644 --- a/data/maps/SlateportCity_PokemonCenter_2F/map.json +++ b/data/maps/SlateportCity_PokemonCenter_2F/map.json @@ -73,21 +73,21 @@ "y": 6, "elevation": 4, "dest_map": "MAP_SLATEPORT_CITY_POKEMON_CENTER_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 5, "y": 1, "elevation": 3, "dest_map": "MAP_UNION_ROOM", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 9, "y": 1, "elevation": 3, "dest_map": "MAP_TRADE_CENTER", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/SlateportCity_PokemonFanClub/map.json b/data/maps/SlateportCity_PokemonFanClub/map.json index b1e4b0f8b..04e9b7add 100644 --- a/data/maps/SlateportCity_PokemonFanClub/map.json +++ b/data/maps/SlateportCity_PokemonFanClub/map.json @@ -138,14 +138,14 @@ "y": 10, "elevation": 0, "dest_map": "MAP_SLATEPORT_CITY", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 7, "y": 10, "elevation": 0, "dest_map": "MAP_SLATEPORT_CITY", - "dest_warp_id": 4 + "dest_warp_id": "4" } ], "coord_events": [], diff --git a/data/maps/SlateportCity_SternsShipyard_1F/map.json b/data/maps/SlateportCity_SternsShipyard_1F/map.json index 66cdd6a1d..4414fcfb1 100644 --- a/data/maps/SlateportCity_SternsShipyard_1F/map.json +++ b/data/maps/SlateportCity_SternsShipyard_1F/map.json @@ -73,21 +73,21 @@ "y": 14, "elevation": 0, "dest_map": "MAP_SLATEPORT_CITY", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 3, "y": 14, "elevation": 0, "dest_map": "MAP_SLATEPORT_CITY", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 3, "y": 1, "elevation": 0, "dest_map": "MAP_SLATEPORT_CITY_STERNS_SHIPYARD_2F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/SlateportCity_SternsShipyard_2F/map.json b/data/maps/SlateportCity_SternsShipyard_2F/map.json index 1b89b2bfa..6dad88b9e 100644 --- a/data/maps/SlateportCity_SternsShipyard_2F/map.json +++ b/data/maps/SlateportCity_SternsShipyard_2F/map.json @@ -60,7 +60,7 @@ "y": 1, "elevation": 0, "dest_map": "MAP_SLATEPORT_CITY_STERNS_SHIPYARD_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/SootopolisCity/map.json b/data/maps/SootopolisCity/map.json index f5c265139..c6a6757d2 100644 --- a/data/maps/SootopolisCity/map.json +++ b/data/maps/SootopolisCity/map.json @@ -255,91 +255,91 @@ "y": 31, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY_POKEMON_CENTER_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 17, "y": 29, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY_MART", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 31, "y": 32, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY_GYM_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 31, "y": 16, "elevation": 3, "dest_map": "MAP_CAVE_OF_ORIGIN_ENTRANCE", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 9, "y": 6, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY_HOUSE1", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 45, "y": 6, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY_HOUSE2", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 9, "y": 17, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY_HOUSE3", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 44, "y": 17, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY_HOUSE4", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 9, "y": 26, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY_HOUSE5", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 53, "y": 28, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY_HOUSE6", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 8, "y": 35, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY_HOUSE7", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 48, "y": 25, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY_LOTAD_AND_SEEDOT_HOUSE", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 51, "y": 36, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY_MYSTERY_EVENTS_HOUSE_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/SootopolisCity_Gym_1F/map.json b/data/maps/SootopolisCity_Gym_1F/map.json index 46baea29d..869bd4fc4 100644 --- a/data/maps/SootopolisCity_Gym_1F/map.json +++ b/data/maps/SootopolisCity_Gym_1F/map.json @@ -47,21 +47,21 @@ "y": 25, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 9, "y": 25, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 11, "y": 22, "elevation": 3, "dest_map": "MAP_SOOTOPOLIS_CITY_GYM_B1F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/SootopolisCity_Gym_B1F/map.json b/data/maps/SootopolisCity_Gym_B1F/map.json index 3badb1c52..2dcd0b6e2 100644 --- a/data/maps/SootopolisCity_Gym_B1F/map.json +++ b/data/maps/SootopolisCity_Gym_B1F/map.json @@ -151,7 +151,7 @@ "y": 22, "elevation": 3, "dest_map": "MAP_SOOTOPOLIS_CITY_GYM_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/SootopolisCity_House1/map.json b/data/maps/SootopolisCity_House1/map.json index 29162b867..b7c6af571 100644 --- a/data/maps/SootopolisCity_House1/map.json +++ b/data/maps/SootopolisCity_House1/map.json @@ -47,14 +47,14 @@ "y": 6, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 4, "y": 6, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY", - "dest_warp_id": 4 + "dest_warp_id": "4" } ], "coord_events": [], diff --git a/data/maps/SootopolisCity_House2/map.json b/data/maps/SootopolisCity_House2/map.json index 3fe0baf48..3ad5c4fec 100644 --- a/data/maps/SootopolisCity_House2/map.json +++ b/data/maps/SootopolisCity_House2/map.json @@ -34,14 +34,14 @@ "y": 6, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY", - "dest_warp_id": 5 + "dest_warp_id": "5" }, { "x": 4, "y": 6, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY", - "dest_warp_id": 5 + "dest_warp_id": "5" } ], "coord_events": [], diff --git a/data/maps/SootopolisCity_House3/map.json b/data/maps/SootopolisCity_House3/map.json index 00d82637e..984e31153 100644 --- a/data/maps/SootopolisCity_House3/map.json +++ b/data/maps/SootopolisCity_House3/map.json @@ -47,14 +47,14 @@ "y": 6, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY", - "dest_warp_id": 6 + "dest_warp_id": "6" }, { "x": 4, "y": 6, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY", - "dest_warp_id": 6 + "dest_warp_id": "6" } ], "coord_events": [], diff --git a/data/maps/SootopolisCity_House4/map.json b/data/maps/SootopolisCity_House4/map.json index e811785d0..66008482f 100644 --- a/data/maps/SootopolisCity_House4/map.json +++ b/data/maps/SootopolisCity_House4/map.json @@ -60,14 +60,14 @@ "y": 6, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY", - "dest_warp_id": 7 + "dest_warp_id": "7" }, { "x": 4, "y": 6, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY", - "dest_warp_id": 7 + "dest_warp_id": "7" } ], "coord_events": [], diff --git a/data/maps/SootopolisCity_House5/map.json b/data/maps/SootopolisCity_House5/map.json index 6b25c5af6..3a06c9b63 100644 --- a/data/maps/SootopolisCity_House5/map.json +++ b/data/maps/SootopolisCity_House5/map.json @@ -47,14 +47,14 @@ "y": 6, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY", - "dest_warp_id": 8 + "dest_warp_id": "8" }, { "x": 4, "y": 6, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY", - "dest_warp_id": 8 + "dest_warp_id": "8" } ], "coord_events": [], diff --git a/data/maps/SootopolisCity_House6/map.json b/data/maps/SootopolisCity_House6/map.json index 365503e8f..731b01fca 100644 --- a/data/maps/SootopolisCity_House6/map.json +++ b/data/maps/SootopolisCity_House6/map.json @@ -34,14 +34,14 @@ "y": 6, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY", - "dest_warp_id": 9 + "dest_warp_id": "9" }, { "x": 4, "y": 6, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY", - "dest_warp_id": 9 + "dest_warp_id": "9" } ], "coord_events": [], diff --git a/data/maps/SootopolisCity_House7/map.json b/data/maps/SootopolisCity_House7/map.json index 47d98c914..628504864 100644 --- a/data/maps/SootopolisCity_House7/map.json +++ b/data/maps/SootopolisCity_House7/map.json @@ -47,14 +47,14 @@ "y": 6, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY", - "dest_warp_id": 10 + "dest_warp_id": "10" }, { "x": 4, "y": 6, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY", - "dest_warp_id": 10 + "dest_warp_id": "10" } ], "coord_events": [], diff --git a/data/maps/SootopolisCity_LotadAndSeedotHouse/map.json b/data/maps/SootopolisCity_LotadAndSeedotHouse/map.json index 143fdf9f2..1b1f61260 100644 --- a/data/maps/SootopolisCity_LotadAndSeedotHouse/map.json +++ b/data/maps/SootopolisCity_LotadAndSeedotHouse/map.json @@ -47,14 +47,14 @@ "y": 6, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY", - "dest_warp_id": 11 + "dest_warp_id": "11" }, { "x": 4, "y": 6, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY", - "dest_warp_id": 11 + "dest_warp_id": "11" } ], "coord_events": [], diff --git a/data/maps/SootopolisCity_Mart/map.json b/data/maps/SootopolisCity_Mart/map.json index 55686a14f..1f75af5de 100644 --- a/data/maps/SootopolisCity_Mart/map.json +++ b/data/maps/SootopolisCity_Mart/map.json @@ -60,14 +60,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 4, "y": 7, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/SootopolisCity_MysteryEventsHouse_1F/map.json b/data/maps/SootopolisCity_MysteryEventsHouse_1F/map.json index a7fa18760..0b2ad974c 100644 --- a/data/maps/SootopolisCity_MysteryEventsHouse_1F/map.json +++ b/data/maps/SootopolisCity_MysteryEventsHouse_1F/map.json @@ -34,21 +34,21 @@ "y": 7, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY", - "dest_warp_id": 12 + "dest_warp_id": "12" }, { "x": 4, "y": 7, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY", - "dest_warp_id": 12 + "dest_warp_id": "12" }, { "x": 3, "y": 1, "elevation": 3, "dest_map": "MAP_SOOTOPOLIS_CITY_MYSTERY_EVENTS_HOUSE_B1F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/SootopolisCity_MysteryEventsHouse_B1F/map.json b/data/maps/SootopolisCity_MysteryEventsHouse_B1F/map.json index 82885ebcc..184af4d4d 100644 --- a/data/maps/SootopolisCity_MysteryEventsHouse_B1F/map.json +++ b/data/maps/SootopolisCity_MysteryEventsHouse_B1F/map.json @@ -34,7 +34,7 @@ "y": 1, "elevation": 0, "dest_map": "MAP_SOOTOPOLIS_CITY_MYSTERY_EVENTS_HOUSE_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" } ], "coord_events": [], diff --git a/data/maps/SootopolisCity_PokemonCenter_1F/map.json b/data/maps/SootopolisCity_PokemonCenter_1F/map.json index 8dac70dea..0fa27599d 100644 --- a/data/maps/SootopolisCity_PokemonCenter_1F/map.json +++ b/data/maps/SootopolisCity_PokemonCenter_1F/map.json @@ -73,21 +73,21 @@ "y": 8, "elevation": 3, "dest_map": "MAP_SOOTOPOLIS_CITY", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 6, "y": 8, "elevation": 3, "dest_map": "MAP_SOOTOPOLIS_CITY", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 1, "y": 6, "elevation": 4, "dest_map": "MAP_SOOTOPOLIS_CITY_POKEMON_CENTER_2F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/SootopolisCity_PokemonCenter_2F/map.json b/data/maps/SootopolisCity_PokemonCenter_2F/map.json index fd85b236b..fb17ee9fb 100644 --- a/data/maps/SootopolisCity_PokemonCenter_2F/map.json +++ b/data/maps/SootopolisCity_PokemonCenter_2F/map.json @@ -73,21 +73,21 @@ "y": 6, "elevation": 4, "dest_map": "MAP_SOOTOPOLIS_CITY_POKEMON_CENTER_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 5, "y": 1, "elevation": 3, "dest_map": "MAP_UNION_ROOM", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 9, "y": 1, "elevation": 3, "dest_map": "MAP_TRADE_CENTER", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/SouthernIsland_Exterior/map.json b/data/maps/SouthernIsland_Exterior/map.json index 8fe4bcf29..53a988398 100644 --- a/data/maps/SouthernIsland_Exterior/map.json +++ b/data/maps/SouthernIsland_Exterior/map.json @@ -47,14 +47,14 @@ "y": 5, "elevation": 3, "dest_map": "MAP_SOUTHERN_ISLAND_INTERIOR", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 15, "y": 5, "elevation": 3, "dest_map": "MAP_SOUTHERN_ISLAND_INTERIOR", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/SouthernIsland_Exterior/scripts.inc b/data/maps/SouthernIsland_Exterior/scripts.inc index b393413fe..6e7009a1f 100644 --- a/data/maps/SouthernIsland_Exterior/scripts.inc +++ b/data/maps/SouthernIsland_Exterior/scripts.inc @@ -33,20 +33,20 @@ SouthernIsland_Exterior_EventScript_AsYouLike:: end Ferry_EventScript_DepartIslandSouth:: - applymovement OBJ_EVENT_ID_PLAYER, Ferry_EventScript_DepartIslandBoardSouth + applymovement OBJ_EVENT_ID_PLAYER, Ferry_Movement_DepartIslandBoardSouth waitmovement 0 return Ferry_EventScript_DepartIslandWest:: - applymovement OBJ_EVENT_ID_PLAYER, Ferry_EventScript_DepartIslandBoardWest + applymovement OBJ_EVENT_ID_PLAYER, Ferry_Movement_DepartIslandBoardWest waitmovement 0 return -Ferry_EventScript_DepartIslandBoardSouth: +Ferry_Movement_DepartIslandBoardSouth: walk_down step_end -Ferry_EventScript_DepartIslandBoardWest: +Ferry_Movement_DepartIslandBoardWest: walk_left walk_in_place_faster_down step_end diff --git a/data/maps/SouthernIsland_Interior/map.json b/data/maps/SouthernIsland_Interior/map.json index 179ab1997..76212cbbd 100644 --- a/data/maps/SouthernIsland_Interior/map.json +++ b/data/maps/SouthernIsland_Interior/map.json @@ -47,14 +47,14 @@ "y": 18, "elevation": 3, "dest_map": "MAP_SOUTHERN_ISLAND_EXTERIOR", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 14, "y": 18, "elevation": 3, "dest_map": "MAP_SOUTHERN_ISLAND_EXTERIOR", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/TerraCave_End/map.json b/data/maps/TerraCave_End/map.json index e5fef758b..264b35af2 100644 --- a/data/maps/TerraCave_End/map.json +++ b/data/maps/TerraCave_End/map.json @@ -34,7 +34,7 @@ "y": 4, "elevation": 3, "dest_map": "MAP_TERRA_CAVE_ENTRANCE", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [ diff --git a/data/maps/TerraCave_Entrance/map.json b/data/maps/TerraCave_Entrance/map.json index 1ddc768e2..c80d7a1f6 100644 --- a/data/maps/TerraCave_Entrance/map.json +++ b/data/maps/TerraCave_Entrance/map.json @@ -19,15 +19,15 @@ "x": 8, "y": 18, "elevation": 0, - "dest_map": "MAP_NONE", - "dest_warp_id": 127 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_DYNAMIC" }, { "x": 14, "y": 1, "elevation": 3, "dest_map": "MAP_TERRA_CAVE_END", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/TradeCenter/map.json b/data/maps/TradeCenter/map.json index 0d3dd5477..6d128ee08 100644 --- a/data/maps/TradeCenter/map.json +++ b/data/maps/TradeCenter/map.json @@ -33,15 +33,15 @@ "x": 5, "y": 8, "elevation": 3, - "dest_map": "MAP_NONE", - "dest_warp_id": 127 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_DYNAMIC" }, { "x": 6, "y": 8, "elevation": 3, - "dest_map": "MAP_NONE", - "dest_warp_id": 127 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_DYNAMIC" } ], "coord_events": [ diff --git a/data/maps/TrainerHill_1F/map.json b/data/maps/TrainerHill_1F/map.json index d14bbb293..297b686e2 100644 --- a/data/maps/TrainerHill_1F/map.json +++ b/data/maps/TrainerHill_1F/map.json @@ -20,14 +20,14 @@ "y": 1, "elevation": 3, "dest_map": "MAP_TRAINER_HILL_ENTRANCE", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 12, "y": 1, "elevation": 3, "dest_map": "MAP_TRAINER_HILL_2F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/TrainerHill_2F/map.json b/data/maps/TrainerHill_2F/map.json index a4c9bca7d..7df034d83 100644 --- a/data/maps/TrainerHill_2F/map.json +++ b/data/maps/TrainerHill_2F/map.json @@ -20,14 +20,14 @@ "y": 1, "elevation": 3, "dest_map": "MAP_TRAINER_HILL_1F", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 12, "y": 1, "elevation": 3, "dest_map": "MAP_TRAINER_HILL_3F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/TrainerHill_3F/map.json b/data/maps/TrainerHill_3F/map.json index 069ca83ac..d20e019d3 100644 --- a/data/maps/TrainerHill_3F/map.json +++ b/data/maps/TrainerHill_3F/map.json @@ -20,14 +20,14 @@ "y": 1, "elevation": 3, "dest_map": "MAP_TRAINER_HILL_2F", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 12, "y": 1, "elevation": 3, "dest_map": "MAP_TRAINER_HILL_4F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/TrainerHill_4F/map.json b/data/maps/TrainerHill_4F/map.json index f195d9e93..2405deea8 100644 --- a/data/maps/TrainerHill_4F/map.json +++ b/data/maps/TrainerHill_4F/map.json @@ -20,14 +20,14 @@ "y": 1, "elevation": 3, "dest_map": "MAP_TRAINER_HILL_3F", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 12, "y": 1, "elevation": 3, "dest_map": "MAP_TRAINER_HILL_ROOF", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/TrainerHill_Elevator/map.json b/data/maps/TrainerHill_Elevator/map.json index 3d56ff476..a611cbf64 100644 --- a/data/maps/TrainerHill_Elevator/map.json +++ b/data/maps/TrainerHill_Elevator/map.json @@ -34,14 +34,14 @@ "y": 6, "elevation": 3, "dest_map": "MAP_TRAINER_HILL_ROOF", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 2, "y": 6, "elevation": 3, "dest_map": "MAP_TRAINER_HILL_ROOF", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/TrainerHill_Entrance/map.json b/data/maps/TrainerHill_Entrance/map.json index b2c20d050..0f2b4ec55 100644 --- a/data/maps/TrainerHill_Entrance/map.json +++ b/data/maps/TrainerHill_Entrance/map.json @@ -86,21 +86,21 @@ "y": 16, "elevation": 3, "dest_map": "MAP_ROUTE111", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 10, "y": 16, "elevation": 3, "dest_map": "MAP_ROUTE111", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 9, "y": 1, "elevation": 3, "dest_map": "MAP_TRAINER_HILL_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [ diff --git a/data/maps/TrainerHill_Roof/map.json b/data/maps/TrainerHill_Roof/map.json index 16020a762..7975c08c2 100644 --- a/data/maps/TrainerHill_Roof/map.json +++ b/data/maps/TrainerHill_Roof/map.json @@ -34,14 +34,14 @@ "y": 5, "elevation": 3, "dest_map": "MAP_TRAINER_HILL_4F", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 15, "y": 5, "elevation": 0, "dest_map": "MAP_TRAINER_HILL_ELEVATOR", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/Underwater_MarineCave/map.json b/data/maps/Underwater_MarineCave/map.json index c053fb121..ee9fcc0fb 100644 --- a/data/maps/Underwater_MarineCave/map.json +++ b/data/maps/Underwater_MarineCave/map.json @@ -19,8 +19,8 @@ "x": 9, "y": 8, "elevation": 0, - "dest_map": "MAP_NONE", - "dest_warp_id": 127 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_DYNAMIC" } ], "coord_events": [], diff --git a/data/maps/Underwater_Route105/map.json b/data/maps/Underwater_Route105/map.json index 890ccb2a8..069ccab4d 100644 --- a/data/maps/Underwater_Route105/map.json +++ b/data/maps/Underwater_Route105/map.json @@ -14,9 +14,9 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "emerge", + "map": "MAP_ROUTE105", "offset": 0, - "map": "MAP_ROUTE105" + "direction": "emerge" } ], "object_events": [], @@ -26,14 +26,14 @@ "y": 4, "elevation": 0, "dest_map": "MAP_UNDERWATER_MARINE_CAVE", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 17, "y": 66, "elevation": 0, "dest_map": "MAP_UNDERWATER_MARINE_CAVE", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/Underwater_Route124/map.json b/data/maps/Underwater_Route124/map.json index 46bc141a8..1f1b2a9aa 100644 --- a/data/maps/Underwater_Route124/map.json +++ b/data/maps/Underwater_Route124/map.json @@ -14,14 +14,14 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "down", + "map": "MAP_UNDERWATER_ROUTE126", "offset": 0, - "map": "MAP_UNDERWATER_ROUTE126" + "direction": "down" }, { - "direction": "emerge", + "map": "MAP_ROUTE124", "offset": 0, - "map": "MAP_ROUTE124" + "direction": "emerge" } ], "object_events": [], diff --git a/data/maps/Underwater_Route125/map.json b/data/maps/Underwater_Route125/map.json index c32bb57e8..490d591a3 100644 --- a/data/maps/Underwater_Route125/map.json +++ b/data/maps/Underwater_Route125/map.json @@ -14,9 +14,9 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "emerge", + "map": "MAP_ROUTE125", "offset": 0, - "map": "MAP_ROUTE125" + "direction": "emerge" } ], "object_events": [], @@ -26,14 +26,14 @@ "y": 10, "elevation": 0, "dest_map": "MAP_UNDERWATER_MARINE_CAVE", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 45, "y": 30, "elevation": 0, "dest_map": "MAP_UNDERWATER_MARINE_CAVE", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/Underwater_Route126/map.json b/data/maps/Underwater_Route126/map.json index 993bb7907..d70dc7395 100644 --- a/data/maps/Underwater_Route126/map.json +++ b/data/maps/Underwater_Route126/map.json @@ -14,19 +14,19 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "up", + "map": "MAP_UNDERWATER_ROUTE124", "offset": 0, - "map": "MAP_UNDERWATER_ROUTE124" + "direction": "up" }, { - "direction": "right", + "map": "MAP_UNDERWATER_ROUTE127", "offset": 0, - "map": "MAP_UNDERWATER_ROUTE127" + "direction": "right" }, { - "direction": "emerge", + "map": "MAP_ROUTE126", "offset": 0, - "map": "MAP_ROUTE126" + "direction": "emerge" } ], "object_events": [], @@ -36,7 +36,7 @@ "y": 65, "elevation": 0, "dest_map": "MAP_UNDERWATER_SOOTOPOLIS_CITY", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/Underwater_Route127/map.json b/data/maps/Underwater_Route127/map.json index b96f79c5d..426045993 100644 --- a/data/maps/Underwater_Route127/map.json +++ b/data/maps/Underwater_Route127/map.json @@ -14,19 +14,19 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "emerge", + "map": "MAP_ROUTE127", "offset": 0, - "map": "MAP_ROUTE127" + "direction": "emerge" }, { - "direction": "left", + "map": "MAP_UNDERWATER_ROUTE126", "offset": 0, - "map": "MAP_UNDERWATER_ROUTE126" + "direction": "left" }, { - "direction": "down", + "map": "MAP_UNDERWATER_ROUTE128", "offset": 0, - "map": "MAP_UNDERWATER_ROUTE128" + "direction": "down" } ], "object_events": [], @@ -36,14 +36,14 @@ "y": 5, "elevation": 0, "dest_map": "MAP_UNDERWATER_MARINE_CAVE", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 67, "y": 38, "elevation": 0, "dest_map": "MAP_UNDERWATER_MARINE_CAVE", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/Underwater_Route128/map.json b/data/maps/Underwater_Route128/map.json index f80cf41a6..75d92f681 100644 --- a/data/maps/Underwater_Route128/map.json +++ b/data/maps/Underwater_Route128/map.json @@ -14,14 +14,14 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "up", + "map": "MAP_UNDERWATER_ROUTE127", "offset": 0, - "map": "MAP_UNDERWATER_ROUTE127" + "direction": "up" }, { - "direction": "emerge", + "map": "MAP_ROUTE128", "offset": 0, - "map": "MAP_ROUTE128" + "direction": "emerge" } ], "object_events": [], @@ -31,7 +31,7 @@ "y": 26, "elevation": 3, "dest_map": "MAP_UNDERWATER_SEAFLOOR_CAVERN", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/Underwater_Route129/map.json b/data/maps/Underwater_Route129/map.json index 45775bd6b..674e98aff 100644 --- a/data/maps/Underwater_Route129/map.json +++ b/data/maps/Underwater_Route129/map.json @@ -14,9 +14,9 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "emerge", + "map": "MAP_ROUTE129", "offset": 0, - "map": "MAP_ROUTE129" + "direction": "emerge" } ], "object_events": [], @@ -26,14 +26,14 @@ "y": 3, "elevation": 0, "dest_map": "MAP_UNDERWATER_MARINE_CAVE", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 32, "y": 21, "elevation": 0, "dest_map": "MAP_UNDERWATER_MARINE_CAVE", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/Underwater_Route134/map.json b/data/maps/Underwater_Route134/map.json index 74526bc4d..16599a49e 100644 --- a/data/maps/Underwater_Route134/map.json +++ b/data/maps/Underwater_Route134/map.json @@ -20,7 +20,7 @@ "y": 8, "elevation": 0, "dest_map": "MAP_UNDERWATER_SEALED_CHAMBER", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/Underwater_SeafloorCavern/map.json b/data/maps/Underwater_SeafloorCavern/map.json index d25a3600d..bbc13e31d 100644 --- a/data/maps/Underwater_SeafloorCavern/map.json +++ b/data/maps/Underwater_SeafloorCavern/map.json @@ -73,7 +73,7 @@ "y": 7, "elevation": 0, "dest_map": "MAP_UNDERWATER_ROUTE128", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/Underwater_SealedChamber/map.json b/data/maps/Underwater_SealedChamber/map.json index 5f3b99055..88880fcee 100644 --- a/data/maps/Underwater_SealedChamber/map.json +++ b/data/maps/Underwater_SealedChamber/map.json @@ -20,7 +20,7 @@ "y": 1, "elevation": 0, "dest_map": "MAP_UNDERWATER_ROUTE134", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/Underwater_SootopolisCity/map.json b/data/maps/Underwater_SootopolisCity/map.json index 0d1363ff6..86a337399 100644 --- a/data/maps/Underwater_SootopolisCity/map.json +++ b/data/maps/Underwater_SootopolisCity/map.json @@ -20,14 +20,14 @@ "y": 8, "elevation": 0, "dest_map": "MAP_UNDERWATER_ROUTE126", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 10, "y": 8, "elevation": 0, "dest_map": "MAP_UNDERWATER_ROUTE126", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/UnionRoom/map.json b/data/maps/UnionRoom/map.json index 3d19cd55f..8c663eb42 100644 --- a/data/maps/UnionRoom/map.json +++ b/data/maps/UnionRoom/map.json @@ -137,15 +137,15 @@ "x": 7, "y": 11, "elevation": 3, - "dest_map": "MAP_NONE", - "dest_warp_id": 127 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_DYNAMIC" }, { "x": 8, "y": 11, "elevation": 3, - "dest_map": "MAP_NONE", - "dest_warp_id": 127 + "dest_map": "MAP_DYNAMIC", + "dest_warp_id": "WARP_ID_DYNAMIC" } ], "coord_events": [], diff --git a/data/maps/VerdanturfTown/map.json b/data/maps/VerdanturfTown/map.json index 94d140c05..ae40730c0 100644 --- a/data/maps/VerdanturfTown/map.json +++ b/data/maps/VerdanturfTown/map.json @@ -14,14 +14,14 @@ "battle_scene": "MAP_BATTLE_SCENE_NORMAL", "connections": [ { - "direction": "up", + "map": "MAP_ROUTE116", "offset": -80, - "map": "MAP_ROUTE116" + "direction": "up" }, { - "direction": "right", + "map": "MAP_ROUTE117", "offset": 0, - "map": "MAP_ROUTE117" + "direction": "right" } ], "object_events": [ @@ -84,49 +84,49 @@ "y": 7, "elevation": 0, "dest_map": "MAP_VERDANTURF_TOWN_BATTLE_TENT_LOBBY", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 12, "y": 3, "elevation": 0, "dest_map": "MAP_VERDANTURF_TOWN_MART", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 16, "y": 3, "elevation": 0, "dest_map": "MAP_VERDANTURF_TOWN_POKEMON_CENTER_1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 10, "y": 14, "elevation": 0, "dest_map": "MAP_VERDANTURF_TOWN_WANDAS_HOUSE", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 8, "y": 1, "elevation": 0, "dest_map": "MAP_RUSTURF_TUNNEL", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 1, "y": 14, "elevation": 0, "dest_map": "MAP_VERDANTURF_TOWN_FRIENDSHIP_RATERS_HOUSE", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 17, "y": 15, "elevation": 0, "dest_map": "MAP_VERDANTURF_TOWN_HOUSE", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/VerdanturfTown_BattleTentLobby/map.json b/data/maps/VerdanturfTown_BattleTentLobby/map.json index d4a8ccfa5..ddb4b9dd3 100644 --- a/data/maps/VerdanturfTown_BattleTentLobby/map.json +++ b/data/maps/VerdanturfTown_BattleTentLobby/map.json @@ -99,14 +99,14 @@ "y": 9, "elevation": 0, "dest_map": "MAP_VERDANTURF_TOWN", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 7, "y": 9, "elevation": 0, "dest_map": "MAP_VERDANTURF_TOWN", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/VerdanturfTown_FriendshipRatersHouse/map.json b/data/maps/VerdanturfTown_FriendshipRatersHouse/map.json index 7fa310426..0a92eb610 100644 --- a/data/maps/VerdanturfTown_FriendshipRatersHouse/map.json +++ b/data/maps/VerdanturfTown_FriendshipRatersHouse/map.json @@ -47,14 +47,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_VERDANTURF_TOWN", - "dest_warp_id": 5 + "dest_warp_id": "5" }, { "x": 4, "y": 7, "elevation": 0, "dest_map": "MAP_VERDANTURF_TOWN", - "dest_warp_id": 5 + "dest_warp_id": "5" } ], "coord_events": [], diff --git a/data/maps/VerdanturfTown_House/map.json b/data/maps/VerdanturfTown_House/map.json index d552e914a..b32414626 100644 --- a/data/maps/VerdanturfTown_House/map.json +++ b/data/maps/VerdanturfTown_House/map.json @@ -47,14 +47,14 @@ "y": 8, "elevation": 0, "dest_map": "MAP_VERDANTURF_TOWN", - "dest_warp_id": 6 + "dest_warp_id": "6" }, { "x": 4, "y": 8, "elevation": 0, "dest_map": "MAP_VERDANTURF_TOWN", - "dest_warp_id": 6 + "dest_warp_id": "6" } ], "coord_events": [], diff --git a/data/maps/VerdanturfTown_Mart/map.json b/data/maps/VerdanturfTown_Mart/map.json index b8183646c..096d63552 100644 --- a/data/maps/VerdanturfTown_Mart/map.json +++ b/data/maps/VerdanturfTown_Mart/map.json @@ -73,14 +73,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_VERDANTURF_TOWN", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 4, "y": 7, "elevation": 0, "dest_map": "MAP_VERDANTURF_TOWN", - "dest_warp_id": 1 + "dest_warp_id": "1" } ], "coord_events": [], diff --git a/data/maps/VerdanturfTown_PokemonCenter_1F/map.json b/data/maps/VerdanturfTown_PokemonCenter_1F/map.json index 8e3fc3e28..20a144afb 100644 --- a/data/maps/VerdanturfTown_PokemonCenter_1F/map.json +++ b/data/maps/VerdanturfTown_PokemonCenter_1F/map.json @@ -73,21 +73,21 @@ "y": 8, "elevation": 3, "dest_map": "MAP_VERDANTURF_TOWN", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 6, "y": 8, "elevation": 3, "dest_map": "MAP_VERDANTURF_TOWN", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 1, "y": 6, "elevation": 4, "dest_map": "MAP_VERDANTURF_TOWN_POKEMON_CENTER_2F", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/VerdanturfTown_PokemonCenter_2F/map.json b/data/maps/VerdanturfTown_PokemonCenter_2F/map.json index 2edb6602d..9785cdbe0 100644 --- a/data/maps/VerdanturfTown_PokemonCenter_2F/map.json +++ b/data/maps/VerdanturfTown_PokemonCenter_2F/map.json @@ -73,21 +73,21 @@ "y": 6, "elevation": 4, "dest_map": "MAP_VERDANTURF_TOWN_POKEMON_CENTER_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 5, "y": 1, "elevation": 3, "dest_map": "MAP_UNION_ROOM", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 9, "y": 1, "elevation": 3, "dest_map": "MAP_TRADE_CENTER", - "dest_warp_id": 0 + "dest_warp_id": "0" } ], "coord_events": [], diff --git a/data/maps/VerdanturfTown_WandasHouse/map.json b/data/maps/VerdanturfTown_WandasHouse/map.json index 43a5b9c44..309ae8e38 100644 --- a/data/maps/VerdanturfTown_WandasHouse/map.json +++ b/data/maps/VerdanturfTown_WandasHouse/map.json @@ -86,14 +86,14 @@ "y": 7, "elevation": 0, "dest_map": "MAP_VERDANTURF_TOWN", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 8, "y": 7, "elevation": 0, "dest_map": "MAP_VERDANTURF_TOWN", - "dest_warp_id": 3 + "dest_warp_id": "3" } ], "coord_events": [], diff --git a/data/maps/VictoryRoad_1F/map.json b/data/maps/VictoryRoad_1F/map.json index 5f3271c89..44a2bca66 100644 --- a/data/maps/VictoryRoad_1F/map.json +++ b/data/maps/VictoryRoad_1F/map.json @@ -138,35 +138,35 @@ "y": 40, "elevation": 3, "dest_map": "MAP_EVER_GRANDE_CITY", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 39, "y": 5, "elevation": 3, "dest_map": "MAP_EVER_GRANDE_CITY", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 21, "y": 32, "elevation": 3, "dest_map": "MAP_VICTORY_ROAD_B1F", - "dest_warp_id": 5 + "dest_warp_id": "5" }, { "x": 42, "y": 38, "elevation": 4, "dest_map": "MAP_VICTORY_ROAD_B1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 9, "y": 14, "elevation": 4, "dest_map": "MAP_VICTORY_ROAD_B1F", - "dest_warp_id": 4 + "dest_warp_id": "4" } ], "coord_events": [ diff --git a/data/maps/VictoryRoad_B1F/map.json b/data/maps/VictoryRoad_B1F/map.json index 68b013ef4..6f339a1c2 100644 --- a/data/maps/VictoryRoad_B1F/map.json +++ b/data/maps/VictoryRoad_B1F/map.json @@ -294,49 +294,49 @@ "y": 25, "elevation": 3, "dest_map": "MAP_VICTORY_ROAD_B2F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 17, "y": 16, "elevation": 3, "dest_map": "MAP_VICTORY_ROAD_B2F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 42, "y": 25, "elevation": 3, "dest_map": "MAP_VICTORY_ROAD_1F", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 42, "y": 2, "elevation": 4, "dest_map": "MAP_VICTORY_ROAD_B2F", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 8, "y": 3, "elevation": 3, "dest_map": "MAP_VICTORY_ROAD_1F", - "dest_warp_id": 4 + "dest_warp_id": "4" }, { "x": 20, "y": 21, "elevation": 3, "dest_map": "MAP_VICTORY_ROAD_1F", - "dest_warp_id": 2 + "dest_warp_id": "2" }, { "x": 5, "y": 26, "elevation": 3, "dest_map": "MAP_VICTORY_ROAD_B2F", - "dest_warp_id": 3 + "dest_warp_id": "3" } ], "coord_events": [], diff --git a/data/maps/VictoryRoad_B2F/map.json b/data/maps/VictoryRoad_B2F/map.json index 6ee56389f..d38bda2a7 100644 --- a/data/maps/VictoryRoad_B2F/map.json +++ b/data/maps/VictoryRoad_B2F/map.json @@ -112,28 +112,28 @@ "y": 25, "elevation": 3, "dest_map": "MAP_VICTORY_ROAD_B1F", - "dest_warp_id": 0 + "dest_warp_id": "0" }, { "x": 43, "y": 2, "elevation": 3, "dest_map": "MAP_VICTORY_ROAD_B1F", - "dest_warp_id": 3 + "dest_warp_id": "3" }, { "x": 19, "y": 12, "elevation": 3, "dest_map": "MAP_VICTORY_ROAD_B1F", - "dest_warp_id": 1 + "dest_warp_id": "1" }, { "x": 5, "y": 26, "elevation": 3, "dest_map": "MAP_VICTORY_ROAD_B1F", - "dest_warp_id": 6 + "dest_warp_id": "6" } ], "coord_events": [], diff --git a/data/sound_data.s b/data/sound_data.s index 1bc299580..39bef4b33 100644 --- a/data/sound_data.s +++ b/data/sound_data.s @@ -2,7 +2,7 @@ .include "asm/macros/m4a.inc" .include "asm/macros/music_voice.inc" - .include "include/constants/pokemon_config.h" + .include "include/config/pokemon.h" .include "sound/voice_groups.inc" .include "sound/keysplit_tables.inc" .include "sound/programmable_wave_data.inc" diff --git a/data/tilesets.s b/data/tilesets.s deleted file mode 100644 index 443686234..000000000 --- a/data/tilesets.s +++ /dev/null @@ -1,8 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .section .rodata - - .include "data/tilesets/graphics.inc" - .include "data/tilesets/metatiles.inc" - .include "data/tilesets/headers.inc" diff --git a/data/tilesets/graphics.inc b/data/tilesets/graphics.inc deleted file mode 100644 index c85bd249e..000000000 --- a/data/tilesets/graphics.inc +++ /dev/null @@ -1,1731 +0,0 @@ - .align 2 -gTilesetTiles_Petalburg:: - .incbin "data/tilesets/secondary/petalburg/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_Petalburg:: - .incbin "data/tilesets/secondary/petalburg/palettes/00.gbapal" - .incbin "data/tilesets/secondary/petalburg/palettes/01.gbapal" - .incbin "data/tilesets/secondary/petalburg/palettes/02.gbapal" - .incbin "data/tilesets/secondary/petalburg/palettes/03.gbapal" - .incbin "data/tilesets/secondary/petalburg/palettes/04.gbapal" - .incbin "data/tilesets/secondary/petalburg/palettes/05.gbapal" - .incbin "data/tilesets/secondary/petalburg/palettes/06.gbapal" - .incbin "data/tilesets/secondary/petalburg/palettes/07.gbapal" - .incbin "data/tilesets/secondary/petalburg/palettes/08.gbapal" - .incbin "data/tilesets/secondary/petalburg/palettes/09.gbapal" - .incbin "data/tilesets/secondary/petalburg/palettes/10.gbapal" - .incbin "data/tilesets/secondary/petalburg/palettes/11.gbapal" - .incbin "data/tilesets/secondary/petalburg/palettes/12.gbapal" - .incbin "data/tilesets/secondary/petalburg/palettes/13.gbapal" - .incbin "data/tilesets/secondary/petalburg/palettes/14.gbapal" - .incbin "data/tilesets/secondary/petalburg/palettes/15.gbapal" - - .align 2 -gTilesetTiles_Rustboro:: - .incbin "data/tilesets/secondary/rustboro/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_Rustboro:: - .incbin "data/tilesets/secondary/rustboro/palettes/00.gbapal" - .incbin "data/tilesets/secondary/rustboro/palettes/01.gbapal" - .incbin "data/tilesets/secondary/rustboro/palettes/02.gbapal" - .incbin "data/tilesets/secondary/rustboro/palettes/03.gbapal" - .incbin "data/tilesets/secondary/rustboro/palettes/04.gbapal" - .incbin "data/tilesets/secondary/rustboro/palettes/05.gbapal" - .incbin "data/tilesets/secondary/rustboro/palettes/06.gbapal" - .incbin "data/tilesets/secondary/rustboro/palettes/07.gbapal" - .incbin "data/tilesets/secondary/rustboro/palettes/08.gbapal" - .incbin "data/tilesets/secondary/rustboro/palettes/09.gbapal" - .incbin "data/tilesets/secondary/rustboro/palettes/10.gbapal" - .incbin "data/tilesets/secondary/rustboro/palettes/11.gbapal" - .incbin "data/tilesets/secondary/rustboro/palettes/12.gbapal" - .incbin "data/tilesets/secondary/rustboro/palettes/13.gbapal" - .incbin "data/tilesets/secondary/rustboro/palettes/14.gbapal" - .incbin "data/tilesets/secondary/rustboro/palettes/15.gbapal" - - .align 2 -gTilesetTiles_Dewford:: - .incbin "data/tilesets/secondary/dewford/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_Dewford:: - .incbin "data/tilesets/secondary/dewford/palettes/00.gbapal" - .incbin "data/tilesets/secondary/dewford/palettes/01.gbapal" - .incbin "data/tilesets/secondary/dewford/palettes/02.gbapal" - .incbin "data/tilesets/secondary/dewford/palettes/03.gbapal" - .incbin "data/tilesets/secondary/dewford/palettes/04.gbapal" - .incbin "data/tilesets/secondary/dewford/palettes/05.gbapal" - .incbin "data/tilesets/secondary/dewford/palettes/06.gbapal" - .incbin "data/tilesets/secondary/dewford/palettes/07.gbapal" - .incbin "data/tilesets/secondary/dewford/palettes/08.gbapal" - .incbin "data/tilesets/secondary/dewford/palettes/09.gbapal" - .incbin "data/tilesets/secondary/dewford/palettes/10.gbapal" - .incbin "data/tilesets/secondary/dewford/palettes/11.gbapal" - .incbin "data/tilesets/secondary/dewford/palettes/12.gbapal" - .incbin "data/tilesets/secondary/dewford/palettes/13.gbapal" - .incbin "data/tilesets/secondary/dewford/palettes/14.gbapal" - .incbin "data/tilesets/secondary/dewford/palettes/15.gbapal" - - .align 2 -gTilesetTiles_Slateport:: - .incbin "data/tilesets/secondary/slateport/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_Slateport:: - .incbin "data/tilesets/secondary/slateport/palettes/00.gbapal" - .incbin "data/tilesets/secondary/slateport/palettes/01.gbapal" - .incbin "data/tilesets/secondary/slateport/palettes/02.gbapal" - .incbin "data/tilesets/secondary/slateport/palettes/03.gbapal" - .incbin "data/tilesets/secondary/slateport/palettes/04.gbapal" - .incbin "data/tilesets/secondary/slateport/palettes/05.gbapal" - .incbin "data/tilesets/secondary/slateport/palettes/06.gbapal" - .incbin "data/tilesets/secondary/slateport/palettes/07.gbapal" - .incbin "data/tilesets/secondary/slateport/palettes/08.gbapal" - .incbin "data/tilesets/secondary/slateport/palettes/09.gbapal" - .incbin "data/tilesets/secondary/slateport/palettes/10.gbapal" - .incbin "data/tilesets/secondary/slateport/palettes/11.gbapal" - .incbin "data/tilesets/secondary/slateport/palettes/12.gbapal" - .incbin "data/tilesets/secondary/slateport/palettes/13.gbapal" - .incbin "data/tilesets/secondary/slateport/palettes/14.gbapal" - .incbin "data/tilesets/secondary/slateport/palettes/15.gbapal" - - .align 2 -gTilesetTiles_Mauville:: - .incbin "data/tilesets/secondary/mauville/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_Mauville:: - .incbin "data/tilesets/secondary/mauville/palettes/00.gbapal" - .incbin "data/tilesets/secondary/mauville/palettes/01.gbapal" - .incbin "data/tilesets/secondary/mauville/palettes/02.gbapal" - .incbin "data/tilesets/secondary/mauville/palettes/03.gbapal" - .incbin "data/tilesets/secondary/mauville/palettes/04.gbapal" - .incbin "data/tilesets/secondary/mauville/palettes/05.gbapal" - .incbin "data/tilesets/secondary/mauville/palettes/06.gbapal" - .incbin "data/tilesets/secondary/mauville/palettes/07.gbapal" - .incbin "data/tilesets/secondary/mauville/palettes/08.gbapal" - .incbin "data/tilesets/secondary/mauville/palettes/09.gbapal" - .incbin "data/tilesets/secondary/mauville/palettes/10.gbapal" - .incbin "data/tilesets/secondary/mauville/palettes/11.gbapal" - .incbin "data/tilesets/secondary/mauville/palettes/12.gbapal" - .incbin "data/tilesets/secondary/mauville/palettes/13.gbapal" - .incbin "data/tilesets/secondary/mauville/palettes/14.gbapal" - .incbin "data/tilesets/secondary/mauville/palettes/15.gbapal" - - .align 2 -gTilesetTiles_Lavaridge:: - .incbin "data/tilesets/secondary/lavaridge/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_Lavaridge:: - .incbin "data/tilesets/secondary/lavaridge/palettes/00.gbapal" - .incbin "data/tilesets/secondary/lavaridge/palettes/01.gbapal" - .incbin "data/tilesets/secondary/lavaridge/palettes/02.gbapal" - .incbin "data/tilesets/secondary/lavaridge/palettes/03.gbapal" - .incbin "data/tilesets/secondary/lavaridge/palettes/04.gbapal" - .incbin "data/tilesets/secondary/lavaridge/palettes/05.gbapal" - .incbin "data/tilesets/secondary/lavaridge/palettes/06.gbapal" - .incbin "data/tilesets/secondary/lavaridge/palettes/07.gbapal" - .incbin "data/tilesets/secondary/lavaridge/palettes/08.gbapal" - .incbin "data/tilesets/secondary/lavaridge/palettes/09.gbapal" - .incbin "data/tilesets/secondary/lavaridge/palettes/10.gbapal" - .incbin "data/tilesets/secondary/lavaridge/palettes/11.gbapal" - .incbin "data/tilesets/secondary/lavaridge/palettes/12.gbapal" - .incbin "data/tilesets/secondary/lavaridge/palettes/13.gbapal" - .incbin "data/tilesets/secondary/lavaridge/palettes/14.gbapal" - .incbin "data/tilesets/secondary/lavaridge/palettes/15.gbapal" - - .align 2 -gTilesetTiles_Fallarbor:: - .incbin "data/tilesets/secondary/fallarbor/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_Fallarbor:: - .incbin "data/tilesets/secondary/fallarbor/palettes/00.gbapal" - .incbin "data/tilesets/secondary/fallarbor/palettes/01.gbapal" - .incbin "data/tilesets/secondary/fallarbor/palettes/02.gbapal" - .incbin "data/tilesets/secondary/fallarbor/palettes/03.gbapal" - .incbin "data/tilesets/secondary/fallarbor/palettes/04.gbapal" - .incbin "data/tilesets/secondary/fallarbor/palettes/05.gbapal" - .incbin "data/tilesets/secondary/fallarbor/palettes/06.gbapal" - .incbin "data/tilesets/secondary/fallarbor/palettes/07.gbapal" - .incbin "data/tilesets/secondary/fallarbor/palettes/08.gbapal" - .incbin "data/tilesets/secondary/fallarbor/palettes/09.gbapal" - .incbin "data/tilesets/secondary/fallarbor/palettes/10.gbapal" - .incbin "data/tilesets/secondary/fallarbor/palettes/11.gbapal" - .incbin "data/tilesets/secondary/fallarbor/palettes/12.gbapal" - .incbin "data/tilesets/secondary/fallarbor/palettes/13.gbapal" - .incbin "data/tilesets/secondary/fallarbor/palettes/14.gbapal" - .incbin "data/tilesets/secondary/fallarbor/palettes/15.gbapal" - - .align 2 -gTilesetTiles_Fortree:: - .incbin "data/tilesets/secondary/fortree/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_Fortree:: - .incbin "data/tilesets/secondary/fortree/palettes/00.gbapal" - .incbin "data/tilesets/secondary/fortree/palettes/01.gbapal" - .incbin "data/tilesets/secondary/fortree/palettes/02.gbapal" - .incbin "data/tilesets/secondary/fortree/palettes/03.gbapal" - .incbin "data/tilesets/secondary/fortree/palettes/04.gbapal" - .incbin "data/tilesets/secondary/fortree/palettes/05.gbapal" - .incbin "data/tilesets/secondary/fortree/palettes/06.gbapal" - .incbin "data/tilesets/secondary/fortree/palettes/07.gbapal" - .incbin "data/tilesets/secondary/fortree/palettes/08.gbapal" - .incbin "data/tilesets/secondary/fortree/palettes/09.gbapal" - .incbin "data/tilesets/secondary/fortree/palettes/10.gbapal" - .incbin "data/tilesets/secondary/fortree/palettes/11.gbapal" - .incbin "data/tilesets/secondary/fortree/palettes/12.gbapal" - .incbin "data/tilesets/secondary/fortree/palettes/13.gbapal" - .incbin "data/tilesets/secondary/fortree/palettes/14.gbapal" - .incbin "data/tilesets/secondary/fortree/palettes/15.gbapal" - - .align 2 -gTilesetTiles_Lilycove:: - .incbin "data/tilesets/secondary/lilycove/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_Lilycove:: - .incbin "data/tilesets/secondary/lilycove/palettes/00.gbapal" - .incbin "data/tilesets/secondary/lilycove/palettes/01.gbapal" - .incbin "data/tilesets/secondary/lilycove/palettes/02.gbapal" - .incbin "data/tilesets/secondary/lilycove/palettes/03.gbapal" - .incbin "data/tilesets/secondary/lilycove/palettes/04.gbapal" - .incbin "data/tilesets/secondary/lilycove/palettes/05.gbapal" - .incbin "data/tilesets/secondary/lilycove/palettes/06.gbapal" - .incbin "data/tilesets/secondary/lilycove/palettes/07.gbapal" - .incbin "data/tilesets/secondary/lilycove/palettes/08.gbapal" - .incbin "data/tilesets/secondary/lilycove/palettes/09.gbapal" - .incbin "data/tilesets/secondary/lilycove/palettes/10.gbapal" - .incbin "data/tilesets/secondary/lilycove/palettes/11.gbapal" - .incbin "data/tilesets/secondary/lilycove/palettes/12.gbapal" - .incbin "data/tilesets/secondary/lilycove/palettes/13.gbapal" - .incbin "data/tilesets/secondary/lilycove/palettes/14.gbapal" - .incbin "data/tilesets/secondary/lilycove/palettes/15.gbapal" - - .align 2 -gTilesetTiles_Mossdeep:: - .incbin "data/tilesets/secondary/mossdeep/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_Mossdeep:: - .incbin "data/tilesets/secondary/mossdeep/palettes/00.gbapal" - .incbin "data/tilesets/secondary/mossdeep/palettes/01.gbapal" - .incbin "data/tilesets/secondary/mossdeep/palettes/02.gbapal" - .incbin "data/tilesets/secondary/mossdeep/palettes/03.gbapal" - .incbin "data/tilesets/secondary/mossdeep/palettes/04.gbapal" - .incbin "data/tilesets/secondary/mossdeep/palettes/05.gbapal" - .incbin "data/tilesets/secondary/mossdeep/palettes/06.gbapal" - .incbin "data/tilesets/secondary/mossdeep/palettes/07.gbapal" - .incbin "data/tilesets/secondary/mossdeep/palettes/08.gbapal" - .incbin "data/tilesets/secondary/mossdeep/palettes/09.gbapal" - .incbin "data/tilesets/secondary/mossdeep/palettes/10.gbapal" - .incbin "data/tilesets/secondary/mossdeep/palettes/11.gbapal" - .incbin "data/tilesets/secondary/mossdeep/palettes/12.gbapal" - .incbin "data/tilesets/secondary/mossdeep/palettes/13.gbapal" - .incbin "data/tilesets/secondary/mossdeep/palettes/14.gbapal" - .incbin "data/tilesets/secondary/mossdeep/palettes/15.gbapal" - - .align 2 -gTilesetTiles_EverGrande:: - .incbin "data/tilesets/secondary/ever_grande/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_EverGrande:: - .incbin "data/tilesets/secondary/ever_grande/palettes/00.gbapal" - .incbin "data/tilesets/secondary/ever_grande/palettes/01.gbapal" - .incbin "data/tilesets/secondary/ever_grande/palettes/02.gbapal" - .incbin "data/tilesets/secondary/ever_grande/palettes/03.gbapal" - .incbin "data/tilesets/secondary/ever_grande/palettes/04.gbapal" - .incbin "data/tilesets/secondary/ever_grande/palettes/05.gbapal" - .incbin "data/tilesets/secondary/ever_grande/palettes/06.gbapal" - .incbin "data/tilesets/secondary/ever_grande/palettes/07.gbapal" - .incbin "data/tilesets/secondary/ever_grande/palettes/08.gbapal" - .incbin "data/tilesets/secondary/ever_grande/palettes/09.gbapal" - .incbin "data/tilesets/secondary/ever_grande/palettes/10.gbapal" - .incbin "data/tilesets/secondary/ever_grande/palettes/11.gbapal" - .incbin "data/tilesets/secondary/ever_grande/palettes/12.gbapal" - .incbin "data/tilesets/secondary/ever_grande/palettes/13.gbapal" - .incbin "data/tilesets/secondary/ever_grande/palettes/14.gbapal" - .incbin "data/tilesets/secondary/ever_grande/palettes/15.gbapal" - - .align 2 -gTilesetTiles_Pacifidlog:: - .incbin "data/tilesets/secondary/pacifidlog/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_Pacifidlog:: - .incbin "data/tilesets/secondary/pacifidlog/palettes/00.gbapal" - .incbin "data/tilesets/secondary/pacifidlog/palettes/01.gbapal" - .incbin "data/tilesets/secondary/pacifidlog/palettes/02.gbapal" - .incbin "data/tilesets/secondary/pacifidlog/palettes/03.gbapal" - .incbin "data/tilesets/secondary/pacifidlog/palettes/04.gbapal" - .incbin "data/tilesets/secondary/pacifidlog/palettes/05.gbapal" - .incbin "data/tilesets/secondary/pacifidlog/palettes/06.gbapal" - .incbin "data/tilesets/secondary/pacifidlog/palettes/07.gbapal" - .incbin "data/tilesets/secondary/pacifidlog/palettes/08.gbapal" - .incbin "data/tilesets/secondary/pacifidlog/palettes/09.gbapal" - .incbin "data/tilesets/secondary/pacifidlog/palettes/10.gbapal" - .incbin "data/tilesets/secondary/pacifidlog/palettes/11.gbapal" - .incbin "data/tilesets/secondary/pacifidlog/palettes/12.gbapal" - .incbin "data/tilesets/secondary/pacifidlog/palettes/13.gbapal" - .incbin "data/tilesets/secondary/pacifidlog/palettes/14.gbapal" - .incbin "data/tilesets/secondary/pacifidlog/palettes/15.gbapal" - - .align 2 -gTilesetTiles_Sootopolis:: - .incbin "data/tilesets/secondary/sootopolis/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_Sootopolis:: - .incbin "data/tilesets/secondary/sootopolis/palettes/00.gbapal" - .incbin "data/tilesets/secondary/sootopolis/palettes/01.gbapal" - .incbin "data/tilesets/secondary/sootopolis/palettes/02.gbapal" - .incbin "data/tilesets/secondary/sootopolis/palettes/03.gbapal" - .incbin "data/tilesets/secondary/sootopolis/palettes/04.gbapal" - .incbin "data/tilesets/secondary/sootopolis/palettes/05.gbapal" - .incbin "data/tilesets/secondary/sootopolis/palettes/06.gbapal" - .incbin "data/tilesets/secondary/sootopolis/palettes/07.gbapal" - .incbin "data/tilesets/secondary/sootopolis/palettes/08.gbapal" - .incbin "data/tilesets/secondary/sootopolis/palettes/09.gbapal" - .incbin "data/tilesets/secondary/sootopolis/palettes/10.gbapal" - .incbin "data/tilesets/secondary/sootopolis/palettes/11.gbapal" - .incbin "data/tilesets/secondary/sootopolis/palettes/12.gbapal" - .incbin "data/tilesets/secondary/sootopolis/palettes/13.gbapal" - .incbin "data/tilesets/secondary/sootopolis/palettes/14.gbapal" - .incbin "data/tilesets/secondary/sootopolis/palettes/15.gbapal" - - .align 2 -gTilesetTiles_BattleFrontierOutsideWest:: - .incbin "data/tilesets/secondary/battle_frontier_outside_west/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_BattleFrontierOutsideWest:: - .incbin "data/tilesets/secondary/battle_frontier_outside_west/palettes/00.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_outside_west/palettes/01.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_outside_west/palettes/02.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_outside_west/palettes/03.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_outside_west/palettes/04.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_outside_west/palettes/05.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_outside_west/palettes/06.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_outside_west/palettes/07.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_outside_west/palettes/08.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_outside_west/palettes/09.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_outside_west/palettes/10.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_outside_west/palettes/11.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_outside_west/palettes/12.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_outside_west/palettes/13.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_outside_west/palettes/14.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_outside_west/palettes/15.gbapal" - - .align 2 -gTilesetTiles_BattleFrontierOutsideEast:: - .incbin "data/tilesets/secondary/battle_frontier_outside_east/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_BattleFrontierOutsideEast:: - .incbin "data/tilesets/secondary/battle_frontier_outside_east/palettes/00.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_outside_east/palettes/01.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_outside_east/palettes/02.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_outside_east/palettes/03.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_outside_east/palettes/04.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_outside_east/palettes/05.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_outside_east/palettes/06.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_outside_east/palettes/07.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_outside_east/palettes/08.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_outside_east/palettes/09.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_outside_east/palettes/10.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_outside_east/palettes/11.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_outside_east/palettes/12.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_outside_east/palettes/13.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_outside_east/palettes/14.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_outside_east/palettes/15.gbapal" - - .align 2 -gTilesetTiles_InsideBuilding:: - .incbin "data/tilesets/primary/building/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_InsideBuilding:: - .incbin "data/tilesets/primary/building/palettes/00.gbapal" - .incbin "data/tilesets/primary/building/palettes/01.gbapal" - .incbin "data/tilesets/primary/building/palettes/02.gbapal" - .incbin "data/tilesets/primary/building/palettes/03.gbapal" - .incbin "data/tilesets/primary/building/palettes/04.gbapal" - .incbin "data/tilesets/primary/building/palettes/05.gbapal" - .incbin "data/tilesets/primary/building/palettes/06.gbapal" - .incbin "data/tilesets/primary/building/palettes/07.gbapal" - .incbin "data/tilesets/primary/building/palettes/08.gbapal" - .incbin "data/tilesets/primary/building/palettes/09.gbapal" - .incbin "data/tilesets/primary/building/palettes/10.gbapal" - .incbin "data/tilesets/primary/building/palettes/11.gbapal" - .incbin "data/tilesets/primary/building/palettes/12.gbapal" - .incbin "data/tilesets/primary/building/palettes/13.gbapal" - .incbin "data/tilesets/primary/building/palettes/14.gbapal" - .incbin "data/tilesets/primary/building/palettes/15.gbapal" - - .align 2 -gTilesetTiles_Shop:: - .incbin "data/tilesets/secondary/shop/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_Shop:: - .incbin "data/tilesets/secondary/shop/palettes/00.gbapal" - .incbin "data/tilesets/secondary/shop/palettes/01.gbapal" - .incbin "data/tilesets/secondary/shop/palettes/02.gbapal" - .incbin "data/tilesets/secondary/shop/palettes/03.gbapal" - .incbin "data/tilesets/secondary/shop/palettes/04.gbapal" - .incbin "data/tilesets/secondary/shop/palettes/05.gbapal" - .incbin "data/tilesets/secondary/shop/palettes/06.gbapal" - .incbin "data/tilesets/secondary/shop/palettes/07.gbapal" - .incbin "data/tilesets/secondary/shop/palettes/08.gbapal" - .incbin "data/tilesets/secondary/shop/palettes/09.gbapal" - .incbin "data/tilesets/secondary/shop/palettes/10.gbapal" - .incbin "data/tilesets/secondary/shop/palettes/11.gbapal" - .incbin "data/tilesets/secondary/shop/palettes/12.gbapal" - .incbin "data/tilesets/secondary/shop/palettes/13.gbapal" - .incbin "data/tilesets/secondary/shop/palettes/14.gbapal" - .incbin "data/tilesets/secondary/shop/palettes/15.gbapal" - - .align 2 -gTilesetTiles_PokemonCenter:: - .incbin "data/tilesets/secondary/pokemon_center/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_PokemonCenter:: - .incbin "data/tilesets/secondary/pokemon_center/palettes/00.gbapal" - .incbin "data/tilesets/secondary/pokemon_center/palettes/01.gbapal" - .incbin "data/tilesets/secondary/pokemon_center/palettes/02.gbapal" - .incbin "data/tilesets/secondary/pokemon_center/palettes/03.gbapal" - .incbin "data/tilesets/secondary/pokemon_center/palettes/04.gbapal" - .incbin "data/tilesets/secondary/pokemon_center/palettes/05.gbapal" - .incbin "data/tilesets/secondary/pokemon_center/palettes/06.gbapal" - .incbin "data/tilesets/secondary/pokemon_center/palettes/07.gbapal" - .incbin "data/tilesets/secondary/pokemon_center/palettes/08.gbapal" - .incbin "data/tilesets/secondary/pokemon_center/palettes/09.gbapal" - .incbin "data/tilesets/secondary/pokemon_center/palettes/10.gbapal" - .incbin "data/tilesets/secondary/pokemon_center/palettes/11.gbapal" - .incbin "data/tilesets/secondary/pokemon_center/palettes/12.gbapal" - .incbin "data/tilesets/secondary/pokemon_center/palettes/13.gbapal" - .incbin "data/tilesets/secondary/pokemon_center/palettes/14.gbapal" - .incbin "data/tilesets/secondary/pokemon_center/palettes/15.gbapal" - - .align 2 -gTilesetTiles_Cave:: - .incbin "data/tilesets/secondary/cave/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_Cave:: - .incbin "data/tilesets/secondary/cave/palettes/00.gbapal" - .incbin "data/tilesets/secondary/cave/palettes/01.gbapal" - .incbin "data/tilesets/secondary/cave/palettes/02.gbapal" - .incbin "data/tilesets/secondary/cave/palettes/03.gbapal" - .incbin "data/tilesets/secondary/cave/palettes/04.gbapal" - .incbin "data/tilesets/secondary/cave/palettes/05.gbapal" - .incbin "data/tilesets/secondary/cave/palettes/06.gbapal" - .incbin "data/tilesets/secondary/cave/palettes/07.gbapal" - .incbin "data/tilesets/secondary/cave/palettes/08.gbapal" - .incbin "data/tilesets/secondary/cave/palettes/09.gbapal" - .incbin "data/tilesets/secondary/cave/palettes/10.gbapal" - .incbin "data/tilesets/secondary/cave/palettes/11.gbapal" - .incbin "data/tilesets/secondary/cave/palettes/12.gbapal" - .incbin "data/tilesets/secondary/cave/palettes/13.gbapal" - .incbin "data/tilesets/secondary/cave/palettes/14.gbapal" - .incbin "data/tilesets/secondary/cave/palettes/15.gbapal" - - .align 2 -gTilesetTiles_PokemonSchool:: - .incbin "data/tilesets/secondary/pokemon_school/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_PokemonSchool:: - .incbin "data/tilesets/secondary/pokemon_school/palettes/00.gbapal" - .incbin "data/tilesets/secondary/pokemon_school/palettes/01.gbapal" - .incbin "data/tilesets/secondary/pokemon_school/palettes/02.gbapal" - .incbin "data/tilesets/secondary/pokemon_school/palettes/03.gbapal" - .incbin "data/tilesets/secondary/pokemon_school/palettes/04.gbapal" - .incbin "data/tilesets/secondary/pokemon_school/palettes/05.gbapal" - .incbin "data/tilesets/secondary/pokemon_school/palettes/06.gbapal" - .incbin "data/tilesets/secondary/pokemon_school/palettes/07.gbapal" - .incbin "data/tilesets/secondary/pokemon_school/palettes/08.gbapal" - .incbin "data/tilesets/secondary/pokemon_school/palettes/09.gbapal" - .incbin "data/tilesets/secondary/pokemon_school/palettes/10.gbapal" - .incbin "data/tilesets/secondary/pokemon_school/palettes/11.gbapal" - .incbin "data/tilesets/secondary/pokemon_school/palettes/12.gbapal" - .incbin "data/tilesets/secondary/pokemon_school/palettes/13.gbapal" - .incbin "data/tilesets/secondary/pokemon_school/palettes/14.gbapal" - .incbin "data/tilesets/secondary/pokemon_school/palettes/15.gbapal" - - .align 2 -gTilesetTiles_PokemonFanClub:: - .incbin "data/tilesets/secondary/pokemon_fan_club/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_PokemonFanClub:: - .incbin "data/tilesets/secondary/pokemon_fan_club/palettes/00.gbapal" - .incbin "data/tilesets/secondary/pokemon_fan_club/palettes/01.gbapal" - .incbin "data/tilesets/secondary/pokemon_fan_club/palettes/02.gbapal" - .incbin "data/tilesets/secondary/pokemon_fan_club/palettes/03.gbapal" - .incbin "data/tilesets/secondary/pokemon_fan_club/palettes/04.gbapal" - .incbin "data/tilesets/secondary/pokemon_fan_club/palettes/05.gbapal" - .incbin "data/tilesets/secondary/pokemon_fan_club/palettes/06.gbapal" - .incbin "data/tilesets/secondary/pokemon_fan_club/palettes/07.gbapal" - .incbin "data/tilesets/secondary/pokemon_fan_club/palettes/08.gbapal" - .incbin "data/tilesets/secondary/pokemon_fan_club/palettes/09.gbapal" - .incbin "data/tilesets/secondary/pokemon_fan_club/palettes/10.gbapal" - .incbin "data/tilesets/secondary/pokemon_fan_club/palettes/11.gbapal" - .incbin "data/tilesets/secondary/pokemon_fan_club/palettes/12.gbapal" - .incbin "data/tilesets/secondary/pokemon_fan_club/palettes/13.gbapal" - .incbin "data/tilesets/secondary/pokemon_fan_club/palettes/14.gbapal" - .incbin "data/tilesets/secondary/pokemon_fan_club/palettes/15.gbapal" - - .align 2 -gTilesetTiles_Unused1:: - .incbin "data/tilesets/secondary/unused_1/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_Unused1:: - .incbin "data/tilesets/secondary/unused_1/palettes/00.gbapal" - .incbin "data/tilesets/secondary/unused_1/palettes/01.gbapal" - .incbin "data/tilesets/secondary/unused_1/palettes/02.gbapal" - .incbin "data/tilesets/secondary/unused_1/palettes/03.gbapal" - .incbin "data/tilesets/secondary/unused_1/palettes/04.gbapal" - .incbin "data/tilesets/secondary/unused_1/palettes/05.gbapal" - .incbin "data/tilesets/secondary/unused_1/palettes/06.gbapal" - .incbin "data/tilesets/secondary/unused_1/palettes/07.gbapal" - .incbin "data/tilesets/secondary/unused_1/palettes/08.gbapal" - .incbin "data/tilesets/secondary/unused_1/palettes/09.gbapal" - .incbin "data/tilesets/secondary/unused_1/palettes/10.gbapal" - .incbin "data/tilesets/secondary/unused_1/palettes/11.gbapal" - .incbin "data/tilesets/secondary/unused_1/palettes/12.gbapal" - .incbin "data/tilesets/secondary/unused_1/palettes/13.gbapal" - .incbin "data/tilesets/secondary/unused_1/palettes/14.gbapal" - .incbin "data/tilesets/secondary/unused_1/palettes/15.gbapal" - - .align 2 -gTilesetTiles_MeteorFalls:: - .incbin "data/tilesets/secondary/meteor_falls/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_MeteorFalls:: - .incbin "data/tilesets/secondary/meteor_falls/palettes/00.gbapal" - .incbin "data/tilesets/secondary/meteor_falls/palettes/01.gbapal" - .incbin "data/tilesets/secondary/meteor_falls/palettes/02.gbapal" - .incbin "data/tilesets/secondary/meteor_falls/palettes/03.gbapal" - .incbin "data/tilesets/secondary/meteor_falls/palettes/04.gbapal" - .incbin "data/tilesets/secondary/meteor_falls/palettes/05.gbapal" - .incbin "data/tilesets/secondary/meteor_falls/palettes/06.gbapal" - .incbin "data/tilesets/secondary/meteor_falls/palettes/07.gbapal" - .incbin "data/tilesets/secondary/meteor_falls/palettes/08.gbapal" - .incbin "data/tilesets/secondary/meteor_falls/palettes/09.gbapal" - .incbin "data/tilesets/secondary/meteor_falls/palettes/10.gbapal" - .incbin "data/tilesets/secondary/meteor_falls/palettes/11.gbapal" - .incbin "data/tilesets/secondary/meteor_falls/palettes/12.gbapal" - .incbin "data/tilesets/secondary/meteor_falls/palettes/13.gbapal" - .incbin "data/tilesets/secondary/meteor_falls/palettes/14.gbapal" - .incbin "data/tilesets/secondary/meteor_falls/palettes/15.gbapal" - - .align 2 -gTilesetTiles_OceanicMuseum:: - .incbin "data/tilesets/secondary/oceanic_museum/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_OceanicMuseum:: - .incbin "data/tilesets/secondary/oceanic_museum/palettes/00.gbapal" - .incbin "data/tilesets/secondary/oceanic_museum/palettes/01.gbapal" - .incbin "data/tilesets/secondary/oceanic_museum/palettes/02.gbapal" - .incbin "data/tilesets/secondary/oceanic_museum/palettes/03.gbapal" - .incbin "data/tilesets/secondary/oceanic_museum/palettes/04.gbapal" - .incbin "data/tilesets/secondary/oceanic_museum/palettes/05.gbapal" - .incbin "data/tilesets/secondary/oceanic_museum/palettes/06.gbapal" - .incbin "data/tilesets/secondary/oceanic_museum/palettes/07.gbapal" - .incbin "data/tilesets/secondary/oceanic_museum/palettes/08.gbapal" - .incbin "data/tilesets/secondary/oceanic_museum/palettes/09.gbapal" - .incbin "data/tilesets/secondary/oceanic_museum/palettes/10.gbapal" - .incbin "data/tilesets/secondary/oceanic_museum/palettes/11.gbapal" - .incbin "data/tilesets/secondary/oceanic_museum/palettes/12.gbapal" - .incbin "data/tilesets/secondary/oceanic_museum/palettes/13.gbapal" - .incbin "data/tilesets/secondary/oceanic_museum/palettes/14.gbapal" - .incbin "data/tilesets/secondary/oceanic_museum/palettes/15.gbapal" - - .align 2 -gTilesetTiles_CableClub:: - .incbin "data/tilesets/secondary/cable_club/tiles.4bpp" - - .align 2 - .incbin "data/tilesets/secondary/cable_club/unknown_tiles.4bpp" - - .align 2 -gTilesetPalettes_CableClub:: - .incbin "data/tilesets/secondary/cable_club/palettes/00.gbapal" - .incbin "data/tilesets/secondary/cable_club/palettes/01.gbapal" - .incbin "data/tilesets/secondary/cable_club/palettes/02.gbapal" - .incbin "data/tilesets/secondary/cable_club/palettes/03.gbapal" - .incbin "data/tilesets/secondary/cable_club/palettes/04.gbapal" - .incbin "data/tilesets/secondary/cable_club/palettes/05.gbapal" - .incbin "data/tilesets/secondary/cable_club/palettes/06.gbapal" - .incbin "data/tilesets/secondary/cable_club/palettes/07.gbapal" - .incbin "data/tilesets/secondary/cable_club/palettes/08.gbapal" - .incbin "data/tilesets/secondary/cable_club/palettes/09.gbapal" - .incbin "data/tilesets/secondary/cable_club/palettes/10.gbapal" - .incbin "data/tilesets/secondary/cable_club/palettes/11.gbapal" - .incbin "data/tilesets/secondary/cable_club/palettes/12.gbapal" - .incbin "data/tilesets/secondary/cable_club/palettes/13.gbapal" - .incbin "data/tilesets/secondary/cable_club/palettes/14.gbapal" - .incbin "data/tilesets/secondary/cable_club/palettes/15.gbapal" - - .align 2 -gTilesetTiles_SeashoreHouse:: - .incbin "data/tilesets/secondary/seashore_house/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_SeashoreHouse:: - .incbin "data/tilesets/secondary/seashore_house/palettes/00.gbapal" - .incbin "data/tilesets/secondary/seashore_house/palettes/01.gbapal" - .incbin "data/tilesets/secondary/seashore_house/palettes/02.gbapal" - .incbin "data/tilesets/secondary/seashore_house/palettes/03.gbapal" - .incbin "data/tilesets/secondary/seashore_house/palettes/04.gbapal" - .incbin "data/tilesets/secondary/seashore_house/palettes/05.gbapal" - .incbin "data/tilesets/secondary/seashore_house/palettes/06.gbapal" - .incbin "data/tilesets/secondary/seashore_house/palettes/07.gbapal" - .incbin "data/tilesets/secondary/seashore_house/palettes/08.gbapal" - .incbin "data/tilesets/secondary/seashore_house/palettes/09.gbapal" - .incbin "data/tilesets/secondary/seashore_house/palettes/10.gbapal" - .incbin "data/tilesets/secondary/seashore_house/palettes/11.gbapal" - .incbin "data/tilesets/secondary/seashore_house/palettes/12.gbapal" - .incbin "data/tilesets/secondary/seashore_house/palettes/13.gbapal" - .incbin "data/tilesets/secondary/seashore_house/palettes/14.gbapal" - .incbin "data/tilesets/secondary/seashore_house/palettes/15.gbapal" - - .align 2 -gTilesetTiles_PrettyPetalFlowerShop:: - .incbin "data/tilesets/secondary/pretty_petal_flower_shop/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_PrettyPetalFlowerShop:: - .incbin "data/tilesets/secondary/pretty_petal_flower_shop/palettes/00.gbapal" - .incbin "data/tilesets/secondary/pretty_petal_flower_shop/palettes/01.gbapal" - .incbin "data/tilesets/secondary/pretty_petal_flower_shop/palettes/02.gbapal" - .incbin "data/tilesets/secondary/pretty_petal_flower_shop/palettes/03.gbapal" - .incbin "data/tilesets/secondary/pretty_petal_flower_shop/palettes/04.gbapal" - .incbin "data/tilesets/secondary/pretty_petal_flower_shop/palettes/05.gbapal" - .incbin "data/tilesets/secondary/pretty_petal_flower_shop/palettes/06.gbapal" - .incbin "data/tilesets/secondary/pretty_petal_flower_shop/palettes/07.gbapal" - .incbin "data/tilesets/secondary/pretty_petal_flower_shop/palettes/08.gbapal" - .incbin "data/tilesets/secondary/pretty_petal_flower_shop/palettes/09.gbapal" - .incbin "data/tilesets/secondary/pretty_petal_flower_shop/palettes/10.gbapal" - .incbin "data/tilesets/secondary/pretty_petal_flower_shop/palettes/11.gbapal" - .incbin "data/tilesets/secondary/pretty_petal_flower_shop/palettes/12.gbapal" - .incbin "data/tilesets/secondary/pretty_petal_flower_shop/palettes/13.gbapal" - .incbin "data/tilesets/secondary/pretty_petal_flower_shop/palettes/14.gbapal" - .incbin "data/tilesets/secondary/pretty_petal_flower_shop/palettes/15.gbapal" - - .align 2 -gTilesetTiles_PokemonDayCare:: - .incbin "data/tilesets/secondary/pokemon_day_care/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_PokemonDayCare:: - .incbin "data/tilesets/secondary/pokemon_day_care/palettes/00.gbapal" - .incbin "data/tilesets/secondary/pokemon_day_care/palettes/01.gbapal" - .incbin "data/tilesets/secondary/pokemon_day_care/palettes/02.gbapal" - .incbin "data/tilesets/secondary/pokemon_day_care/palettes/03.gbapal" - .incbin "data/tilesets/secondary/pokemon_day_care/palettes/04.gbapal" - .incbin "data/tilesets/secondary/pokemon_day_care/palettes/05.gbapal" - .incbin "data/tilesets/secondary/pokemon_day_care/palettes/06.gbapal" - .incbin "data/tilesets/secondary/pokemon_day_care/palettes/07.gbapal" - .incbin "data/tilesets/secondary/pokemon_day_care/palettes/08.gbapal" - .incbin "data/tilesets/secondary/pokemon_day_care/palettes/09.gbapal" - .incbin "data/tilesets/secondary/pokemon_day_care/palettes/10.gbapal" - .incbin "data/tilesets/secondary/pokemon_day_care/palettes/11.gbapal" - .incbin "data/tilesets/secondary/pokemon_day_care/palettes/12.gbapal" - .incbin "data/tilesets/secondary/pokemon_day_care/palettes/13.gbapal" - .incbin "data/tilesets/secondary/pokemon_day_care/palettes/14.gbapal" - .incbin "data/tilesets/secondary/pokemon_day_care/palettes/15.gbapal" - - .align 2 -gTilesetTiles_Facility:: - .incbin "data/tilesets/secondary/facility/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_Facility:: - .incbin "data/tilesets/secondary/facility/palettes/00.gbapal" - .incbin "data/tilesets/secondary/facility/palettes/01.gbapal" - .incbin "data/tilesets/secondary/facility/palettes/02.gbapal" - .incbin "data/tilesets/secondary/facility/palettes/03.gbapal" - .incbin "data/tilesets/secondary/facility/palettes/04.gbapal" - .incbin "data/tilesets/secondary/facility/palettes/05.gbapal" - .incbin "data/tilesets/secondary/facility/palettes/06.gbapal" - .incbin "data/tilesets/secondary/facility/palettes/07.gbapal" - .incbin "data/tilesets/secondary/facility/palettes/08.gbapal" - .incbin "data/tilesets/secondary/facility/palettes/09.gbapal" - .incbin "data/tilesets/secondary/facility/palettes/10.gbapal" - .incbin "data/tilesets/secondary/facility/palettes/11.gbapal" - .incbin "data/tilesets/secondary/facility/palettes/12.gbapal" - .incbin "data/tilesets/secondary/facility/palettes/13.gbapal" - .incbin "data/tilesets/secondary/facility/palettes/14.gbapal" - .incbin "data/tilesets/secondary/facility/palettes/15.gbapal" - - .align 2 -gTilesetTiles_BikeShop:: - .incbin "data/tilesets/secondary/bike_shop/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_BikeShop:: - .incbin "data/tilesets/secondary/bike_shop/palettes/00.gbapal" - .incbin "data/tilesets/secondary/bike_shop/palettes/01.gbapal" - .incbin "data/tilesets/secondary/bike_shop/palettes/02.gbapal" - .incbin "data/tilesets/secondary/bike_shop/palettes/03.gbapal" - .incbin "data/tilesets/secondary/bike_shop/palettes/04.gbapal" - .incbin "data/tilesets/secondary/bike_shop/palettes/05.gbapal" - .incbin "data/tilesets/secondary/bike_shop/palettes/06.gbapal" - .incbin "data/tilesets/secondary/bike_shop/palettes/07.gbapal" - .incbin "data/tilesets/secondary/bike_shop/palettes/08.gbapal" - .incbin "data/tilesets/secondary/bike_shop/palettes/09.gbapal" - .incbin "data/tilesets/secondary/bike_shop/palettes/10.gbapal" - .incbin "data/tilesets/secondary/bike_shop/palettes/11.gbapal" - .incbin "data/tilesets/secondary/bike_shop/palettes/12.gbapal" - .incbin "data/tilesets/secondary/bike_shop/palettes/13.gbapal" - .incbin "data/tilesets/secondary/bike_shop/palettes/14.gbapal" - .incbin "data/tilesets/secondary/bike_shop/palettes/15.gbapal" - - .align 2 -gTilesetTiles_RusturfTunnel:: - .incbin "data/tilesets/secondary/rusturf_tunnel/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_RusturfTunnel:: - .incbin "data/tilesets/secondary/rusturf_tunnel/palettes/00.gbapal" - .incbin "data/tilesets/secondary/rusturf_tunnel/palettes/01.gbapal" - .incbin "data/tilesets/secondary/rusturf_tunnel/palettes/02.gbapal" - .incbin "data/tilesets/secondary/rusturf_tunnel/palettes/03.gbapal" - .incbin "data/tilesets/secondary/rusturf_tunnel/palettes/04.gbapal" - .incbin "data/tilesets/secondary/rusturf_tunnel/palettes/05.gbapal" - .incbin "data/tilesets/secondary/rusturf_tunnel/palettes/06.gbapal" - .incbin "data/tilesets/secondary/rusturf_tunnel/palettes/07.gbapal" - .incbin "data/tilesets/secondary/rusturf_tunnel/palettes/08.gbapal" - .incbin "data/tilesets/secondary/rusturf_tunnel/palettes/09.gbapal" - .incbin "data/tilesets/secondary/rusturf_tunnel/palettes/10.gbapal" - .incbin "data/tilesets/secondary/rusturf_tunnel/palettes/11.gbapal" - .incbin "data/tilesets/secondary/rusturf_tunnel/palettes/12.gbapal" - .incbin "data/tilesets/secondary/rusturf_tunnel/palettes/13.gbapal" - .incbin "data/tilesets/secondary/rusturf_tunnel/palettes/14.gbapal" - .incbin "data/tilesets/secondary/rusturf_tunnel/palettes/15.gbapal" - - .align 2 -@ unused compressed copy of tiles - .incbin "data/tilesets/secondary/secret_base/brown_cave/unused_tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_SecretBaseBrownCave:: - .incbin "data/tilesets/secondary/secret_base/brown_cave/palettes/00.gbapal" - .incbin "data/tilesets/secondary/secret_base/brown_cave/palettes/01.gbapal" - .incbin "data/tilesets/secondary/secret_base/brown_cave/palettes/02.gbapal" - .incbin "data/tilesets/secondary/secret_base/brown_cave/palettes/03.gbapal" - .incbin "data/tilesets/secondary/secret_base/brown_cave/palettes/04.gbapal" - .incbin "data/tilesets/secondary/secret_base/brown_cave/palettes/05.gbapal" - .incbin "data/tilesets/secondary/secret_base/brown_cave/palettes/06.gbapal" - .incbin "data/tilesets/secondary/secret_base/brown_cave/palettes/07.gbapal" - .incbin "data/tilesets/secondary/secret_base/brown_cave/palettes/08.gbapal" - .incbin "data/tilesets/secondary/secret_base/brown_cave/palettes/09.gbapal" - .incbin "data/tilesets/secondary/secret_base/brown_cave/palettes/10.gbapal" - .incbin "data/tilesets/secondary/secret_base/brown_cave/palettes/11.gbapal" - .incbin "data/tilesets/secondary/secret_base/brown_cave/palettes/12.gbapal" - .incbin "data/tilesets/secondary/secret_base/brown_cave/palettes/13.gbapal" - .incbin "data/tilesets/secondary/secret_base/brown_cave/palettes/14.gbapal" - .incbin "data/tilesets/secondary/secret_base/brown_cave/palettes/15.gbapal" - - .align 2 -@ unused compressed copy of tiles - .incbin "data/tilesets/secondary/secret_base/tree/unused_tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_SecretBaseTree:: - .incbin "data/tilesets/secondary/secret_base/tree/palettes/00.gbapal" - .incbin "data/tilesets/secondary/secret_base/tree/palettes/01.gbapal" - .incbin "data/tilesets/secondary/secret_base/tree/palettes/02.gbapal" - .incbin "data/tilesets/secondary/secret_base/tree/palettes/03.gbapal" - .incbin "data/tilesets/secondary/secret_base/tree/palettes/04.gbapal" - .incbin "data/tilesets/secondary/secret_base/tree/palettes/05.gbapal" - .incbin "data/tilesets/secondary/secret_base/tree/palettes/06.gbapal" - .incbin "data/tilesets/secondary/secret_base/tree/palettes/07.gbapal" - .incbin "data/tilesets/secondary/secret_base/tree/palettes/08.gbapal" - .incbin "data/tilesets/secondary/secret_base/tree/palettes/09.gbapal" - .incbin "data/tilesets/secondary/secret_base/tree/palettes/10.gbapal" - .incbin "data/tilesets/secondary/secret_base/tree/palettes/11.gbapal" - .incbin "data/tilesets/secondary/secret_base/tree/palettes/12.gbapal" - .incbin "data/tilesets/secondary/secret_base/tree/palettes/13.gbapal" - .incbin "data/tilesets/secondary/secret_base/tree/palettes/14.gbapal" - .incbin "data/tilesets/secondary/secret_base/tree/palettes/15.gbapal" - - .align 2 -@ unused compressed copy of tiles - .incbin "data/tilesets/secondary/secret_base/shrub/unused_tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_SecretBaseShrub:: - .incbin "data/tilesets/secondary/secret_base/shrub/palettes/00.gbapal" - .incbin "data/tilesets/secondary/secret_base/shrub/palettes/01.gbapal" - .incbin "data/tilesets/secondary/secret_base/shrub/palettes/02.gbapal" - .incbin "data/tilesets/secondary/secret_base/shrub/palettes/03.gbapal" - .incbin "data/tilesets/secondary/secret_base/shrub/palettes/04.gbapal" - .incbin "data/tilesets/secondary/secret_base/shrub/palettes/05.gbapal" - .incbin "data/tilesets/secondary/secret_base/shrub/palettes/06.gbapal" - .incbin "data/tilesets/secondary/secret_base/shrub/palettes/07.gbapal" - .incbin "data/tilesets/secondary/secret_base/shrub/palettes/08.gbapal" - .incbin "data/tilesets/secondary/secret_base/shrub/palettes/09.gbapal" - .incbin "data/tilesets/secondary/secret_base/shrub/palettes/10.gbapal" - .incbin "data/tilesets/secondary/secret_base/shrub/palettes/11.gbapal" - .incbin "data/tilesets/secondary/secret_base/shrub/palettes/12.gbapal" - .incbin "data/tilesets/secondary/secret_base/shrub/palettes/13.gbapal" - .incbin "data/tilesets/secondary/secret_base/shrub/palettes/14.gbapal" - .incbin "data/tilesets/secondary/secret_base/shrub/palettes/15.gbapal" - - .align 2 -@ unused compressed copy of tiles - .incbin "data/tilesets/secondary/secret_base/blue_cave/unused_tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_SecretBaseBlueCave:: - .incbin "data/tilesets/secondary/secret_base/blue_cave/palettes/00.gbapal" - .incbin "data/tilesets/secondary/secret_base/blue_cave/palettes/01.gbapal" - .incbin "data/tilesets/secondary/secret_base/blue_cave/palettes/02.gbapal" - .incbin "data/tilesets/secondary/secret_base/blue_cave/palettes/03.gbapal" - .incbin "data/tilesets/secondary/secret_base/blue_cave/palettes/04.gbapal" - .incbin "data/tilesets/secondary/secret_base/blue_cave/palettes/05.gbapal" - .incbin "data/tilesets/secondary/secret_base/blue_cave/palettes/06.gbapal" - .incbin "data/tilesets/secondary/secret_base/blue_cave/palettes/07.gbapal" - .incbin "data/tilesets/secondary/secret_base/blue_cave/palettes/08.gbapal" - .incbin "data/tilesets/secondary/secret_base/blue_cave/palettes/09.gbapal" - .incbin "data/tilesets/secondary/secret_base/blue_cave/palettes/10.gbapal" - .incbin "data/tilesets/secondary/secret_base/blue_cave/palettes/11.gbapal" - .incbin "data/tilesets/secondary/secret_base/blue_cave/palettes/12.gbapal" - .incbin "data/tilesets/secondary/secret_base/blue_cave/palettes/13.gbapal" - .incbin "data/tilesets/secondary/secret_base/blue_cave/palettes/14.gbapal" - .incbin "data/tilesets/secondary/secret_base/blue_cave/palettes/15.gbapal" - - .align 2 -@ unused compressed copy of tiles - .incbin "data/tilesets/secondary/secret_base/yellow_cave/unused_tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_SecretBaseYellowCave:: - .incbin "data/tilesets/secondary/secret_base/yellow_cave/palettes/00.gbapal" - .incbin "data/tilesets/secondary/secret_base/yellow_cave/palettes/01.gbapal" - .incbin "data/tilesets/secondary/secret_base/yellow_cave/palettes/02.gbapal" - .incbin "data/tilesets/secondary/secret_base/yellow_cave/palettes/03.gbapal" - .incbin "data/tilesets/secondary/secret_base/yellow_cave/palettes/04.gbapal" - .incbin "data/tilesets/secondary/secret_base/yellow_cave/palettes/05.gbapal" - .incbin "data/tilesets/secondary/secret_base/yellow_cave/palettes/06.gbapal" - .incbin "data/tilesets/secondary/secret_base/yellow_cave/palettes/07.gbapal" - .incbin "data/tilesets/secondary/secret_base/yellow_cave/palettes/08.gbapal" - .incbin "data/tilesets/secondary/secret_base/yellow_cave/palettes/09.gbapal" - .incbin "data/tilesets/secondary/secret_base/yellow_cave/palettes/10.gbapal" - .incbin "data/tilesets/secondary/secret_base/yellow_cave/palettes/11.gbapal" - .incbin "data/tilesets/secondary/secret_base/yellow_cave/palettes/12.gbapal" - .incbin "data/tilesets/secondary/secret_base/yellow_cave/palettes/13.gbapal" - .incbin "data/tilesets/secondary/secret_base/yellow_cave/palettes/14.gbapal" - .incbin "data/tilesets/secondary/secret_base/yellow_cave/palettes/15.gbapal" - - .align 2 -@ unused compressed copy of tiles - .incbin "data/tilesets/secondary/secret_base/red_cave/unused_tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_SecretBaseRedCave:: - .incbin "data/tilesets/secondary/secret_base/red_cave/palettes/00.gbapal" - .incbin "data/tilesets/secondary/secret_base/red_cave/palettes/01.gbapal" - .incbin "data/tilesets/secondary/secret_base/red_cave/palettes/02.gbapal" - .incbin "data/tilesets/secondary/secret_base/red_cave/palettes/03.gbapal" - .incbin "data/tilesets/secondary/secret_base/red_cave/palettes/04.gbapal" - .incbin "data/tilesets/secondary/secret_base/red_cave/palettes/05.gbapal" - .incbin "data/tilesets/secondary/secret_base/red_cave/palettes/06.gbapal" - .incbin "data/tilesets/secondary/secret_base/red_cave/palettes/07.gbapal" - .incbin "data/tilesets/secondary/secret_base/red_cave/palettes/08.gbapal" - .incbin "data/tilesets/secondary/secret_base/red_cave/palettes/09.gbapal" - .incbin "data/tilesets/secondary/secret_base/red_cave/palettes/10.gbapal" - .incbin "data/tilesets/secondary/secret_base/red_cave/palettes/11.gbapal" - .incbin "data/tilesets/secondary/secret_base/red_cave/palettes/12.gbapal" - .incbin "data/tilesets/secondary/secret_base/red_cave/palettes/13.gbapal" - .incbin "data/tilesets/secondary/secret_base/red_cave/palettes/14.gbapal" - .incbin "data/tilesets/secondary/secret_base/red_cave/palettes/15.gbapal" - - .align 2 -gTilesetTiles_SecretBaseBrownCave:: - .incbin "data/tilesets/secondary/secret_base/brown_cave/tiles.4bpp" - - .align 2 -gTilesetTiles_SecretBaseTree:: - .incbin "data/tilesets/secondary/secret_base/tree/tiles.4bpp" - - .align 2 -gTilesetTiles_SecretBaseShrub:: - .incbin "data/tilesets/secondary/secret_base/shrub/tiles.4bpp" - - .align 2 -gTilesetTiles_SecretBaseBlueCave:: - .incbin "data/tilesets/secondary/secret_base/blue_cave/tiles.4bpp" - - .align 2 -gTilesetTiles_SecretBaseYellowCave:: - .incbin "data/tilesets/secondary/secret_base/yellow_cave/tiles.4bpp" - - .align 2 -gTilesetTiles_SecretBaseRedCave:: - .incbin "data/tilesets/secondary/secret_base/red_cave/tiles.4bpp" - - .align 2 -gTilesetTiles_InsideOfTruck:: - .incbin "data/tilesets/secondary/inside_of_truck/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_InsideOfTruck:: - .incbin "data/tilesets/secondary/inside_of_truck/palettes/00.gbapal" - .incbin "data/tilesets/secondary/inside_of_truck/palettes/01.gbapal" - .incbin "data/tilesets/secondary/inside_of_truck/palettes/02.gbapal" - .incbin "data/tilesets/secondary/inside_of_truck/palettes/03.gbapal" - .incbin "data/tilesets/secondary/inside_of_truck/palettes/04.gbapal" - .incbin "data/tilesets/secondary/inside_of_truck/palettes/05.gbapal" - .incbin "data/tilesets/secondary/inside_of_truck/palettes/06.gbapal" - .incbin "data/tilesets/secondary/inside_of_truck/palettes/07.gbapal" - .incbin "data/tilesets/secondary/inside_of_truck/palettes/08.gbapal" - .incbin "data/tilesets/secondary/inside_of_truck/palettes/09.gbapal" - .incbin "data/tilesets/secondary/inside_of_truck/palettes/10.gbapal" - .incbin "data/tilesets/secondary/inside_of_truck/palettes/11.gbapal" - .incbin "data/tilesets/secondary/inside_of_truck/palettes/12.gbapal" - .incbin "data/tilesets/secondary/inside_of_truck/palettes/13.gbapal" - .incbin "data/tilesets/secondary/inside_of_truck/palettes/14.gbapal" - .incbin "data/tilesets/secondary/inside_of_truck/palettes/15.gbapal" - - .align 2 -gTilesetTiles_Contest:: - .incbin "data/tilesets/secondary/contest/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_Contest:: - .incbin "data/tilesets/secondary/contest/palettes/00.gbapal" - .incbin "data/tilesets/secondary/contest/palettes/01.gbapal" - .incbin "data/tilesets/secondary/contest/palettes/02.gbapal" - .incbin "data/tilesets/secondary/contest/palettes/03.gbapal" - .incbin "data/tilesets/secondary/contest/palettes/04.gbapal" - .incbin "data/tilesets/secondary/contest/palettes/05.gbapal" - .incbin "data/tilesets/secondary/contest/palettes/06.gbapal" - .incbin "data/tilesets/secondary/contest/palettes/07.gbapal" - .incbin "data/tilesets/secondary/contest/palettes/08.gbapal" - .incbin "data/tilesets/secondary/contest/palettes/09.gbapal" - .incbin "data/tilesets/secondary/contest/palettes/10.gbapal" - .incbin "data/tilesets/secondary/contest/palettes/11.gbapal" - .incbin "data/tilesets/secondary/contest/palettes/12.gbapal" - .incbin "data/tilesets/secondary/contest/palettes/13.gbapal" - .incbin "data/tilesets/secondary/contest/palettes/14.gbapal" - .incbin "data/tilesets/secondary/contest/palettes/15.gbapal" - - .align 2 -gTilesetTiles_LilycoveMuseum:: - .incbin "data/tilesets/secondary/lilycove_museum/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_LilycoveMuseum:: - .incbin "data/tilesets/secondary/lilycove_museum/palettes/00.gbapal" - .incbin "data/tilesets/secondary/lilycove_museum/palettes/01.gbapal" - .incbin "data/tilesets/secondary/lilycove_museum/palettes/02.gbapal" - .incbin "data/tilesets/secondary/lilycove_museum/palettes/03.gbapal" - .incbin "data/tilesets/secondary/lilycove_museum/palettes/04.gbapal" - .incbin "data/tilesets/secondary/lilycove_museum/palettes/05.gbapal" - .incbin "data/tilesets/secondary/lilycove_museum/palettes/06.gbapal" - .incbin "data/tilesets/secondary/lilycove_museum/palettes/07.gbapal" - .incbin "data/tilesets/secondary/lilycove_museum/palettes/08.gbapal" - .incbin "data/tilesets/secondary/lilycove_museum/palettes/09.gbapal" - .incbin "data/tilesets/secondary/lilycove_museum/palettes/10.gbapal" - .incbin "data/tilesets/secondary/lilycove_museum/palettes/11.gbapal" - .incbin "data/tilesets/secondary/lilycove_museum/palettes/12.gbapal" - .incbin "data/tilesets/secondary/lilycove_museum/palettes/13.gbapal" - .incbin "data/tilesets/secondary/lilycove_museum/palettes/14.gbapal" - .incbin "data/tilesets/secondary/lilycove_museum/palettes/15.gbapal" - - .align 2 -gTilesetTiles_BrendansMaysHouse:: - .incbin "data/tilesets/secondary/brendans_mays_house/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_BrendansMaysHouse:: - .incbin "data/tilesets/secondary/brendans_mays_house/palettes/00.gbapal" - .incbin "data/tilesets/secondary/brendans_mays_house/palettes/01.gbapal" - .incbin "data/tilesets/secondary/brendans_mays_house/palettes/02.gbapal" - .incbin "data/tilesets/secondary/brendans_mays_house/palettes/03.gbapal" - .incbin "data/tilesets/secondary/brendans_mays_house/palettes/04.gbapal" - .incbin "data/tilesets/secondary/brendans_mays_house/palettes/05.gbapal" - .incbin "data/tilesets/secondary/brendans_mays_house/palettes/06.gbapal" - .incbin "data/tilesets/secondary/brendans_mays_house/palettes/07.gbapal" - .incbin "data/tilesets/secondary/brendans_mays_house/palettes/08.gbapal" - .incbin "data/tilesets/secondary/brendans_mays_house/palettes/09.gbapal" - .incbin "data/tilesets/secondary/brendans_mays_house/palettes/10.gbapal" - .incbin "data/tilesets/secondary/brendans_mays_house/palettes/11.gbapal" - .incbin "data/tilesets/secondary/brendans_mays_house/palettes/12.gbapal" - .incbin "data/tilesets/secondary/brendans_mays_house/palettes/13.gbapal" - .incbin "data/tilesets/secondary/brendans_mays_house/palettes/14.gbapal" - .incbin "data/tilesets/secondary/brendans_mays_house/palettes/15.gbapal" - - .align 2 -gTilesetTiles_Lab:: - .incbin "data/tilesets/secondary/lab/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_Lab:: - .incbin "data/tilesets/secondary/lab/palettes/00.gbapal" - .incbin "data/tilesets/secondary/lab/palettes/01.gbapal" - .incbin "data/tilesets/secondary/lab/palettes/02.gbapal" - .incbin "data/tilesets/secondary/lab/palettes/03.gbapal" - .incbin "data/tilesets/secondary/lab/palettes/04.gbapal" - .incbin "data/tilesets/secondary/lab/palettes/05.gbapal" - .incbin "data/tilesets/secondary/lab/palettes/06.gbapal" - .incbin "data/tilesets/secondary/lab/palettes/07.gbapal" - .incbin "data/tilesets/secondary/lab/palettes/08.gbapal" - .incbin "data/tilesets/secondary/lab/palettes/09.gbapal" - .incbin "data/tilesets/secondary/lab/palettes/10.gbapal" - .incbin "data/tilesets/secondary/lab/palettes/11.gbapal" - .incbin "data/tilesets/secondary/lab/palettes/12.gbapal" - .incbin "data/tilesets/secondary/lab/palettes/13.gbapal" - .incbin "data/tilesets/secondary/lab/palettes/14.gbapal" - .incbin "data/tilesets/secondary/lab/palettes/15.gbapal" - - .align 2 -gTilesetTiles_Underwater:: - .incbin "data/tilesets/secondary/underwater/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_Underwater:: - .incbin "data/tilesets/secondary/underwater/palettes/00.gbapal" - .incbin "data/tilesets/secondary/underwater/palettes/01.gbapal" - .incbin "data/tilesets/secondary/underwater/palettes/02.gbapal" - .incbin "data/tilesets/secondary/underwater/palettes/03.gbapal" - .incbin "data/tilesets/secondary/underwater/palettes/04.gbapal" - .incbin "data/tilesets/secondary/underwater/palettes/05.gbapal" - .incbin "data/tilesets/secondary/underwater/palettes/06.gbapal" - .incbin "data/tilesets/secondary/underwater/palettes/07.gbapal" - .incbin "data/tilesets/secondary/underwater/palettes/08.gbapal" - .incbin "data/tilesets/secondary/underwater/palettes/09.gbapal" - .incbin "data/tilesets/secondary/underwater/palettes/10.gbapal" - .incbin "data/tilesets/secondary/underwater/palettes/11.gbapal" - .incbin "data/tilesets/secondary/underwater/palettes/12.gbapal" - .incbin "data/tilesets/secondary/underwater/palettes/13.gbapal" - .incbin "data/tilesets/secondary/underwater/palettes/14.gbapal" - .incbin "data/tilesets/secondary/underwater/palettes/15.gbapal" - - .align 2 -gTilesetTiles_GenericBuilding:: - .incbin "data/tilesets/secondary/generic_building/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_GenericBuilding:: - .incbin "data/tilesets/secondary/generic_building/palettes/00.gbapal" - .incbin "data/tilesets/secondary/generic_building/palettes/01.gbapal" - .incbin "data/tilesets/secondary/generic_building/palettes/02.gbapal" - .incbin "data/tilesets/secondary/generic_building/palettes/03.gbapal" - .incbin "data/tilesets/secondary/generic_building/palettes/04.gbapal" - .incbin "data/tilesets/secondary/generic_building/palettes/05.gbapal" - .incbin "data/tilesets/secondary/generic_building/palettes/06.gbapal" - .incbin "data/tilesets/secondary/generic_building/palettes/07.gbapal" - .incbin "data/tilesets/secondary/generic_building/palettes/08.gbapal" - .incbin "data/tilesets/secondary/generic_building/palettes/09.gbapal" - .incbin "data/tilesets/secondary/generic_building/palettes/10.gbapal" - .incbin "data/tilesets/secondary/generic_building/palettes/11.gbapal" - .incbin "data/tilesets/secondary/generic_building/palettes/12.gbapal" - .incbin "data/tilesets/secondary/generic_building/palettes/13.gbapal" - .incbin "data/tilesets/secondary/generic_building/palettes/14.gbapal" - .incbin "data/tilesets/secondary/generic_building/palettes/15.gbapal" - - .align 2 -gTilesetTiles_MauvilleGameCorner:: - .incbin "data/tilesets/secondary/mauville_game_corner/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_MauvilleGameCorner:: - .incbin "data/tilesets/secondary/mauville_game_corner/palettes/00.gbapal" - .incbin "data/tilesets/secondary/mauville_game_corner/palettes/01.gbapal" - .incbin "data/tilesets/secondary/mauville_game_corner/palettes/02.gbapal" - .incbin "data/tilesets/secondary/mauville_game_corner/palettes/03.gbapal" - .incbin "data/tilesets/secondary/mauville_game_corner/palettes/04.gbapal" - .incbin "data/tilesets/secondary/mauville_game_corner/palettes/05.gbapal" - .incbin "data/tilesets/secondary/mauville_game_corner/palettes/06.gbapal" - .incbin "data/tilesets/secondary/mauville_game_corner/palettes/07.gbapal" - .incbin "data/tilesets/secondary/mauville_game_corner/palettes/08.gbapal" - .incbin "data/tilesets/secondary/mauville_game_corner/palettes/09.gbapal" - .incbin "data/tilesets/secondary/mauville_game_corner/palettes/10.gbapal" - .incbin "data/tilesets/secondary/mauville_game_corner/palettes/11.gbapal" - .incbin "data/tilesets/secondary/mauville_game_corner/palettes/12.gbapal" - .incbin "data/tilesets/secondary/mauville_game_corner/palettes/13.gbapal" - .incbin "data/tilesets/secondary/mauville_game_corner/palettes/14.gbapal" - .incbin "data/tilesets/secondary/mauville_game_corner/palettes/15.gbapal" - - .align 2 -gTilesetTiles_Unused2:: - .incbin "data/tilesets/secondary/unused_2/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_Unused2:: - .incbin "data/tilesets/secondary/unused_2/palettes/00.gbapal" - .incbin "data/tilesets/secondary/unused_2/palettes/01.gbapal" - .incbin "data/tilesets/secondary/unused_2/palettes/02.gbapal" - .incbin "data/tilesets/secondary/unused_2/palettes/03.gbapal" - .incbin "data/tilesets/secondary/unused_2/palettes/04.gbapal" - .incbin "data/tilesets/secondary/unused_2/palettes/05.gbapal" - .incbin "data/tilesets/secondary/unused_2/palettes/06.gbapal" - .incbin "data/tilesets/secondary/unused_2/palettes/07.gbapal" - .incbin "data/tilesets/secondary/unused_2/palettes/08.gbapal" - .incbin "data/tilesets/secondary/unused_2/palettes/09.gbapal" - .incbin "data/tilesets/secondary/unused_2/palettes/10.gbapal" - .incbin "data/tilesets/secondary/unused_2/palettes/11.gbapal" - .incbin "data/tilesets/secondary/unused_2/palettes/12.gbapal" - .incbin "data/tilesets/secondary/unused_2/palettes/13.gbapal" - .incbin "data/tilesets/secondary/unused_2/palettes/14.gbapal" - .incbin "data/tilesets/secondary/unused_2/palettes/15.gbapal" - - .align 2 -gTilesetTiles_RustboroGym:: - .incbin "data/tilesets/secondary/rustboro_gym/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_RustboroGym:: - .incbin "data/tilesets/secondary/rustboro_gym/palettes/00.gbapal" - .incbin "data/tilesets/secondary/rustboro_gym/palettes/01.gbapal" - .incbin "data/tilesets/secondary/rustboro_gym/palettes/02.gbapal" - .incbin "data/tilesets/secondary/rustboro_gym/palettes/03.gbapal" - .incbin "data/tilesets/secondary/rustboro_gym/palettes/04.gbapal" - .incbin "data/tilesets/secondary/rustboro_gym/palettes/05.gbapal" - .incbin "data/tilesets/secondary/rustboro_gym/palettes/06.gbapal" - .incbin "data/tilesets/secondary/rustboro_gym/palettes/07.gbapal" - .incbin "data/tilesets/secondary/rustboro_gym/palettes/08.gbapal" - .incbin "data/tilesets/secondary/rustboro_gym/palettes/09.gbapal" - .incbin "data/tilesets/secondary/rustboro_gym/palettes/10.gbapal" - .incbin "data/tilesets/secondary/rustboro_gym/palettes/11.gbapal" - .incbin "data/tilesets/secondary/rustboro_gym/palettes/12.gbapal" - .incbin "data/tilesets/secondary/rustboro_gym/palettes/13.gbapal" - .incbin "data/tilesets/secondary/rustboro_gym/palettes/14.gbapal" - .incbin "data/tilesets/secondary/rustboro_gym/palettes/15.gbapal" - - .align 2 -gTilesetTiles_DewfordGym:: - .incbin "data/tilesets/secondary/dewford_gym/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_DewfordGym:: - .incbin "data/tilesets/secondary/dewford_gym/palettes/00.gbapal" - .incbin "data/tilesets/secondary/dewford_gym/palettes/01.gbapal" - .incbin "data/tilesets/secondary/dewford_gym/palettes/02.gbapal" - .incbin "data/tilesets/secondary/dewford_gym/palettes/03.gbapal" - .incbin "data/tilesets/secondary/dewford_gym/palettes/04.gbapal" - .incbin "data/tilesets/secondary/dewford_gym/palettes/05.gbapal" - .incbin "data/tilesets/secondary/dewford_gym/palettes/06.gbapal" - .incbin "data/tilesets/secondary/dewford_gym/palettes/07.gbapal" - .incbin "data/tilesets/secondary/dewford_gym/palettes/08.gbapal" - .incbin "data/tilesets/secondary/dewford_gym/palettes/09.gbapal" - .incbin "data/tilesets/secondary/dewford_gym/palettes/10.gbapal" - .incbin "data/tilesets/secondary/dewford_gym/palettes/11.gbapal" - .incbin "data/tilesets/secondary/dewford_gym/palettes/12.gbapal" - .incbin "data/tilesets/secondary/dewford_gym/palettes/13.gbapal" - .incbin "data/tilesets/secondary/dewford_gym/palettes/14.gbapal" - .incbin "data/tilesets/secondary/dewford_gym/palettes/15.gbapal" - - .align 2 -gTilesetTiles_MauvilleGym:: - .incbin "data/tilesets/secondary/mauville_gym/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_MauvilleGym:: - .incbin "data/tilesets/secondary/mauville_gym/palettes/00.gbapal" - .incbin "data/tilesets/secondary/mauville_gym/palettes/01.gbapal" - .incbin "data/tilesets/secondary/mauville_gym/palettes/02.gbapal" - .incbin "data/tilesets/secondary/mauville_gym/palettes/03.gbapal" - .incbin "data/tilesets/secondary/mauville_gym/palettes/04.gbapal" - .incbin "data/tilesets/secondary/mauville_gym/palettes/05.gbapal" - .incbin "data/tilesets/secondary/mauville_gym/palettes/06.gbapal" - .incbin "data/tilesets/secondary/mauville_gym/palettes/07.gbapal" - .incbin "data/tilesets/secondary/mauville_gym/palettes/08.gbapal" - .incbin "data/tilesets/secondary/mauville_gym/palettes/09.gbapal" - .incbin "data/tilesets/secondary/mauville_gym/palettes/10.gbapal" - .incbin "data/tilesets/secondary/mauville_gym/palettes/11.gbapal" - .incbin "data/tilesets/secondary/mauville_gym/palettes/12.gbapal" - .incbin "data/tilesets/secondary/mauville_gym/palettes/13.gbapal" - .incbin "data/tilesets/secondary/mauville_gym/palettes/14.gbapal" - .incbin "data/tilesets/secondary/mauville_gym/palettes/15.gbapal" - - .align 2 -gTilesetTiles_LavaridgeGym:: - .incbin "data/tilesets/secondary/lavaridge_gym/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_LavaridgeGym:: - .incbin "data/tilesets/secondary/lavaridge_gym/palettes/00.gbapal" - .incbin "data/tilesets/secondary/lavaridge_gym/palettes/01.gbapal" - .incbin "data/tilesets/secondary/lavaridge_gym/palettes/02.gbapal" - .incbin "data/tilesets/secondary/lavaridge_gym/palettes/03.gbapal" - .incbin "data/tilesets/secondary/lavaridge_gym/palettes/04.gbapal" - .incbin "data/tilesets/secondary/lavaridge_gym/palettes/05.gbapal" - .incbin "data/tilesets/secondary/lavaridge_gym/palettes/06.gbapal" - .incbin "data/tilesets/secondary/lavaridge_gym/palettes/07.gbapal" - .incbin "data/tilesets/secondary/lavaridge_gym/palettes/08.gbapal" - .incbin "data/tilesets/secondary/lavaridge_gym/palettes/09.gbapal" - .incbin "data/tilesets/secondary/lavaridge_gym/palettes/10.gbapal" - .incbin "data/tilesets/secondary/lavaridge_gym/palettes/11.gbapal" - .incbin "data/tilesets/secondary/lavaridge_gym/palettes/12.gbapal" - .incbin "data/tilesets/secondary/lavaridge_gym/palettes/13.gbapal" - .incbin "data/tilesets/secondary/lavaridge_gym/palettes/14.gbapal" - .incbin "data/tilesets/secondary/lavaridge_gym/palettes/15.gbapal" - - .align 2 -gTilesetTiles_PetalburgGym:: - .incbin "data/tilesets/secondary/petalburg_gym/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_PetalburgGym:: - .incbin "data/tilesets/secondary/petalburg_gym/palettes/00.gbapal" - .incbin "data/tilesets/secondary/petalburg_gym/palettes/01.gbapal" - .incbin "data/tilesets/secondary/petalburg_gym/palettes/02.gbapal" - .incbin "data/tilesets/secondary/petalburg_gym/palettes/03.gbapal" - .incbin "data/tilesets/secondary/petalburg_gym/palettes/04.gbapal" - .incbin "data/tilesets/secondary/petalburg_gym/palettes/05.gbapal" - .incbin "data/tilesets/secondary/petalburg_gym/palettes/06.gbapal" - .incbin "data/tilesets/secondary/petalburg_gym/palettes/07.gbapal" - .incbin "data/tilesets/secondary/petalburg_gym/palettes/08.gbapal" - .incbin "data/tilesets/secondary/petalburg_gym/palettes/09.gbapal" - .incbin "data/tilesets/secondary/petalburg_gym/palettes/10.gbapal" - .incbin "data/tilesets/secondary/petalburg_gym/palettes/11.gbapal" - .incbin "data/tilesets/secondary/petalburg_gym/palettes/12.gbapal" - .incbin "data/tilesets/secondary/petalburg_gym/palettes/13.gbapal" - .incbin "data/tilesets/secondary/petalburg_gym/palettes/14.gbapal" - .incbin "data/tilesets/secondary/petalburg_gym/palettes/15.gbapal" - - .align 2 -gTilesetTiles_FortreeGym:: - .incbin "data/tilesets/secondary/fortree_gym/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_FortreeGym:: - .incbin "data/tilesets/secondary/fortree_gym/palettes/00.gbapal" - .incbin "data/tilesets/secondary/fortree_gym/palettes/01.gbapal" - .incbin "data/tilesets/secondary/fortree_gym/palettes/02.gbapal" - .incbin "data/tilesets/secondary/fortree_gym/palettes/03.gbapal" - .incbin "data/tilesets/secondary/fortree_gym/palettes/04.gbapal" - .incbin "data/tilesets/secondary/fortree_gym/palettes/05.gbapal" - .incbin "data/tilesets/secondary/fortree_gym/palettes/06.gbapal" - .incbin "data/tilesets/secondary/fortree_gym/palettes/07.gbapal" - .incbin "data/tilesets/secondary/fortree_gym/palettes/08.gbapal" - .incbin "data/tilesets/secondary/fortree_gym/palettes/09.gbapal" - .incbin "data/tilesets/secondary/fortree_gym/palettes/10.gbapal" - .incbin "data/tilesets/secondary/fortree_gym/palettes/11.gbapal" - .incbin "data/tilesets/secondary/fortree_gym/palettes/12.gbapal" - .incbin "data/tilesets/secondary/fortree_gym/palettes/13.gbapal" - .incbin "data/tilesets/secondary/fortree_gym/palettes/14.gbapal" - .incbin "data/tilesets/secondary/fortree_gym/palettes/15.gbapal" - - .align 2 -gTilesetTiles_MossdeepGym:: - .incbin "data/tilesets/secondary/mossdeep_gym/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_MossdeepGym:: - .incbin "data/tilesets/secondary/mossdeep_gym/palettes/00.gbapal" - .incbin "data/tilesets/secondary/mossdeep_gym/palettes/01.gbapal" - .incbin "data/tilesets/secondary/mossdeep_gym/palettes/02.gbapal" - .incbin "data/tilesets/secondary/mossdeep_gym/palettes/03.gbapal" - .incbin "data/tilesets/secondary/mossdeep_gym/palettes/04.gbapal" - .incbin "data/tilesets/secondary/mossdeep_gym/palettes/05.gbapal" - .incbin "data/tilesets/secondary/mossdeep_gym/palettes/06.gbapal" - .incbin "data/tilesets/secondary/mossdeep_gym/palettes/07.gbapal" - .incbin "data/tilesets/secondary/mossdeep_gym/palettes/08.gbapal" - .incbin "data/tilesets/secondary/mossdeep_gym/palettes/09.gbapal" - .incbin "data/tilesets/secondary/mossdeep_gym/palettes/10.gbapal" - .incbin "data/tilesets/secondary/mossdeep_gym/palettes/11.gbapal" - .incbin "data/tilesets/secondary/mossdeep_gym/palettes/12.gbapal" - .incbin "data/tilesets/secondary/mossdeep_gym/palettes/13.gbapal" - .incbin "data/tilesets/secondary/mossdeep_gym/palettes/14.gbapal" - .incbin "data/tilesets/secondary/mossdeep_gym/palettes/15.gbapal" - - .align 2 -gTilesetTiles_SootopolisGym:: - .incbin "data/tilesets/secondary/sootopolis_gym/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_SootopolisGym:: - .incbin "data/tilesets/secondary/sootopolis_gym/palettes/00.gbapal" - .incbin "data/tilesets/secondary/sootopolis_gym/palettes/01.gbapal" - .incbin "data/tilesets/secondary/sootopolis_gym/palettes/02.gbapal" - .incbin "data/tilesets/secondary/sootopolis_gym/palettes/03.gbapal" - .incbin "data/tilesets/secondary/sootopolis_gym/palettes/04.gbapal" - .incbin "data/tilesets/secondary/sootopolis_gym/palettes/05.gbapal" - .incbin "data/tilesets/secondary/sootopolis_gym/palettes/06.gbapal" - .incbin "data/tilesets/secondary/sootopolis_gym/palettes/07.gbapal" - .incbin "data/tilesets/secondary/sootopolis_gym/palettes/08.gbapal" - .incbin "data/tilesets/secondary/sootopolis_gym/palettes/09.gbapal" - .incbin "data/tilesets/secondary/sootopolis_gym/palettes/10.gbapal" - .incbin "data/tilesets/secondary/sootopolis_gym/palettes/11.gbapal" - .incbin "data/tilesets/secondary/sootopolis_gym/palettes/12.gbapal" - .incbin "data/tilesets/secondary/sootopolis_gym/palettes/13.gbapal" - .incbin "data/tilesets/secondary/sootopolis_gym/palettes/14.gbapal" - .incbin "data/tilesets/secondary/sootopolis_gym/palettes/15.gbapal" - - .align 2 -gTilesetTiles_TrickHousePuzzle:: - .incbin "data/tilesets/secondary/trick_house_puzzle/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_TrickHousePuzzle:: - .incbin "data/tilesets/secondary/trick_house_puzzle/palettes/00.gbapal" - .incbin "data/tilesets/secondary/trick_house_puzzle/palettes/01.gbapal" - .incbin "data/tilesets/secondary/trick_house_puzzle/palettes/02.gbapal" - .incbin "data/tilesets/secondary/trick_house_puzzle/palettes/03.gbapal" - .incbin "data/tilesets/secondary/trick_house_puzzle/palettes/04.gbapal" - .incbin "data/tilesets/secondary/trick_house_puzzle/palettes/05.gbapal" - .incbin "data/tilesets/secondary/trick_house_puzzle/palettes/06.gbapal" - .incbin "data/tilesets/secondary/trick_house_puzzle/palettes/07.gbapal" - .incbin "data/tilesets/secondary/trick_house_puzzle/palettes/08.gbapal" - .incbin "data/tilesets/secondary/trick_house_puzzle/palettes/09.gbapal" - .incbin "data/tilesets/secondary/trick_house_puzzle/palettes/10.gbapal" - .incbin "data/tilesets/secondary/trick_house_puzzle/palettes/11.gbapal" - .incbin "data/tilesets/secondary/trick_house_puzzle/palettes/12.gbapal" - .incbin "data/tilesets/secondary/trick_house_puzzle/palettes/13.gbapal" - .incbin "data/tilesets/secondary/trick_house_puzzle/palettes/14.gbapal" - .incbin "data/tilesets/secondary/trick_house_puzzle/palettes/15.gbapal" - - .align 2 -gTilesetTiles_InsideShip:: - .incbin "data/tilesets/secondary/inside_ship/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_InsideShip:: - .incbin "data/tilesets/secondary/inside_ship/palettes/00.gbapal" - .incbin "data/tilesets/secondary/inside_ship/palettes/01.gbapal" - .incbin "data/tilesets/secondary/inside_ship/palettes/02.gbapal" - .incbin "data/tilesets/secondary/inside_ship/palettes/03.gbapal" - .incbin "data/tilesets/secondary/inside_ship/palettes/04.gbapal" - .incbin "data/tilesets/secondary/inside_ship/palettes/05.gbapal" - .incbin "data/tilesets/secondary/inside_ship/palettes/06.gbapal" - .incbin "data/tilesets/secondary/inside_ship/palettes/07.gbapal" - .incbin "data/tilesets/secondary/inside_ship/palettes/08.gbapal" - .incbin "data/tilesets/secondary/inside_ship/palettes/09.gbapal" - .incbin "data/tilesets/secondary/inside_ship/palettes/10.gbapal" - .incbin "data/tilesets/secondary/inside_ship/palettes/11.gbapal" - .incbin "data/tilesets/secondary/inside_ship/palettes/12.gbapal" - .incbin "data/tilesets/secondary/inside_ship/palettes/13.gbapal" - .incbin "data/tilesets/secondary/inside_ship/palettes/14.gbapal" - .incbin "data/tilesets/secondary/inside_ship/palettes/15.gbapal" - - .align 2 -gTilesetTiles_SecretBase:: - .incbin "data/tilesets/primary/secret_base/tiles.4bpp" - - .align 2 - .incbin "data/tilesets/primary/secret_base/unknown_tiles.4bpp" - - .align 2 -gTilesetPalettes_SecretBase:: - .incbin "data/tilesets/primary/secret_base/palettes/00.gbapal" - .incbin "data/tilesets/primary/secret_base/palettes/01.gbapal" - .incbin "data/tilesets/primary/secret_base/palettes/02.gbapal" - .incbin "data/tilesets/primary/secret_base/palettes/03.gbapal" - .incbin "data/tilesets/primary/secret_base/palettes/04.gbapal" - .incbin "data/tilesets/primary/secret_base/palettes/05.gbapal" - .incbin "data/tilesets/primary/secret_base/palettes/06.gbapal" - .incbin "data/tilesets/primary/secret_base/palettes/07.gbapal" - .incbin "data/tilesets/primary/secret_base/palettes/08.gbapal" - .incbin "data/tilesets/primary/secret_base/palettes/09.gbapal" - .incbin "data/tilesets/primary/secret_base/palettes/10.gbapal" - .incbin "data/tilesets/primary/secret_base/palettes/11.gbapal" - .incbin "data/tilesets/primary/secret_base/palettes/12.gbapal" - .incbin "data/tilesets/primary/secret_base/palettes/13.gbapal" - .incbin "data/tilesets/primary/secret_base/palettes/14.gbapal" - .incbin "data/tilesets/primary/secret_base/palettes/15.gbapal" - - .align 2 -gTilesetTiles_EliteFour:: - .incbin "data/tilesets/secondary/elite_four/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_EliteFour:: - .incbin "data/tilesets/secondary/elite_four/palettes/00.gbapal" - .incbin "data/tilesets/secondary/elite_four/palettes/01.gbapal" - .incbin "data/tilesets/secondary/elite_four/palettes/02.gbapal" - .incbin "data/tilesets/secondary/elite_four/palettes/03.gbapal" - .incbin "data/tilesets/secondary/elite_four/palettes/04.gbapal" - .incbin "data/tilesets/secondary/elite_four/palettes/05.gbapal" - .incbin "data/tilesets/secondary/elite_four/palettes/06.gbapal" - .incbin "data/tilesets/secondary/elite_four/palettes/07.gbapal" - .incbin "data/tilesets/secondary/elite_four/palettes/08.gbapal" - .incbin "data/tilesets/secondary/elite_four/palettes/09.gbapal" - .incbin "data/tilesets/secondary/elite_four/palettes/10.gbapal" - .incbin "data/tilesets/secondary/elite_four/palettes/11.gbapal" - .incbin "data/tilesets/secondary/elite_four/palettes/12.gbapal" - .incbin "data/tilesets/secondary/elite_four/palettes/13.gbapal" - .incbin "data/tilesets/secondary/elite_four/palettes/14.gbapal" - .incbin "data/tilesets/secondary/elite_four/palettes/15.gbapal" - - .align 2 -gTilesetTiles_BattleFrontier:: - .incbin "data/tilesets/secondary/battle_frontier/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_BattleFrontier:: - .incbin "data/tilesets/secondary/battle_frontier/palettes/00.gbapal" - .incbin "data/tilesets/secondary/battle_frontier/palettes/01.gbapal" - .incbin "data/tilesets/secondary/battle_frontier/palettes/02.gbapal" - .incbin "data/tilesets/secondary/battle_frontier/palettes/03.gbapal" - .incbin "data/tilesets/secondary/battle_frontier/palettes/04.gbapal" - .incbin "data/tilesets/secondary/battle_frontier/palettes/05.gbapal" - .incbin "data/tilesets/secondary/battle_frontier/palettes/06.gbapal" - .incbin "data/tilesets/secondary/battle_frontier/palettes/07.gbapal" - .incbin "data/tilesets/secondary/battle_frontier/palettes/08.gbapal" - .incbin "data/tilesets/secondary/battle_frontier/palettes/09.gbapal" - .incbin "data/tilesets/secondary/battle_frontier/palettes/10.gbapal" - .incbin "data/tilesets/secondary/battle_frontier/palettes/11.gbapal" - .incbin "data/tilesets/secondary/battle_frontier/palettes/12.gbapal" - .incbin "data/tilesets/secondary/battle_frontier/palettes/13.gbapal" - .incbin "data/tilesets/secondary/battle_frontier/palettes/14.gbapal" - .incbin "data/tilesets/secondary/battle_frontier/palettes/15.gbapal" - - .align 2 -gTilesetTiles_BattlePalace:: - .incbin "data/tilesets/secondary/battle_palace/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_BattlePalace:: - .incbin "data/tilesets/secondary/battle_palace/palettes/00.gbapal" - .incbin "data/tilesets/secondary/battle_palace/palettes/01.gbapal" - .incbin "data/tilesets/secondary/battle_palace/palettes/02.gbapal" - .incbin "data/tilesets/secondary/battle_palace/palettes/03.gbapal" - .incbin "data/tilesets/secondary/battle_palace/palettes/04.gbapal" - .incbin "data/tilesets/secondary/battle_palace/palettes/05.gbapal" - .incbin "data/tilesets/secondary/battle_palace/palettes/06.gbapal" - .incbin "data/tilesets/secondary/battle_palace/palettes/07.gbapal" - .incbin "data/tilesets/secondary/battle_palace/palettes/08.gbapal" - .incbin "data/tilesets/secondary/battle_palace/palettes/09.gbapal" - .incbin "data/tilesets/secondary/battle_palace/palettes/10.gbapal" - .incbin "data/tilesets/secondary/battle_palace/palettes/11.gbapal" - .incbin "data/tilesets/secondary/battle_palace/palettes/12.gbapal" - .incbin "data/tilesets/secondary/battle_palace/palettes/13.gbapal" - .incbin "data/tilesets/secondary/battle_palace/palettes/14.gbapal" - .incbin "data/tilesets/secondary/battle_palace/palettes/15.gbapal" - - .align 2 -gTilesetTiles_BattleDome:: - .incbin "data/tilesets/secondary/battle_dome/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_BattleDome:: - .incbin "data/tilesets/secondary/battle_dome/palettes/00.gbapal" - .incbin "data/tilesets/secondary/battle_dome/palettes/01.gbapal" - .incbin "data/tilesets/secondary/battle_dome/palettes/02.gbapal" - .incbin "data/tilesets/secondary/battle_dome/palettes/03.gbapal" - .incbin "data/tilesets/secondary/battle_dome/palettes/04.gbapal" - .incbin "data/tilesets/secondary/battle_dome/palettes/05.gbapal" - .incbin "data/tilesets/secondary/battle_dome/palettes/06.gbapal" - .incbin "data/tilesets/secondary/battle_dome/palettes/07.gbapal" - .incbin "data/tilesets/secondary/battle_dome/palettes/08.gbapal" - .incbin "data/tilesets/secondary/battle_dome/palettes/09.gbapal" - .incbin "data/tilesets/secondary/battle_dome/palettes/10.gbapal" - .incbin "data/tilesets/secondary/battle_dome/palettes/11.gbapal" - .incbin "data/tilesets/secondary/battle_dome/palettes/12.gbapal" - .incbin "data/tilesets/secondary/battle_dome/palettes/13.gbapal" - .incbin "data/tilesets/secondary/battle_dome/palettes/14.gbapal" - .incbin "data/tilesets/secondary/battle_dome/palettes/15.gbapal" - - .align 2 -gTilesetTiles_BattleFactory:: - .incbin "data/tilesets/secondary/battle_factory/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_BattleFactory:: - .incbin "data/tilesets/secondary/battle_factory/palettes/00.gbapal" - .incbin "data/tilesets/secondary/battle_factory/palettes/01.gbapal" - .incbin "data/tilesets/secondary/battle_factory/palettes/02.gbapal" - .incbin "data/tilesets/secondary/battle_factory/palettes/03.gbapal" - .incbin "data/tilesets/secondary/battle_factory/palettes/04.gbapal" - .incbin "data/tilesets/secondary/battle_factory/palettes/05.gbapal" - .incbin "data/tilesets/secondary/battle_factory/palettes/06.gbapal" - .incbin "data/tilesets/secondary/battle_factory/palettes/07.gbapal" - .incbin "data/tilesets/secondary/battle_factory/palettes/08.gbapal" - .incbin "data/tilesets/secondary/battle_factory/palettes/09.gbapal" - .incbin "data/tilesets/secondary/battle_factory/palettes/10.gbapal" - .incbin "data/tilesets/secondary/battle_factory/palettes/11.gbapal" - .incbin "data/tilesets/secondary/battle_factory/palettes/12.gbapal" - .incbin "data/tilesets/secondary/battle_factory/palettes/13.gbapal" - .incbin "data/tilesets/secondary/battle_factory/palettes/14.gbapal" - .incbin "data/tilesets/secondary/battle_factory/palettes/15.gbapal" - - .align 2 -gTilesetTiles_BattlePike:: - .incbin "data/tilesets/secondary/battle_pike/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_BattlePike:: - .incbin "data/tilesets/secondary/battle_pike/palettes/00.gbapal" - .incbin "data/tilesets/secondary/battle_pike/palettes/01.gbapal" - .incbin "data/tilesets/secondary/battle_pike/palettes/02.gbapal" - .incbin "data/tilesets/secondary/battle_pike/palettes/03.gbapal" - .incbin "data/tilesets/secondary/battle_pike/palettes/04.gbapal" - .incbin "data/tilesets/secondary/battle_pike/palettes/05.gbapal" - .incbin "data/tilesets/secondary/battle_pike/palettes/06.gbapal" - .incbin "data/tilesets/secondary/battle_pike/palettes/07.gbapal" - .incbin "data/tilesets/secondary/battle_pike/palettes/08.gbapal" - .incbin "data/tilesets/secondary/battle_pike/palettes/09.gbapal" - .incbin "data/tilesets/secondary/battle_pike/palettes/10.gbapal" - .incbin "data/tilesets/secondary/battle_pike/palettes/11.gbapal" - .incbin "data/tilesets/secondary/battle_pike/palettes/12.gbapal" - .incbin "data/tilesets/secondary/battle_pike/palettes/13.gbapal" - .incbin "data/tilesets/secondary/battle_pike/palettes/14.gbapal" - .incbin "data/tilesets/secondary/battle_pike/palettes/15.gbapal" - - .align 2 -gTilesetTiles_BattleArena:: - .incbin "data/tilesets/secondary/battle_arena/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_BattleArena:: - .incbin "data/tilesets/secondary/battle_arena/palettes/00.gbapal" - .incbin "data/tilesets/secondary/battle_arena/palettes/01.gbapal" - .incbin "data/tilesets/secondary/battle_arena/palettes/02.gbapal" - .incbin "data/tilesets/secondary/battle_arena/palettes/03.gbapal" - .incbin "data/tilesets/secondary/battle_arena/palettes/04.gbapal" - .incbin "data/tilesets/secondary/battle_arena/palettes/05.gbapal" - .incbin "data/tilesets/secondary/battle_arena/palettes/06.gbapal" - .incbin "data/tilesets/secondary/battle_arena/palettes/07.gbapal" - .incbin "data/tilesets/secondary/battle_arena/palettes/08.gbapal" - .incbin "data/tilesets/secondary/battle_arena/palettes/09.gbapal" - .incbin "data/tilesets/secondary/battle_arena/palettes/10.gbapal" - .incbin "data/tilesets/secondary/battle_arena/palettes/11.gbapal" - .incbin "data/tilesets/secondary/battle_arena/palettes/12.gbapal" - .incbin "data/tilesets/secondary/battle_arena/palettes/13.gbapal" - .incbin "data/tilesets/secondary/battle_arena/palettes/14.gbapal" - .incbin "data/tilesets/secondary/battle_arena/palettes/15.gbapal" - - .align 2 -gTilesetTiles_BattlePyramid:: - .incbin "data/tilesets/secondary/battle_pyramid/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_BattlePyramid:: - .incbin "data/tilesets/secondary/battle_pyramid/palettes/00.gbapal" - .incbin "data/tilesets/secondary/battle_pyramid/palettes/01.gbapal" - .incbin "data/tilesets/secondary/battle_pyramid/palettes/02.gbapal" - .incbin "data/tilesets/secondary/battle_pyramid/palettes/03.gbapal" - .incbin "data/tilesets/secondary/battle_pyramid/palettes/04.gbapal" - .incbin "data/tilesets/secondary/battle_pyramid/palettes/05.gbapal" - .incbin "data/tilesets/secondary/battle_pyramid/palettes/06.gbapal" - .incbin "data/tilesets/secondary/battle_pyramid/palettes/07.gbapal" - .incbin "data/tilesets/secondary/battle_pyramid/palettes/08.gbapal" - .incbin "data/tilesets/secondary/battle_pyramid/palettes/09.gbapal" - .incbin "data/tilesets/secondary/battle_pyramid/palettes/10.gbapal" - .incbin "data/tilesets/secondary/battle_pyramid/palettes/11.gbapal" - .incbin "data/tilesets/secondary/battle_pyramid/palettes/12.gbapal" - .incbin "data/tilesets/secondary/battle_pyramid/palettes/13.gbapal" - .incbin "data/tilesets/secondary/battle_pyramid/palettes/14.gbapal" - .incbin "data/tilesets/secondary/battle_pyramid/palettes/15.gbapal" - - .align 2 -gTilesetTiles_MirageTower:: - .incbin "data/tilesets/secondary/mirage_tower/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_MirageTower:: - .incbin "data/tilesets/secondary/mirage_tower/palettes/00.gbapal" - .incbin "data/tilesets/secondary/mirage_tower/palettes/01.gbapal" - .incbin "data/tilesets/secondary/mirage_tower/palettes/02.gbapal" - .incbin "data/tilesets/secondary/mirage_tower/palettes/03.gbapal" - .incbin "data/tilesets/secondary/mirage_tower/palettes/04.gbapal" - .incbin "data/tilesets/secondary/mirage_tower/palettes/05.gbapal" - .incbin "data/tilesets/secondary/mirage_tower/palettes/06.gbapal" - .incbin "data/tilesets/secondary/mirage_tower/palettes/07.gbapal" - .incbin "data/tilesets/secondary/mirage_tower/palettes/08.gbapal" - .incbin "data/tilesets/secondary/mirage_tower/palettes/09.gbapal" - .incbin "data/tilesets/secondary/mirage_tower/palettes/10.gbapal" - .incbin "data/tilesets/secondary/mirage_tower/palettes/11.gbapal" - .incbin "data/tilesets/secondary/mirage_tower/palettes/12.gbapal" - .incbin "data/tilesets/secondary/mirage_tower/palettes/13.gbapal" - .incbin "data/tilesets/secondary/mirage_tower/palettes/14.gbapal" - .incbin "data/tilesets/secondary/mirage_tower/palettes/15.gbapal" - - .align 2 -gTilesetTiles_MossdeepGameCorner:: - .incbin "data/tilesets/secondary/mossdeep_game_corner/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_MossdeepGameCorner:: - .incbin "data/tilesets/secondary/mossdeep_game_corner/palettes/00.gbapal" - .incbin "data/tilesets/secondary/mossdeep_game_corner/palettes/01.gbapal" - .incbin "data/tilesets/secondary/mossdeep_game_corner/palettes/02.gbapal" - .incbin "data/tilesets/secondary/mossdeep_game_corner/palettes/03.gbapal" - .incbin "data/tilesets/secondary/mossdeep_game_corner/palettes/04.gbapal" - .incbin "data/tilesets/secondary/mossdeep_game_corner/palettes/05.gbapal" - .incbin "data/tilesets/secondary/mossdeep_game_corner/palettes/06.gbapal" - .incbin "data/tilesets/secondary/mossdeep_game_corner/palettes/07.gbapal" - .incbin "data/tilesets/secondary/mossdeep_game_corner/palettes/08.gbapal" - .incbin "data/tilesets/secondary/mossdeep_game_corner/palettes/09.gbapal" - .incbin "data/tilesets/secondary/mossdeep_game_corner/palettes/10.gbapal" - .incbin "data/tilesets/secondary/mossdeep_game_corner/palettes/11.gbapal" - .incbin "data/tilesets/secondary/mossdeep_game_corner/palettes/12.gbapal" - .incbin "data/tilesets/secondary/mossdeep_game_corner/palettes/13.gbapal" - .incbin "data/tilesets/secondary/mossdeep_game_corner/palettes/14.gbapal" - .incbin "data/tilesets/secondary/mossdeep_game_corner/palettes/15.gbapal" - - .align 2 -gTilesetTiles_IslandHarbor:: - .incbin "data/tilesets/secondary/island_harbor/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_IslandHarbor:: - .incbin "data/tilesets/secondary/island_harbor/palettes/00.gbapal" - .incbin "data/tilesets/secondary/island_harbor/palettes/01.gbapal" - .incbin "data/tilesets/secondary/island_harbor/palettes/02.gbapal" - .incbin "data/tilesets/secondary/island_harbor/palettes/03.gbapal" - .incbin "data/tilesets/secondary/island_harbor/palettes/04.gbapal" - .incbin "data/tilesets/secondary/island_harbor/palettes/05.gbapal" - .incbin "data/tilesets/secondary/island_harbor/palettes/06.gbapal" - .incbin "data/tilesets/secondary/island_harbor/palettes/07.gbapal" - .incbin "data/tilesets/secondary/island_harbor/palettes/08.gbapal" - .incbin "data/tilesets/secondary/island_harbor/palettes/09.gbapal" - .incbin "data/tilesets/secondary/island_harbor/palettes/10.gbapal" - .incbin "data/tilesets/secondary/island_harbor/palettes/11.gbapal" - .incbin "data/tilesets/secondary/island_harbor/palettes/12.gbapal" - .incbin "data/tilesets/secondary/island_harbor/palettes/13.gbapal" - .incbin "data/tilesets/secondary/island_harbor/palettes/14.gbapal" - .incbin "data/tilesets/secondary/island_harbor/palettes/15.gbapal" - - .align 2 -gTilesetTiles_TrainerHill:: - .incbin "data/tilesets/secondary/trainer_hill/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_TrainerHill:: - .incbin "data/tilesets/secondary/trainer_hill/palettes/00.gbapal" - .incbin "data/tilesets/secondary/trainer_hill/palettes/01.gbapal" - .incbin "data/tilesets/secondary/trainer_hill/palettes/02.gbapal" - .incbin "data/tilesets/secondary/trainer_hill/palettes/03.gbapal" - .incbin "data/tilesets/secondary/trainer_hill/palettes/04.gbapal" - .incbin "data/tilesets/secondary/trainer_hill/palettes/05.gbapal" - .incbin "data/tilesets/secondary/trainer_hill/palettes/06.gbapal" - .incbin "data/tilesets/secondary/trainer_hill/palettes/07.gbapal" - .incbin "data/tilesets/secondary/trainer_hill/palettes/08.gbapal" - .incbin "data/tilesets/secondary/trainer_hill/palettes/09.gbapal" - .incbin "data/tilesets/secondary/trainer_hill/palettes/10.gbapal" - .incbin "data/tilesets/secondary/trainer_hill/palettes/11.gbapal" - .incbin "data/tilesets/secondary/trainer_hill/palettes/12.gbapal" - .incbin "data/tilesets/secondary/trainer_hill/palettes/13.gbapal" - .incbin "data/tilesets/secondary/trainer_hill/palettes/14.gbapal" - .incbin "data/tilesets/secondary/trainer_hill/palettes/15.gbapal" - - .align 2 -gTilesetTiles_NavelRock:: - .incbin "data/tilesets/secondary/navel_rock/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_NavelRock:: - .incbin "data/tilesets/secondary/navel_rock/palettes/00.gbapal" - .incbin "data/tilesets/secondary/navel_rock/palettes/01.gbapal" - .incbin "data/tilesets/secondary/navel_rock/palettes/02.gbapal" - .incbin "data/tilesets/secondary/navel_rock/palettes/03.gbapal" - .incbin "data/tilesets/secondary/navel_rock/palettes/04.gbapal" - .incbin "data/tilesets/secondary/navel_rock/palettes/05.gbapal" - .incbin "data/tilesets/secondary/navel_rock/palettes/06.gbapal" - .incbin "data/tilesets/secondary/navel_rock/palettes/07.gbapal" - .incbin "data/tilesets/secondary/navel_rock/palettes/08.gbapal" - .incbin "data/tilesets/secondary/navel_rock/palettes/09.gbapal" - .incbin "data/tilesets/secondary/navel_rock/palettes/10.gbapal" - .incbin "data/tilesets/secondary/navel_rock/palettes/11.gbapal" - .incbin "data/tilesets/secondary/navel_rock/palettes/12.gbapal" - .incbin "data/tilesets/secondary/navel_rock/palettes/13.gbapal" - .incbin "data/tilesets/secondary/navel_rock/palettes/14.gbapal" - .incbin "data/tilesets/secondary/navel_rock/palettes/15.gbapal" - - .align 2 -gTilesetTiles_BattleFrontierRankingHall:: - .incbin "data/tilesets/secondary/battle_frontier_ranking_hall/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_BattleFrontierRankingHall:: - .incbin "data/tilesets/secondary/battle_frontier_ranking_hall/palettes/00.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_ranking_hall/palettes/01.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_ranking_hall/palettes/02.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_ranking_hall/palettes/03.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_ranking_hall/palettes/04.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_ranking_hall/palettes/05.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_ranking_hall/palettes/06.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_ranking_hall/palettes/07.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_ranking_hall/palettes/08.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_ranking_hall/palettes/09.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_ranking_hall/palettes/10.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_ranking_hall/palettes/11.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_ranking_hall/palettes/12.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_ranking_hall/palettes/13.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_ranking_hall/palettes/14.gbapal" - .incbin "data/tilesets/secondary/battle_frontier_ranking_hall/palettes/15.gbapal" - - .align 2 -gTilesetTiles_BattleTent:: - .incbin "data/tilesets/secondary/battle_tent/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_BattleTent:: - .incbin "data/tilesets/secondary/battle_tent/palettes/00.gbapal" - .incbin "data/tilesets/secondary/battle_tent/palettes/01.gbapal" - .incbin "data/tilesets/secondary/battle_tent/palettes/02.gbapal" - .incbin "data/tilesets/secondary/battle_tent/palettes/03.gbapal" - .incbin "data/tilesets/secondary/battle_tent/palettes/04.gbapal" - .incbin "data/tilesets/secondary/battle_tent/palettes/05.gbapal" - .incbin "data/tilesets/secondary/battle_tent/palettes/06.gbapal" - .incbin "data/tilesets/secondary/battle_tent/palettes/07.gbapal" - .incbin "data/tilesets/secondary/battle_tent/palettes/08.gbapal" - .incbin "data/tilesets/secondary/battle_tent/palettes/09.gbapal" - .incbin "data/tilesets/secondary/battle_tent/palettes/10.gbapal" - .incbin "data/tilesets/secondary/battle_tent/palettes/11.gbapal" - .incbin "data/tilesets/secondary/battle_tent/palettes/12.gbapal" - .incbin "data/tilesets/secondary/battle_tent/palettes/13.gbapal" - .incbin "data/tilesets/secondary/battle_tent/palettes/14.gbapal" - .incbin "data/tilesets/secondary/battle_tent/palettes/15.gbapal" - - .align 2 -gTilesetTiles_MysteryEventsHouse:: - .incbin "data/tilesets/secondary/mystery_events_house/tiles.4bpp.lz" - - .align 2 -gTilesetPalettes_MysteryEventsHouse:: - .incbin "data/tilesets/secondary/mystery_events_house/palettes/00.gbapal" - .incbin "data/tilesets/secondary/mystery_events_house/palettes/01.gbapal" - .incbin "data/tilesets/secondary/mystery_events_house/palettes/02.gbapal" - .incbin "data/tilesets/secondary/mystery_events_house/palettes/03.gbapal" - .incbin "data/tilesets/secondary/mystery_events_house/palettes/04.gbapal" - .incbin "data/tilesets/secondary/mystery_events_house/palettes/05.gbapal" - .incbin "data/tilesets/secondary/mystery_events_house/palettes/06.gbapal" - .incbin "data/tilesets/secondary/mystery_events_house/palettes/07.gbapal" - .incbin "data/tilesets/secondary/mystery_events_house/palettes/08.gbapal" - .incbin "data/tilesets/secondary/mystery_events_house/palettes/09.gbapal" - .incbin "data/tilesets/secondary/mystery_events_house/palettes/10.gbapal" - .incbin "data/tilesets/secondary/mystery_events_house/palettes/11.gbapal" - .incbin "data/tilesets/secondary/mystery_events_house/palettes/12.gbapal" - .incbin "data/tilesets/secondary/mystery_events_house/palettes/13.gbapal" - .incbin "data/tilesets/secondary/mystery_events_house/palettes/14.gbapal" - .incbin "data/tilesets/secondary/mystery_events_house/palettes/15.gbapal" - - .align 2 -gTilesetPalettes_UnionRoom:: - .incbin "data/tilesets/secondary/union_room/palettes/00.gbapal" - .incbin "data/tilesets/secondary/union_room/palettes/01.gbapal" - .incbin "data/tilesets/secondary/union_room/palettes/02.gbapal" - .incbin "data/tilesets/secondary/union_room/palettes/03.gbapal" - .incbin "data/tilesets/secondary/union_room/palettes/04.gbapal" - .incbin "data/tilesets/secondary/union_room/palettes/05.gbapal" - .incbin "data/tilesets/secondary/union_room/palettes/06.gbapal" - .incbin "data/tilesets/secondary/union_room/palettes/07.gbapal" - .incbin "data/tilesets/secondary/union_room/palettes/08.gbapal" - .incbin "data/tilesets/secondary/union_room/palettes/09.gbapal" - .incbin "data/tilesets/secondary/union_room/palettes/10.gbapal" - .incbin "data/tilesets/secondary/union_room/palettes/11.gbapal" - .incbin "data/tilesets/secondary/union_room/palettes/12.gbapal" - .incbin "data/tilesets/secondary/union_room/palettes/13.gbapal" - .incbin "data/tilesets/secondary/union_room/palettes/14.gbapal" - .incbin "data/tilesets/secondary/union_room/palettes/15.gbapal" - - .align 2 -gTilesetTiles_UnionRoom:: - .incbin "data/tilesets/secondary/union_room/tiles.4bpp.lz" diff --git a/data/tilesets/headers.inc b/data/tilesets/headers.inc deleted file mode 100644 index 6324e943c..000000000 --- a/data/tilesets/headers.inc +++ /dev/null @@ -1,832 +0,0 @@ - .align 2 -gTileset_General:: - .byte TRUE @ is compressed - .byte FALSE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_General - .4byte gTilesetPalettes_General - .4byte gMetatiles_General - .4byte gMetatileAttributes_General - .4byte InitTilesetAnim_General - - .align 2 -gTileset_Petalburg:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_Petalburg - .4byte gTilesetPalettes_Petalburg - .4byte gMetatiles_Petalburg - .4byte gMetatileAttributes_Petalburg - .4byte InitTilesetAnim_Petalburg - - .align 2 -gTileset_Rustboro:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_Rustboro - .4byte gTilesetPalettes_Rustboro - .4byte gMetatiles_Rustboro - .4byte gMetatileAttributes_Rustboro - .4byte InitTilesetAnim_Rustboro - - .align 2 -gTileset_Dewford:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_Dewford - .4byte gTilesetPalettes_Dewford - .4byte gMetatiles_Dewford - .4byte gMetatileAttributes_Dewford - .4byte InitTilesetAnim_Dewford - - .align 2 -gTileset_Slateport:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_Slateport - .4byte gTilesetPalettes_Slateport - .4byte gMetatiles_Slateport - .4byte gMetatileAttributes_Slateport - .4byte InitTilesetAnim_Slateport - - .align 2 -gTileset_Mauville:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_Mauville - .4byte gTilesetPalettes_Mauville - .4byte gMetatiles_Mauville - .4byte gMetatileAttributes_Mauville - .4byte InitTilesetAnim_Mauville - - .align 2 -gTileset_Lavaridge:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_Lavaridge - .4byte gTilesetPalettes_Lavaridge - .4byte gMetatiles_Lavaridge - .4byte gMetatileAttributes_Lavaridge - .4byte InitTilesetAnim_Lavaridge - - .align 2 -gTileset_Fallarbor:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_Fallarbor - .4byte gTilesetPalettes_Fallarbor - .4byte gMetatiles_Fallarbor - .4byte gMetatileAttributes_Fallarbor - .4byte InitTilesetAnim_Fallarbor - - .align 2 -gTileset_Fortree:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_Fortree - .4byte gTilesetPalettes_Fortree - .4byte gMetatiles_Fortree - .4byte gMetatileAttributes_Fortree - .4byte InitTilesetAnim_Fortree - - .align 2 -gTileset_Lilycove:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_Lilycove - .4byte gTilesetPalettes_Lilycove - .4byte gMetatiles_Lilycove - .4byte gMetatileAttributes_Lilycove - .4byte InitTilesetAnim_Lilycove - - .align 2 -gTileset_Mossdeep:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_Mossdeep - .4byte gTilesetPalettes_Mossdeep - .4byte gMetatiles_Mossdeep - .4byte gMetatileAttributes_Mossdeep - .4byte InitTilesetAnim_Mossdeep - - .align 2 -gTileset_EverGrande:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_EverGrande - .4byte gTilesetPalettes_EverGrande - .4byte gMetatiles_EverGrande - .4byte gMetatileAttributes_EverGrande - .4byte InitTilesetAnim_EverGrande - - .align 2 -gTileset_Pacifidlog:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_Pacifidlog - .4byte gTilesetPalettes_Pacifidlog - .4byte gMetatiles_Pacifidlog - .4byte gMetatileAttributes_Pacifidlog - .4byte InitTilesetAnim_Pacifidlog - - .align 2 -gTileset_Sootopolis:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_Sootopolis - .4byte gTilesetPalettes_Sootopolis - .4byte gMetatiles_Sootopolis - .4byte gMetatileAttributes_Sootopolis - .4byte InitTilesetAnim_Sootopolis - - .align 2 -gTileset_BattleFrontierOutsideWest:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_BattleFrontierOutsideWest - .4byte gTilesetPalettes_BattleFrontierOutsideWest - .4byte gMetatiles_BattleFrontierOutsideWest - .4byte gMetatileAttributes_BattleFrontierOutsideWest - .4byte InitTilesetAnim_BattleFrontierOutsideWest - - .align 2 -gTileset_BattleFrontierOutsideEast:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_BattleFrontierOutsideEast - .4byte gTilesetPalettes_BattleFrontierOutsideEast - .4byte gMetatiles_BattleFrontierOutsideEast - .4byte gMetatileAttributes_BattleFrontierOutsideEast - .4byte InitTilesetAnim_BattleFrontierOutsideEast - - .align 2 -gTileset_Building:: - .byte TRUE @ is compressed - .byte FALSE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_InsideBuilding - .4byte gTilesetPalettes_InsideBuilding - .4byte gMetatiles_InsideBuilding - .4byte gMetatileAttributes_InsideBuilding - .4byte InitTilesetAnim_Building - - .align 2 -gTileset_Shop:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_Shop - .4byte gTilesetPalettes_Shop - .4byte gMetatiles_Shop - .4byte gMetatileAttributes_Shop - .4byte NULL @ animation callback - - .align 2 -gTileset_PokemonCenter:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_PokemonCenter - .4byte gTilesetPalettes_PokemonCenter - .4byte gMetatiles_PokemonCenter - .4byte gMetatileAttributes_PokemonCenter - .4byte NULL @ animation callback - - .align 2 -gTileset_Cave:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_Cave - .4byte gTilesetPalettes_Cave - .4byte gMetatiles_Cave - .4byte gMetatileAttributes_Cave - .4byte InitTilesetAnim_Cave - - .align 2 -gTileset_PokemonSchool:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_PokemonSchool - .4byte gTilesetPalettes_PokemonSchool - .4byte gMetatiles_PokemonSchool - .4byte gMetatileAttributes_PokemonSchool - .4byte NULL @ animation callback - - .align 2 -gTileset_PokemonFanClub:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_PokemonFanClub - .4byte gTilesetPalettes_PokemonFanClub - .4byte gMetatiles_PokemonFanClub - .4byte gMetatileAttributes_PokemonFanClub - .4byte NULL @ animation callback - - .align 2 -gTileset_Unused1:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_Unused1 - .4byte gTilesetPalettes_Unused1 - .4byte gMetatiles_Unused1 - .4byte gMetatileAttributes_Unused1 - .4byte NULL @ animation callback - - .align 2 -gTileset_MeteorFalls:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_MeteorFalls - .4byte gTilesetPalettes_MeteorFalls - .4byte gMetatiles_MeteorFalls - .4byte gMetatileAttributes_MeteorFalls - .4byte NULL @ animation callback - - .align 2 -gTileset_OceanicMuseum:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_OceanicMuseum - .4byte gTilesetPalettes_OceanicMuseum - .4byte gMetatiles_OceanicMuseum - .4byte gMetatileAttributes_OceanicMuseum - .4byte NULL @ animation callback - - .align 2 -gTileset_CableClub:: - .byte FALSE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_CableClub - .4byte gTilesetPalettes_CableClub - .4byte gMetatiles_CableClub - .4byte gMetatileAttributes_CableClub - .4byte NULL @ animation callback - - .align 2 -gTileset_SeashoreHouse:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_SeashoreHouse - .4byte gTilesetPalettes_SeashoreHouse - .4byte gMetatiles_SeashoreHouse - .4byte gMetatileAttributes_SeashoreHouse - .4byte NULL @ animation callback - - .align 2 -gTileset_PrettyPetalFlowerShop:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_PrettyPetalFlowerShop - .4byte gTilesetPalettes_PrettyPetalFlowerShop - .4byte gMetatiles_PrettyPetalFlowerShop - .4byte gMetatileAttributes_PrettyPetalFlowerShop - .4byte NULL @ animation callback - - .align 2 -gTileset_PokemonDayCare:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_PokemonDayCare - .4byte gTilesetPalettes_PokemonDayCare - .4byte gMetatiles_PokemonDayCare - .4byte gMetatileAttributes_PokemonDayCare - .4byte NULL @ animation callback - - .align 2 -gTileset_Facility:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_Facility - .4byte gTilesetPalettes_Facility - .4byte gMetatiles_Facility - .4byte gMetatileAttributes_Facility - .4byte NULL @ animation callback - - .align 2 -gTileset_BikeShop:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_BikeShop - .4byte gTilesetPalettes_BikeShop - .4byte gMetatiles_BikeShop - .4byte gMetatileAttributes_BikeShop - .4byte InitTilesetAnim_BikeShop - - .align 2 -gTileset_RusturfTunnel:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_RusturfTunnel - .4byte gTilesetPalettes_RusturfTunnel - .4byte gMetatiles_RusturfTunnel - .4byte gMetatileAttributes_RusturfTunnel - .4byte NULL @ animation callback - - .align 2 -gTileset_SecretBaseBrownCave:: - .byte FALSE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_SecretBaseBrownCave - .4byte gTilesetPalettes_SecretBaseBrownCave - .4byte gMetatiles_SecretBaseSecondary - .4byte gMetatileAttributes_SecretBaseSecondary - .4byte NULL @ animation callback - - .align 2 -gTileset_SecretBaseTree:: - .byte FALSE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_SecretBaseTree - .4byte gTilesetPalettes_SecretBaseTree - .4byte gMetatiles_SecretBaseSecondary - .4byte gMetatileAttributes_SecretBaseSecondary - .4byte NULL @ animation callback - - .align 2 -gTileset_SecretBaseShrub:: - .byte FALSE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_SecretBaseShrub - .4byte gTilesetPalettes_SecretBaseShrub - .4byte gMetatiles_SecretBaseSecondary - .4byte gMetatileAttributes_SecretBaseSecondary - .4byte NULL @ animation callback - - .align 2 -gTileset_SecretBaseBlueCave:: - .byte FALSE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_SecretBaseBlueCave - .4byte gTilesetPalettes_SecretBaseBlueCave - .4byte gMetatiles_SecretBaseSecondary - .4byte gMetatileAttributes_SecretBaseSecondary - .4byte NULL @ animation callback - - .align 2 -gTileset_SecretBaseYellowCave:: - .byte FALSE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_SecretBaseYellowCave - .4byte gTilesetPalettes_SecretBaseYellowCave - .4byte gMetatiles_SecretBaseSecondary - .4byte gMetatileAttributes_SecretBaseSecondary - .4byte NULL @ animation callback - - .align 2 -gTileset_SecretBaseRedCave:: - .byte FALSE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_SecretBaseRedCave - .4byte gTilesetPalettes_SecretBaseRedCave - .4byte gMetatiles_SecretBaseSecondary - .4byte gMetatileAttributes_SecretBaseSecondary - .4byte NULL @ animation callback - - .align 2 -gTileset_InsideOfTruck:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_InsideOfTruck - .4byte gTilesetPalettes_InsideOfTruck - .4byte gMetatiles_InsideOfTruck - .4byte gMetatileAttributes_InsideOfTruck - .4byte NULL @ animation callback - - .align 2 -gTileset_Unused2:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_Unused2 - .4byte gTilesetPalettes_Unused2 - .4byte gMetatiles_Unused2 - .4byte gMetatileAttributes_Unused2 - .4byte NULL @ animation callback - - .align 2 -gTileset_Contest:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_Contest - .4byte gTilesetPalettes_Contest - .4byte gMetatiles_Contest - .4byte gMetatileAttributes_Contest - .4byte NULL @ animation callback - - .align 2 -gTileset_LilycoveMuseum:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_LilycoveMuseum - .4byte gTilesetPalettes_LilycoveMuseum - .4byte gMetatiles_LilycoveMuseum - .4byte gMetatileAttributes_LilycoveMuseum - .4byte NULL @ animation callback - - .align 2 -gTileset_BrendansMaysHouse:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_BrendansMaysHouse - .4byte gTilesetPalettes_BrendansMaysHouse - .4byte gMetatiles_BrendansMaysHouse - .4byte gMetatileAttributes_BrendansMaysHouse - .4byte NULL @ animation callback - - .align 2 -gTileset_Lab:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_Lab - .4byte gTilesetPalettes_Lab - .4byte gMetatiles_Lab - .4byte gMetatileAttributes_Lab - .4byte NULL @ animation callback - - .align 2 -gTileset_Underwater:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_Underwater - .4byte gTilesetPalettes_Underwater - .4byte gMetatiles_Underwater - .4byte gMetatileAttributes_Underwater - .4byte InitTilesetAnim_Underwater - - .align 2 -gTileset_PetalburgGym:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_PetalburgGym - .4byte gTilesetPalettes_PetalburgGym - .4byte gMetatiles_PetalburgGym - .4byte gMetatileAttributes_PetalburgGym - .4byte NULL @ animation callback - - .align 2 -gTileset_SootopolisGym:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_SootopolisGym - .4byte gTilesetPalettes_SootopolisGym - .4byte gMetatiles_SootopolisGym - .4byte gMetatileAttributes_SootopolisGym - .4byte InitTilesetAnim_SootopolisGym - - .align 2 -gTileset_GenericBuilding:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_GenericBuilding - .4byte gTilesetPalettes_GenericBuilding - .4byte gMetatiles_GenericBuilding - .4byte gMetatileAttributes_GenericBuilding - .4byte NULL @ animation callback - - .align 2 -gTileset_MauvilleGameCorner:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_MauvilleGameCorner - .4byte gTilesetPalettes_MauvilleGameCorner - .4byte gMetatiles_MauvilleGameCorner - .4byte gMetatileAttributes_MauvilleGameCorner - .4byte NULL @ animation callback - - .align 2 -gTileset_RustboroGym:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_RustboroGym - .4byte gTilesetPalettes_RustboroGym - .4byte gMetatiles_RustboroGym - .4byte gMetatileAttributes_RustboroGym - .4byte NULL @ animation callback - - .align 2 -gTileset_DewfordGym:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_DewfordGym - .4byte gTilesetPalettes_DewfordGym - .4byte gMetatiles_DewfordGym - .4byte gMetatileAttributes_DewfordGym - .4byte NULL @ animation callback - - .align 2 -gTileset_MauvilleGym:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_MauvilleGym - .4byte gTilesetPalettes_MauvilleGym - .4byte gMetatiles_MauvilleGym - .4byte gMetatileAttributes_MauvilleGym - .4byte InitTilesetAnim_MauvilleGym - - .align 2 -gTileset_LavaridgeGym:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_LavaridgeGym - .4byte gTilesetPalettes_LavaridgeGym - .4byte gMetatiles_LavaridgeGym - .4byte gMetatileAttributes_LavaridgeGym - .4byte NULL @ animation callback - - .align 2 -gTileset_TrickHousePuzzle:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_TrickHousePuzzle - .4byte gTilesetPalettes_TrickHousePuzzle - .4byte gMetatiles_TrickHousePuzzle - .4byte gMetatileAttributes_TrickHousePuzzle - .4byte NULL @ animation callback - - .align 2 -gTileset_FortreeGym:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_FortreeGym - .4byte gTilesetPalettes_FortreeGym - .4byte gMetatiles_FortreeGym - .4byte gMetatileAttributes_FortreeGym - .4byte NULL @ animation callback - - .align 2 -gTileset_MossdeepGym:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_MossdeepGym - .4byte gTilesetPalettes_MossdeepGym - .4byte gMetatiles_MossdeepGym - .4byte gMetatileAttributes_MossdeepGym - .4byte NULL @ animation callback - - .align 2 -gTileset_InsideShip:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_InsideShip - .4byte gTilesetPalettes_InsideShip - .4byte gMetatiles_InsideShip - .4byte gMetatileAttributes_InsideShip - .4byte NULL @ animation callback - - .align 2 -gTileset_SecretBase:: - .byte FALSE @ is compressed - .byte FALSE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_SecretBase - .4byte gTilesetPalettes_SecretBase - .4byte gMetatiles_SecretBasePrimary - .4byte gMetatileAttributes_SecretBasePrimary - .4byte NULL @ animation callback - - .align 2 -gTilesetPointer_SecretBase:: - .4byte gTileset_SecretBase - - .align 2 -gTilesetPointer_SecretBaseRedCave:: - .4byte gTileset_SecretBaseRedCave - - .align 2 -gTileset_EliteFour:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_EliteFour - .4byte gTilesetPalettes_EliteFour - .4byte gMetatiles_EliteFour - .4byte gMetatileAttributes_EliteFour - .4byte InitTilesetAnim_EliteFour - - .align 2 -gTileset_BattleFrontier:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_BattleFrontier - .4byte gTilesetPalettes_BattleFrontier - .4byte gMetatiles_BattleFrontier - .4byte gMetatileAttributes_BattleFrontier - .4byte NULL @ animation callback - - .align 2 -gTileset_BattlePalace:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_BattlePalace - .4byte gTilesetPalettes_BattlePalace - .4byte gMetatiles_BattlePalace - .4byte gMetatileAttributes_BattlePalace - .4byte NULL @ animation callback - - .align 2 -gTileset_BattleDome:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_BattleDome - .4byte gTilesetPalettes_BattleDome - .4byte gMetatiles_BattleDome - .4byte gMetatileAttributes_BattleDome - .4byte InitTilesetAnim_BattleDome - - .align 2 -gTileset_BattleFactory:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_BattleFactory - .4byte gTilesetPalettes_BattleFactory - .4byte gMetatiles_BattleFactory - .4byte gMetatileAttributes_BattleFactory - .4byte NULL @ animation callback - - .align 2 -gTileset_BattlePike:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_BattlePike - .4byte gTilesetPalettes_BattlePike - .4byte gMetatiles_BattlePike - .4byte gMetatileAttributes_BattlePike - .4byte NULL @ animation callback - - .align 2 -gTileset_BattleArena:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_BattleArena - .4byte gTilesetPalettes_BattleArena - .4byte gMetatiles_BattleArena - .4byte gMetatileAttributes_BattleArena - .4byte NULL @ animation callback - - .align 2 -gTileset_BattlePyramid:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_BattlePyramid - .4byte gTilesetPalettes_BattlePyramid - .4byte gMetatiles_BattlePyramid - .4byte gMetatileAttributes_BattlePyramid - .4byte InitTilesetAnim_BattlePyramid - - .align 2 -gTileset_MirageTower:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_MirageTower - .4byte gTilesetPalettes_MirageTower - .4byte gMetatiles_MirageTower - .4byte gMetatileAttributes_MirageTower - .4byte NULL @ animation callback - - .align 2 -gTileset_MossdeepGameCorner:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_MossdeepGameCorner - .4byte gTilesetPalettes_MossdeepGameCorner - .4byte gMetatiles_MossdeepGameCorner - .4byte gMetatileAttributes_MossdeepGameCorner - .4byte NULL @ animation callback - - .align 2 -gTileset_IslandHarbor:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_IslandHarbor - .4byte gTilesetPalettes_IslandHarbor - .4byte gMetatiles_IslandHarbor - .4byte gMetatileAttributes_IslandHarbor - .4byte NULL @ animation callback - - .align 2 -gTileset_TrainerHill:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_TrainerHill - .4byte gTilesetPalettes_TrainerHill - .4byte gMetatiles_TrainerHill - .4byte gMetatileAttributes_TrainerHill - .4byte NULL @ animation callback - - .align 2 -gTileset_NavelRock:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_NavelRock - .4byte gTilesetPalettes_NavelRock - .4byte gMetatiles_NavelRock - .4byte gMetatileAttributes_NavelRock - .4byte NULL @ animation callback - - .align 2 -gTileset_BattleFrontierRankingHall:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_BattleFrontierRankingHall - .4byte gTilesetPalettes_BattleFrontierRankingHall - .4byte gMetatiles_BattleFrontierRankingHall - .4byte gMetatileAttributes_BattleFrontierRankingHall - .4byte NULL @ animation callback - - .align 2 -gTileset_BattleTent:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_BattleTent - .4byte gTilesetPalettes_BattleTent - .4byte gMetatiles_BattleTent - .4byte gMetatileAttributes_BattleTent - .4byte NULL @ animation callback - - .align 2 -gTileset_MysteryEventsHouse:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_MysteryEventsHouse - .4byte gTilesetPalettes_MysteryEventsHouse - .4byte gMetatiles_MysteryEventsHouse - .4byte gMetatileAttributes_MysteryEventsHouse - .4byte NULL @ animation callback - - .align 2 -gTileset_UnionRoom:: - .byte TRUE @ is compressed - .byte TRUE @ is secondary tileset - .2byte 0 @ padding - .4byte gTilesetTiles_UnionRoom - .4byte gTilesetPalettes_UnionRoom - .4byte gMetatiles_UnionRoom - .4byte gMetatileAttributes_UnionRoom - .4byte NULL @ animation callback diff --git a/data/tilesets/metatiles.inc b/data/tilesets/metatiles.inc deleted file mode 100644 index 5fbb529d0..000000000 --- a/data/tilesets/metatiles.inc +++ /dev/null @@ -1,559 +0,0 @@ - .align 1 -gMetatiles_General:: - .incbin "data/tilesets/primary/general/metatiles.bin" - - .align 1 -gMetatileAttributes_General:: - .incbin "data/tilesets/primary/general/metatile_attributes.bin" - - .align 1 -gMetatiles_Petalburg:: - .incbin "data/tilesets/secondary/petalburg/metatiles.bin" - - .align 1 -gMetatileAttributes_Petalburg:: - .incbin "data/tilesets/secondary/petalburg/metatile_attributes.bin" - - .align 1 -gMetatiles_Rustboro:: - .incbin "data/tilesets/secondary/rustboro/metatiles.bin" - - .align 1 -gMetatileAttributes_Rustboro:: - .incbin "data/tilesets/secondary/rustboro/metatile_attributes.bin" - - .align 1 -gMetatiles_Dewford:: - .incbin "data/tilesets/secondary/dewford/metatiles.bin" - - .align 1 -gMetatileAttributes_Dewford:: - .incbin "data/tilesets/secondary/dewford/metatile_attributes.bin" - - .align 1 -gMetatiles_Slateport:: - .incbin "data/tilesets/secondary/slateport/metatiles.bin" - - .align 1 -gMetatileAttributes_Slateport:: - .incbin "data/tilesets/secondary/slateport/metatile_attributes.bin" - - .align 1 -gMetatiles_Mauville:: - .incbin "data/tilesets/secondary/mauville/metatiles.bin" - - .align 1 -gMetatileAttributes_Mauville:: - .incbin "data/tilesets/secondary/mauville/metatile_attributes.bin" - - .align 1 -gMetatiles_Lavaridge:: - .incbin "data/tilesets/secondary/lavaridge/metatiles.bin" - - .align 1 -gMetatileAttributes_Lavaridge:: - .incbin "data/tilesets/secondary/lavaridge/metatile_attributes.bin" - - .align 1 -gMetatiles_Fallarbor:: - .incbin "data/tilesets/secondary/fallarbor/metatiles.bin" - - .align 1 -gMetatileAttributes_Fallarbor:: - .incbin "data/tilesets/secondary/fallarbor/metatile_attributes.bin" - - .align 1 -gMetatiles_Fortree:: - .incbin "data/tilesets/secondary/fortree/metatiles.bin" - - .align 1 -gMetatileAttributes_Fortree:: - .incbin "data/tilesets/secondary/fortree/metatile_attributes.bin" - - .align 1 -gMetatiles_Lilycove:: - .incbin "data/tilesets/secondary/lilycove/metatiles.bin" - - .align 1 -gMetatileAttributes_Lilycove:: - .incbin "data/tilesets/secondary/lilycove/metatile_attributes.bin" - - .align 1 -gMetatiles_Mossdeep:: - .incbin "data/tilesets/secondary/mossdeep/metatiles.bin" - - .align 1 -gMetatileAttributes_Mossdeep:: - .incbin "data/tilesets/secondary/mossdeep/metatile_attributes.bin" - - .align 1 -gMetatiles_EverGrande:: - .incbin "data/tilesets/secondary/ever_grande/metatiles.bin" - - .align 1 -gMetatileAttributes_EverGrande:: - .incbin "data/tilesets/secondary/ever_grande/metatile_attributes.bin" - - .align 1 -gMetatiles_Pacifidlog:: - .incbin "data/tilesets/secondary/pacifidlog/metatiles.bin" - - .align 1 -gMetatileAttributes_Pacifidlog:: - .incbin "data/tilesets/secondary/pacifidlog/metatile_attributes.bin" - - .align 1 -gMetatiles_Sootopolis:: - .incbin "data/tilesets/secondary/sootopolis/metatiles.bin" - - .align 1 -gMetatileAttributes_Sootopolis:: - .incbin "data/tilesets/secondary/sootopolis/metatile_attributes.bin" - - .align 1 -gMetatiles_BattleFrontierOutsideWest:: - .incbin "data/tilesets/secondary/battle_frontier_outside_west/metatiles.bin" - - .align 1 -gMetatileAttributes_BattleFrontierOutsideWest:: - .incbin "data/tilesets/secondary/battle_frontier_outside_west/metatile_attributes.bin" - - .align 1 -gMetatiles_BattleFrontierOutsideEast:: - .incbin "data/tilesets/secondary/battle_frontier_outside_east/metatiles.bin" - - .align 1 -gMetatileAttributes_BattleFrontierOutsideEast:: - .incbin "data/tilesets/secondary/battle_frontier_outside_east/metatile_attributes.bin" - - .align 1 -gMetatiles_InsideBuilding:: - .incbin "data/tilesets/primary/building/metatiles.bin" - - .align 1 -gMetatileAttributes_InsideBuilding:: - .incbin "data/tilesets/primary/building/metatile_attributes.bin" - - .align 1 -gMetatiles_Shop:: - .incbin "data/tilesets/secondary/shop/metatiles.bin" - - .align 1 -gMetatileAttributes_Shop:: - .incbin "data/tilesets/secondary/shop/metatile_attributes.bin" - - .align 1 -gMetatiles_PokemonCenter:: - .incbin "data/tilesets/secondary/pokemon_center/metatiles.bin" - - .align 1 -gMetatileAttributes_PokemonCenter:: - .incbin "data/tilesets/secondary/pokemon_center/metatile_attributes.bin" - - .align 1 -gMetatiles_Cave:: - .incbin "data/tilesets/secondary/cave/metatiles.bin" - - .align 1 -gMetatileAttributes_Cave:: - .incbin "data/tilesets/secondary/cave/metatile_attributes.bin" - - .align 1 -gMetatiles_PokemonSchool:: - .incbin "data/tilesets/secondary/pokemon_school/metatiles.bin" - - .align 1 -gMetatileAttributes_PokemonSchool:: - .incbin "data/tilesets/secondary/pokemon_school/metatile_attributes.bin" - - .align 1 -gMetatiles_PokemonFanClub:: - .incbin "data/tilesets/secondary/pokemon_fan_club/metatiles.bin" - - .align 1 -gMetatileAttributes_PokemonFanClub:: - .incbin "data/tilesets/secondary/pokemon_fan_club/metatile_attributes.bin" - - .align 1 -gMetatiles_Unused1:: - .incbin "data/tilesets/secondary/unused_1/metatiles.bin" - - .align 1 -gMetatileAttributes_Unused1:: - .incbin "data/tilesets/secondary/unused_1/metatile_attributes.bin" - - .align 1 -gMetatiles_MeteorFalls:: - .incbin "data/tilesets/secondary/meteor_falls/metatiles.bin" - - .align 1 -gMetatileAttributes_MeteorFalls:: - .incbin "data/tilesets/secondary/meteor_falls/metatile_attributes.bin" - - .align 1 -gMetatiles_OceanicMuseum:: - .incbin "data/tilesets/secondary/oceanic_museum/metatiles.bin" - - .align 1 -gMetatileAttributes_OceanicMuseum:: - .incbin "data/tilesets/secondary/oceanic_museum/metatile_attributes.bin" - - .align 1 -gMetatiles_CableClub:: - .incbin "data/tilesets/secondary/cable_club/metatiles.bin" - - .align 1 -gMetatileAttributes_CableClub:: - .incbin "data/tilesets/secondary/cable_club/metatile_attributes.bin" - - .align 1 -gMetatiles_SeashoreHouse:: - .incbin "data/tilesets/secondary/seashore_house/metatiles.bin" - - .align 1 -gMetatileAttributes_SeashoreHouse:: - .incbin "data/tilesets/secondary/seashore_house/metatile_attributes.bin" - - .align 1 -gMetatiles_PrettyPetalFlowerShop:: - .incbin "data/tilesets/secondary/pretty_petal_flower_shop/metatiles.bin" - - .align 1 -gMetatileAttributes_PrettyPetalFlowerShop:: - .incbin "data/tilesets/secondary/pretty_petal_flower_shop/metatile_attributes.bin" - - .align 1 -gMetatiles_PokemonDayCare:: - .incbin "data/tilesets/secondary/pokemon_day_care/metatiles.bin" - - .align 1 -gMetatileAttributes_PokemonDayCare:: - .incbin "data/tilesets/secondary/pokemon_day_care/metatile_attributes.bin" - - .align 1 -gMetatiles_Facility:: - .incbin "data/tilesets/secondary/facility/metatiles.bin" - - .align 1 -gMetatileAttributes_Facility:: - .incbin "data/tilesets/secondary/facility/metatile_attributes.bin" - - .align 1 -gMetatiles_BikeShop:: - .incbin "data/tilesets/secondary/bike_shop/metatiles.bin" - - .align 1 -gMetatileAttributes_BikeShop:: - .incbin "data/tilesets/secondary/bike_shop/metatile_attributes.bin" - - .align 1 -gMetatiles_RusturfTunnel:: - .incbin "data/tilesets/secondary/rusturf_tunnel/metatiles.bin" - - .align 1 -gMetatileAttributes_RusturfTunnel:: - .incbin "data/tilesets/secondary/rusturf_tunnel/metatile_attributes.bin" - - .align 1 -gMetatiles_SecretBaseSecondary:: - .incbin "data/tilesets/secondary/secret_base/metatiles.bin" - - .align 1 -gMetatileAttributes_SecretBaseSecondary:: - .incbin "data/tilesets/secondary/secret_base/metatile_attributes.bin" - - .align 1 -gMetatiles_InsideOfTruck:: - .incbin "data/tilesets/secondary/inside_of_truck/metatiles.bin" - - .align 1 -gMetatileAttributes_InsideOfTruck:: - .incbin "data/tilesets/secondary/inside_of_truck/metatile_attributes.bin" - - .align 1 -gMetatiles_Contest:: - .incbin "data/tilesets/secondary/contest/metatiles.bin" - - .align 1 -gMetatileAttributes_Contest:: - .incbin "data/tilesets/secondary/contest/metatile_attributes.bin" - - .align 1 -gMetatiles_LilycoveMuseum:: - .incbin "data/tilesets/secondary/lilycove_museum/metatiles.bin" - - .align 1 -gMetatileAttributes_LilycoveMuseum:: - .incbin "data/tilesets/secondary/lilycove_museum/metatile_attributes.bin" - - .align 1 -gMetatiles_BrendansMaysHouse:: - .incbin "data/tilesets/secondary/brendans_mays_house/metatiles.bin" - - .align 1 -gMetatileAttributes_BrendansMaysHouse:: - .incbin "data/tilesets/secondary/brendans_mays_house/metatile_attributes.bin" - - .align 1 -gMetatiles_Lab:: - .incbin "data/tilesets/secondary/lab/metatiles.bin" - - .align 1 -gMetatileAttributes_Lab:: - .incbin "data/tilesets/secondary/lab/metatile_attributes.bin" - - .align 1 -gMetatiles_Underwater:: - .incbin "data/tilesets/secondary/underwater/metatiles.bin" - - .align 1 -gMetatileAttributes_Underwater:: - .incbin "data/tilesets/secondary/underwater/metatile_attributes.bin" - - .align 1 -gMetatiles_GenericBuilding:: - .incbin "data/tilesets/secondary/generic_building/metatiles.bin" - - .align 1 -gMetatileAttributes_GenericBuilding:: - .incbin "data/tilesets/secondary/generic_building/metatile_attributes.bin" - - .align 1 -gMetatiles_MauvilleGameCorner:: - .incbin "data/tilesets/secondary/mauville_game_corner/metatiles.bin" - - .align 1 -gMetatileAttributes_MauvilleGameCorner:: - .incbin "data/tilesets/secondary/mauville_game_corner/metatile_attributes.bin" - - .align 1 -gMetatiles_Unused2:: - .incbin "data/tilesets/secondary/unused_2/metatiles.bin" - - .align 1 -gMetatileAttributes_Unused2:: - .incbin "data/tilesets/secondary/unused_2/metatile_attributes.bin" - - .align 1 -gMetatiles_RustboroGym:: - .incbin "data/tilesets/secondary/rustboro_gym/metatiles.bin" - - .align 1 -gMetatileAttributes_RustboroGym:: - .incbin "data/tilesets/secondary/rustboro_gym/metatile_attributes.bin" - - .align 1 -gMetatiles_DewfordGym:: - .incbin "data/tilesets/secondary/dewford_gym/metatiles.bin" - - .align 1 -gMetatileAttributes_DewfordGym:: - .incbin "data/tilesets/secondary/dewford_gym/metatile_attributes.bin" - - .align 1 -gMetatiles_MauvilleGym:: - .incbin "data/tilesets/secondary/mauville_gym/metatiles.bin" - - .align 1 -gMetatileAttributes_MauvilleGym:: - .incbin "data/tilesets/secondary/mauville_gym/metatile_attributes.bin" - - .align 1 -gMetatiles_LavaridgeGym:: - .incbin "data/tilesets/secondary/lavaridge_gym/metatiles.bin" - - .align 1 -gMetatileAttributes_LavaridgeGym:: - .incbin "data/tilesets/secondary/lavaridge_gym/metatile_attributes.bin" - - .align 1 -gMetatiles_PetalburgGym:: - .incbin "data/tilesets/secondary/petalburg_gym/metatiles.bin" - - .align 1 -gMetatileAttributes_PetalburgGym:: - .incbin "data/tilesets/secondary/petalburg_gym/metatile_attributes.bin" - - .align 1 -gMetatiles_FortreeGym:: - .incbin "data/tilesets/secondary/fortree_gym/metatiles.bin" - - .align 1 -gMetatileAttributes_FortreeGym:: - .incbin "data/tilesets/secondary/fortree_gym/metatile_attributes.bin" - - .align 1 -gMetatiles_MossdeepGym:: - .incbin "data/tilesets/secondary/mossdeep_gym/metatiles.bin" - - .align 1 -gMetatileAttributes_MossdeepGym:: - .incbin "data/tilesets/secondary/mossdeep_gym/metatile_attributes.bin" - - .align 1 -gMetatiles_SootopolisGym:: - .incbin "data/tilesets/secondary/sootopolis_gym/metatiles.bin" - - .align 1 -gMetatileAttributes_SootopolisGym:: - .incbin "data/tilesets/secondary/sootopolis_gym/metatile_attributes.bin" - - .align 1 -gMetatiles_TrickHousePuzzle:: - .incbin "data/tilesets/secondary/trick_house_puzzle/metatiles.bin" - - .align 1 -gMetatileAttributes_TrickHousePuzzle:: - .incbin "data/tilesets/secondary/trick_house_puzzle/metatile_attributes.bin" - - .align 1 -gMetatiles_InsideShip:: - .incbin "data/tilesets/secondary/inside_ship/metatiles.bin" - - .align 1 -gMetatileAttributes_InsideShip:: - .incbin "data/tilesets/secondary/inside_ship/metatile_attributes.bin" - - .align 1 -gMetatiles_SecretBasePrimary:: - .incbin "data/tilesets/primary/secret_base/metatiles.bin" - - .align 1 -gMetatileAttributes_SecretBasePrimary:: - .incbin "data/tilesets/primary/secret_base/metatile_attributes.bin" - - .align 1 -gMetatiles_EliteFour:: - .incbin "data/tilesets/secondary/elite_four/metatiles.bin" - - .align 1 -gMetatileAttributes_EliteFour:: - .incbin "data/tilesets/secondary/elite_four/metatile_attributes.bin" - - .align 1 -gMetatiles_BattleFrontier:: - .incbin "data/tilesets/secondary/battle_frontier/metatiles.bin" - - .align 1 -gMetatileAttributes_BattleFrontier:: - .incbin "data/tilesets/secondary/battle_frontier/metatile_attributes.bin" - - .align 1 -gMetatiles_BattlePalace:: - .incbin "data/tilesets/secondary/battle_palace/metatiles.bin" - - .align 1 -gMetatileAttributes_BattlePalace:: - .incbin "data/tilesets/secondary/battle_palace/metatile_attributes.bin" - - .align 1 -gMetatiles_BattleDome:: - .incbin "data/tilesets/secondary/battle_dome/metatiles.bin" - - .align 1 -gMetatileAttributes_BattleDome:: - .incbin "data/tilesets/secondary/battle_dome/metatile_attributes.bin" - - .align 1 -gMetatiles_BattleFactory:: - .incbin "data/tilesets/secondary/battle_factory/metatiles.bin" - - .align 1 -gMetatileAttributes_BattleFactory:: - .incbin "data/tilesets/secondary/battle_factory/metatile_attributes.bin" - - .align 1 -gMetatiles_BattlePike:: - .incbin "data/tilesets/secondary/battle_pike/metatiles.bin" - - .align 1 -gMetatileAttributes_BattlePike:: - .incbin "data/tilesets/secondary/battle_pike/metatile_attributes.bin" - - .align 1 -gMetatiles_BattleArena:: - .incbin "data/tilesets/secondary/battle_arena/metatiles.bin" - - .align 1 -gMetatileAttributes_BattleArena:: - .incbin "data/tilesets/secondary/battle_arena/metatile_attributes.bin" - - .align 1 -gMetatiles_BattlePyramid:: - .incbin "data/tilesets/secondary/battle_pyramid/metatiles.bin" - - .align 1 -gMetatileAttributes_BattlePyramid:: - .incbin "data/tilesets/secondary/battle_pyramid/metatile_attributes.bin" - - .align 1 -gMetatiles_MirageTower:: - .incbin "data/tilesets/secondary/mirage_tower/metatiles.bin" - - .align 1 -gMetatileAttributes_MirageTower:: - .incbin "data/tilesets/secondary/mirage_tower/metatile_attributes.bin" - - .align 1 -gMetatiles_MossdeepGameCorner:: - .incbin "data/tilesets/secondary/mossdeep_game_corner/metatiles.bin" - - .align 1 -gMetatileAttributes_MossdeepGameCorner:: - .incbin "data/tilesets/secondary/mossdeep_game_corner/metatile_attributes.bin" - - .align 1 -gMetatiles_IslandHarbor:: - .incbin "data/tilesets/secondary/island_harbor/metatiles.bin" - - .align 1 -gMetatileAttributes_IslandHarbor:: - .incbin "data/tilesets/secondary/island_harbor/metatile_attributes.bin" - - .align 1 -gMetatiles_TrainerHill:: - .incbin "data/tilesets/secondary/trainer_hill/metatiles.bin" - - .align 1 -gMetatileAttributes_TrainerHill:: - .incbin "data/tilesets/secondary/trainer_hill/metatile_attributes.bin" - - .align 1 -gMetatiles_NavelRock:: - .incbin "data/tilesets/secondary/navel_rock/metatiles.bin" - - .align 1 -gMetatileAttributes_NavelRock:: - .incbin "data/tilesets/secondary/navel_rock/metatile_attributes.bin" - - .align 1 -gMetatiles_BattleFrontierRankingHall:: - .incbin "data/tilesets/secondary/battle_frontier_ranking_hall/metatiles.bin" - - .align 1 -gMetatileAttributes_BattleFrontierRankingHall:: - .incbin "data/tilesets/secondary/battle_frontier_ranking_hall/metatile_attributes.bin" - - .align 1 -gMetatiles_BattleTent:: - .incbin "data/tilesets/secondary/battle_tent/metatiles.bin" - - .align 1 -gMetatileAttributes_BattleTent:: - .incbin "data/tilesets/secondary/battle_tent/metatile_attributes.bin" - - .align 1 -gMetatiles_MysteryEventsHouse:: - .incbin "data/tilesets/secondary/mystery_events_house/metatiles.bin" - - .align 1 -gMetatileAttributes_MysteryEventsHouse:: - .incbin "data/tilesets/secondary/mystery_events_house/metatile_attributes.bin" - - .align 1 -gMetatiles_UnionRoom:: - .incbin "data/tilesets/secondary/union_room/metatiles.bin" - - .align 1 -gMetatileAttributes_UnionRoom:: - .incbin "data/tilesets/secondary/union_room/metatile_attributes.bin" diff --git a/gflib/characters.h b/gflib/characters.h index 714904aa4..8ed440e63 100644 --- a/gflib/characters.h +++ b/gflib/characters.h @@ -212,13 +212,13 @@ #define EXT_CTRL_CODE_COLOR_HIGHLIGHT_SHADOW 0x04 #define EXT_CTRL_CODE_PALETTE 0x05 #define EXT_CTRL_CODE_FONT 0x06 -#define EXT_CTRL_CODE_RESET_SIZE 0x07 +#define EXT_CTRL_CODE_RESET_FONT 0x07 #define EXT_CTRL_CODE_PAUSE 0x08 #define EXT_CTRL_CODE_PAUSE_UNTIL_PRESS 0x09 #define EXT_CTRL_CODE_WAIT_SE 0x0A #define EXT_CTRL_CODE_PLAY_BGM 0x0B #define EXT_CTRL_CODE_ESCAPE 0x0C -#define EXT_CTRL_CODE_SHIFT_TEXT 0x0D +#define EXT_CTRL_CODE_SHIFT_RIGHT 0x0D #define EXT_CTRL_CODE_SHIFT_DOWN 0x0E #define EXT_CTRL_CODE_FILL_WINDOW 0x0F #define EXT_CTRL_CODE_PLAY_SE 0x10 diff --git a/gflib/string_util.c b/gflib/string_util.c index 4bf8d946d..8d969d1bf 100644 --- a/gflib/string_util.c +++ b/gflib/string_util.c @@ -354,7 +354,7 @@ u8 *StringExpandPlaceholders(u8 *dest, const u8 *src) switch (c) { - case EXT_CTRL_CODE_RESET_SIZE: + case EXT_CTRL_CODE_RESET_FONT: case EXT_CTRL_CODE_PAUSE_UNTIL_PRESS: case EXT_CTRL_CODE_FILL_WINDOW: case EXT_CTRL_CODE_JPN: @@ -665,13 +665,13 @@ u8 GetExtCtrlCodeLength(u8 code) [EXT_CTRL_CODE_COLOR_HIGHLIGHT_SHADOW] = 4, [EXT_CTRL_CODE_PALETTE] = 2, [EXT_CTRL_CODE_FONT] = 2, - [EXT_CTRL_CODE_RESET_SIZE] = 1, + [EXT_CTRL_CODE_RESET_FONT] = 1, [EXT_CTRL_CODE_PAUSE] = 2, [EXT_CTRL_CODE_PAUSE_UNTIL_PRESS] = 1, [EXT_CTRL_CODE_WAIT_SE] = 1, [EXT_CTRL_CODE_PLAY_BGM] = 3, [EXT_CTRL_CODE_ESCAPE] = 2, - [EXT_CTRL_CODE_SHIFT_TEXT] = 2, + [EXT_CTRL_CODE_SHIFT_RIGHT] = 2, [EXT_CTRL_CODE_SHIFT_DOWN] = 2, [EXT_CTRL_CODE_FILL_WINDOW] = 1, [EXT_CTRL_CODE_PLAY_SE] = 3, diff --git a/gflib/text.c b/gflib/text.c index e7a7d5957..86dca3829 100644 --- a/gflib/text.c +++ b/gflib/text.c @@ -1009,7 +1009,7 @@ static u16 RenderText(struct TextPrinter *textPrinter) subStruct->fontId = *textPrinter->printerTemplate.currentChar; textPrinter->printerTemplate.currentChar++; return RENDER_REPEAT; - case EXT_CTRL_CODE_RESET_SIZE: + case EXT_CTRL_CODE_RESET_FONT: return RENDER_REPEAT; case EXT_CTRL_CODE_PAUSE: textPrinter->delayCounter = *textPrinter->printerTemplate.currentChar; @@ -1042,7 +1042,7 @@ static u16 RenderText(struct TextPrinter *textPrinter) textPrinter->printerTemplate.currentChar++; PlaySE(currChar); return RENDER_REPEAT; - case EXT_CTRL_CODE_SHIFT_TEXT: + case EXT_CTRL_CODE_SHIFT_RIGHT: textPrinter->printerTemplate.currentX = textPrinter->printerTemplate.x + *textPrinter->printerTemplate.currentChar; textPrinter->printerTemplate.currentChar++; return RENDER_REPEAT; @@ -1271,7 +1271,7 @@ static u32 GetStringWidthFixedWidthFont(const u8 *str, u8 fontId, u8 letterSpaci case EXT_CTRL_CODE_FONT: case EXT_CTRL_CODE_PAUSE: case EXT_CTRL_CODE_ESCAPE: - case EXT_CTRL_CODE_SHIFT_TEXT: + case EXT_CTRL_CODE_SHIFT_RIGHT: case EXT_CTRL_CODE_SHIFT_DOWN: case EXT_CTRL_CODE_CLEAR: case EXT_CTRL_CODE_SKIP: @@ -1279,7 +1279,7 @@ static u32 GetStringWidthFixedWidthFont(const u8 *str, u8 fontId, u8 letterSpaci case EXT_CTRL_CODE_MIN_LETTER_SPACING: ++strPos; break; - case EXT_CTRL_CODE_RESET_SIZE: + case EXT_CTRL_CODE_RESET_FONT: case EXT_CTRL_CODE_PAUSE_UNTIL_PRESS: case EXT_CTRL_CODE_WAIT_SE: case EXT_CTRL_CODE_FILL_WINDOW: @@ -1413,7 +1413,7 @@ s32 GetStringWidth(u8 fontId, const u8 *str, s16 letterSpacing) case EXT_CTRL_CODE_PALETTE: case EXT_CTRL_CODE_PAUSE: case EXT_CTRL_CODE_ESCAPE: - case EXT_CTRL_CODE_SHIFT_TEXT: + case EXT_CTRL_CODE_SHIFT_RIGHT: case EXT_CTRL_CODE_SHIFT_DOWN: ++str; break; @@ -1444,7 +1444,7 @@ s32 GetStringWidth(u8 fontId, const u8 *str, s16 letterSpacing) case EXT_CTRL_CODE_ENG: isJapanese = 0; break; - case EXT_CTRL_CODE_RESET_SIZE: + case EXT_CTRL_CODE_RESET_FONT: case EXT_CTRL_CODE_PAUSE_UNTIL_PRESS: case EXT_CTRL_CODE_WAIT_SE: case EXT_CTRL_CODE_FILL_WINDOW: @@ -1556,7 +1556,7 @@ u8 RenderTextHandleBold(u8 *pixels, u8 fontId, u8 *str) case EXT_CTRL_CODE_PALETTE: case EXT_CTRL_CODE_PAUSE: case EXT_CTRL_CODE_ESCAPE: - case EXT_CTRL_CODE_SHIFT_TEXT: + case EXT_CTRL_CODE_SHIFT_RIGHT: case EXT_CTRL_CODE_SHIFT_DOWN: case EXT_CTRL_CODE_CLEAR: case EXT_CTRL_CODE_SKIP: @@ -1564,7 +1564,7 @@ u8 RenderTextHandleBold(u8 *pixels, u8 fontId, u8 *str) case EXT_CTRL_CODE_MIN_LETTER_SPACING: ++strPos; break; - case EXT_CTRL_CODE_RESET_SIZE: + case EXT_CTRL_CODE_RESET_FONT: case EXT_CTRL_CODE_PAUSE_UNTIL_PRESS: case EXT_CTRL_CODE_WAIT_SE: case EXT_CTRL_CODE_FILL_WINDOW: diff --git a/graphics/interface/red_arrow.png b/graphics/interface/arrow_cursor.png similarity index 100% rename from graphics/interface/red_arrow.png rename to graphics/interface/arrow_cursor.png diff --git a/graphics/interface/selector_outline.png b/graphics/interface/outline_cursor.png similarity index 100% rename from graphics/interface/selector_outline.png rename to graphics/interface/outline_cursor.png diff --git a/graphics/interface/red.pal b/graphics/interface/red.pal new file mode 100644 index 000000000..f820b52bb --- /dev/null +++ b/graphics/interface/red.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 164 197 +255 82 0 +131 32 0 +255 0 255 +255 0 255 +255 0 255 +255 0 255 +255 0 255 +255 0 255 +255 0 255 +255 0 255 +255 0 255 +255 0 255 +255 0 255 +255 0 255 +255 0 255 diff --git a/graphics/interface/red_arrow_other.png b/graphics/interface/scroll_indicator.png similarity index 100% rename from graphics/interface/red_arrow_other.png rename to graphics/interface/scroll_indicator.png diff --git a/graphics/link/wireless_info_screen.pal b/graphics/link/wireless_info_screen.pal deleted file mode 100644 index 8e0bc0581..000000000 --- a/graphics/link/wireless_info_screen.pal +++ /dev/null @@ -1,259 +0,0 @@ -JASC-PAL -0100 -256 -0 0 0 -90 90 90 -90 90 90 -90 90 90 -90 90 90 -90 90 90 -90 90 90 -90 90 90 -57 57 57 -172 123 0 -90 90 90 -57 57 57 -164 164 164 -255 180 0 -106 106 106 -74 74 74 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -90 90 90 -90 90 90 -90 90 90 -90 90 90 -90 90 90 -90 90 90 -74 246 255 -57 57 57 -172 123 0 -90 90 90 -57 57 57 -164 164 164 -255 180 0 -106 106 106 -74 74 74 -0 0 0 -90 90 90 -90 90 90 -90 90 90 -90 90 90 -90 90 90 -74 246 255 -57 213 230 -57 57 57 -172 123 0 -90 90 90 -57 57 57 -164 164 164 -255 180 0 -106 106 106 -74 74 74 -0 0 0 -90 90 90 -90 90 90 -90 90 90 -90 90 90 -74 246 255 -57 213 230 -49 180 205 -0 32 98 -172 123 0 -90 90 90 -57 57 57 -164 164 164 -255 180 0 -106 106 106 -74 74 74 -0 0 0 -90 90 90 -90 90 90 -90 90 90 -74 246 255 -57 213 230 -49 180 205 -41 148 180 -0 32 98 -172 123 0 -90 90 90 -57 57 57 -164 164 164 -255 180 0 -106 106 106 -74 74 74 -0 0 0 -90 90 90 -90 90 90 -74 246 255 -57 213 230 -49 180 205 -41 148 180 -24 123 164 -0 32 98 -172 123 0 -90 90 90 -57 57 57 -164 164 164 -255 180 0 -106 106 106 -74 74 74 -0 0 0 -90 90 90 -74 246 255 -57 213 230 -49 180 205 -41 148 180 -24 123 164 -16 90 139 -0 32 98 -172 123 0 -90 90 90 -57 57 57 -164 164 164 -255 180 0 -106 106 106 -74 74 74 -0 0 0 -74 246 255 -57 213 230 -49 180 205 -41 148 180 -24 123 164 -16 90 139 -8 57 115 -0 32 98 -172 123 0 -90 90 90 -57 57 57 -164 164 164 -255 180 0 -106 106 106 -74 74 74 -0 0 0 -57 213 230 -49 180 205 -41 148 180 -24 123 164 -16 90 139 -8 57 115 -8 57 115 -57 57 57 -172 123 0 -90 90 90 -57 57 57 -164 164 164 -255 180 0 -106 106 106 -74 74 74 -0 0 0 -49 180 205 -41 148 180 -24 123 164 -16 90 139 -8 57 115 -8 57 115 -90 90 90 -57 57 57 -172 123 0 -90 90 90 -57 57 57 -164 164 164 -255 180 0 -106 106 106 -74 74 74 -0 0 0 -41 148 180 -24 123 164 -16 90 139 -8 57 115 -8 57 115 -90 90 90 -90 90 90 -57 57 57 -172 123 0 -90 90 90 -57 57 57 -164 164 164 -255 180 0 -106 106 106 -74 74 74 -0 0 0 -24 123 164 -16 90 139 -8 57 115 -8 57 115 -90 90 90 -90 90 90 -90 90 90 -57 57 57 -172 123 0 -90 90 90 -57 57 57 -164 164 164 -255 180 0 -106 106 106 -74 74 74 -0 0 0 -16 90 139 -8 57 115 -8 57 115 -90 90 90 -90 90 90 -90 90 90 -90 90 90 -57 57 57 -172 123 0 -90 90 90 -57 57 57 -164 164 164 -255 180 0 -106 106 106 -74 74 74 -0 0 0 -8 57 115 -8 57 115 -90 90 90 -90 90 90 -90 90 90 -90 90 90 -90 90 90 -57 57 57 -172 123 0 -90 90 90 -57 57 57 -164 164 164 -255 180 0 -106 106 106 -74 74 74 -0 0 0 -90 90 90 -90 90 90 -90 90 90 -90 90 90 -90 90 90 -90 90 90 -90 90 90 -57 57 57 -172 123 0 -90 90 90 -57 57 57 -164 164 164 -255 180 0 -106 106 106 -74 74 74 diff --git a/graphics/link/wireless_info_screen.png b/graphics/link/wireless_info_screen.png deleted file mode 100644 index 796b2771a..000000000 Binary files a/graphics/link/wireless_info_screen.png and /dev/null differ diff --git a/graphics/pokemon/bastiodon/icon.png b/graphics/pokemon/bastiodon/icon.png index 62cea4b65..f44b73587 100644 Binary files a/graphics/pokemon/bastiodon/icon.png and b/graphics/pokemon/bastiodon/icon.png differ diff --git a/graphics/pokenav/city_maps/dewford_0.bin b/graphics/pokenav/region_map/city_maps/dewford_0.bin similarity index 100% rename from graphics/pokenav/city_maps/dewford_0.bin rename to graphics/pokenav/region_map/city_maps/dewford_0.bin diff --git a/graphics/pokenav/city_maps/ever_grande_0.bin b/graphics/pokenav/region_map/city_maps/ever_grande_0.bin similarity index 100% rename from graphics/pokenav/city_maps/ever_grande_0.bin rename to graphics/pokenav/region_map/city_maps/ever_grande_0.bin diff --git a/graphics/pokenav/city_maps/ever_grande_1.bin b/graphics/pokenav/region_map/city_maps/ever_grande_1.bin similarity index 100% rename from graphics/pokenav/city_maps/ever_grande_1.bin rename to graphics/pokenav/region_map/city_maps/ever_grande_1.bin diff --git a/graphics/pokenav/city_maps/fallarbor_0.bin b/graphics/pokenav/region_map/city_maps/fallarbor_0.bin similarity index 100% rename from graphics/pokenav/city_maps/fallarbor_0.bin rename to graphics/pokenav/region_map/city_maps/fallarbor_0.bin diff --git a/graphics/pokenav/city_maps/fortree_0.bin b/graphics/pokenav/region_map/city_maps/fortree_0.bin similarity index 100% rename from graphics/pokenav/city_maps/fortree_0.bin rename to graphics/pokenav/region_map/city_maps/fortree_0.bin diff --git a/graphics/pokenav/city_maps/lavaridge_0.bin b/graphics/pokenav/region_map/city_maps/lavaridge_0.bin similarity index 100% rename from graphics/pokenav/city_maps/lavaridge_0.bin rename to graphics/pokenav/region_map/city_maps/lavaridge_0.bin diff --git a/graphics/pokenav/city_maps/lilycove_0.bin b/graphics/pokenav/region_map/city_maps/lilycove_0.bin similarity index 100% rename from graphics/pokenav/city_maps/lilycove_0.bin rename to graphics/pokenav/region_map/city_maps/lilycove_0.bin diff --git a/graphics/pokenav/city_maps/lilycove_1.bin b/graphics/pokenav/region_map/city_maps/lilycove_1.bin similarity index 100% rename from graphics/pokenav/city_maps/lilycove_1.bin rename to graphics/pokenav/region_map/city_maps/lilycove_1.bin diff --git a/graphics/pokenav/city_maps/littleroot_0.bin b/graphics/pokenav/region_map/city_maps/littleroot_0.bin similarity index 100% rename from graphics/pokenav/city_maps/littleroot_0.bin rename to graphics/pokenav/region_map/city_maps/littleroot_0.bin diff --git a/graphics/pokenav/city_maps/mauville_0.bin b/graphics/pokenav/region_map/city_maps/mauville_0.bin similarity index 100% rename from graphics/pokenav/city_maps/mauville_0.bin rename to graphics/pokenav/region_map/city_maps/mauville_0.bin diff --git a/graphics/pokenav/city_maps/mauville_1.bin b/graphics/pokenav/region_map/city_maps/mauville_1.bin similarity index 100% rename from graphics/pokenav/city_maps/mauville_1.bin rename to graphics/pokenav/region_map/city_maps/mauville_1.bin diff --git a/graphics/pokenav/city_maps/mossdeep_0.bin b/graphics/pokenav/region_map/city_maps/mossdeep_0.bin similarity index 100% rename from graphics/pokenav/city_maps/mossdeep_0.bin rename to graphics/pokenav/region_map/city_maps/mossdeep_0.bin diff --git a/graphics/pokenav/city_maps/mossdeep_1.bin b/graphics/pokenav/region_map/city_maps/mossdeep_1.bin similarity index 100% rename from graphics/pokenav/city_maps/mossdeep_1.bin rename to graphics/pokenav/region_map/city_maps/mossdeep_1.bin diff --git a/graphics/pokenav/city_maps/oldale_0.bin b/graphics/pokenav/region_map/city_maps/oldale_0.bin similarity index 100% rename from graphics/pokenav/city_maps/oldale_0.bin rename to graphics/pokenav/region_map/city_maps/oldale_0.bin diff --git a/graphics/pokenav/city_maps/pacifidlog_0.bin b/graphics/pokenav/region_map/city_maps/pacifidlog_0.bin similarity index 100% rename from graphics/pokenav/city_maps/pacifidlog_0.bin rename to graphics/pokenav/region_map/city_maps/pacifidlog_0.bin diff --git a/graphics/pokenav/city_maps/petalburg_0.bin b/graphics/pokenav/region_map/city_maps/petalburg_0.bin similarity index 100% rename from graphics/pokenav/city_maps/petalburg_0.bin rename to graphics/pokenav/region_map/city_maps/petalburg_0.bin diff --git a/graphics/pokenav/city_maps/rustboro_0.bin b/graphics/pokenav/region_map/city_maps/rustboro_0.bin similarity index 100% rename from graphics/pokenav/city_maps/rustboro_0.bin rename to graphics/pokenav/region_map/city_maps/rustboro_0.bin diff --git a/graphics/pokenav/city_maps/rustboro_1.bin b/graphics/pokenav/region_map/city_maps/rustboro_1.bin similarity index 100% rename from graphics/pokenav/city_maps/rustboro_1.bin rename to graphics/pokenav/region_map/city_maps/rustboro_1.bin diff --git a/graphics/pokenav/city_maps/slateport_0.bin b/graphics/pokenav/region_map/city_maps/slateport_0.bin similarity index 100% rename from graphics/pokenav/city_maps/slateport_0.bin rename to graphics/pokenav/region_map/city_maps/slateport_0.bin diff --git a/graphics/pokenav/city_maps/slateport_1.bin b/graphics/pokenav/region_map/city_maps/slateport_1.bin similarity index 100% rename from graphics/pokenav/city_maps/slateport_1.bin rename to graphics/pokenav/region_map/city_maps/slateport_1.bin diff --git a/graphics/pokenav/city_maps/sootopolis_0.bin b/graphics/pokenav/region_map/city_maps/sootopolis_0.bin similarity index 100% rename from graphics/pokenav/city_maps/sootopolis_0.bin rename to graphics/pokenav/region_map/city_maps/sootopolis_0.bin diff --git a/graphics/pokenav/city_maps/verdanturf_0.bin b/graphics/pokenav/region_map/city_maps/verdanturf_0.bin similarity index 100% rename from graphics/pokenav/city_maps/verdanturf_0.bin rename to graphics/pokenav/region_map/city_maps/verdanturf_0.bin diff --git a/graphics/pokenav/city_zoom_text.png b/graphics/pokenav/region_map/city_zoom_text.png similarity index 100% rename from graphics/pokenav/city_zoom_text.png rename to graphics/pokenav/region_map/city_zoom_text.png diff --git a/graphics/pokenav/region_map_map.bin b/graphics/pokenav/region_map/map.bin similarity index 100% rename from graphics/pokenav/region_map_map.bin rename to graphics/pokenav/region_map/map.bin diff --git a/graphics/pokenav/region_map.pal b/graphics/pokenav/region_map/map.pal similarity index 100% rename from graphics/pokenav/region_map.pal rename to graphics/pokenav/region_map/map.pal diff --git a/graphics/pokenav/region_map.png b/graphics/pokenav/region_map/map.png similarity index 100% rename from graphics/pokenav/region_map.png rename to graphics/pokenav/region_map/map.png diff --git a/graphics/pokenav/zoom_tiles.png b/graphics/pokenav/region_map/zoom_tiles.png similarity index 100% rename from graphics/pokenav/zoom_tiles.png rename to graphics/pokenav/region_map/zoom_tiles.png diff --git a/graphics/pokenav/region_map_section_layout.bin b/graphics/pokenav/region_map_section_layout.bin deleted file mode 100644 index 4700e08b6..000000000 Binary files a/graphics/pokenav/region_map_section_layout.bin and /dev/null differ diff --git a/graphics/rotating_gates/l1.png b/graphics/rotating_gates/l1.png index 93680dbfb..e2f4779e3 100644 Binary files a/graphics/rotating_gates/l1.png and b/graphics/rotating_gates/l1.png differ diff --git a/graphics/rotating_gates/l2.png b/graphics/rotating_gates/l2.png index 1d320ed77..78bfe902f 100644 Binary files a/graphics/rotating_gates/l2.png and b/graphics/rotating_gates/l2.png differ diff --git a/graphics/rotating_gates/l3.png b/graphics/rotating_gates/l3.png index 6e43079d0..28aa331b4 100644 Binary files a/graphics/rotating_gates/l3.png and b/graphics/rotating_gates/l3.png differ diff --git a/graphics/rotating_gates/l4.png b/graphics/rotating_gates/l4.png index 77c269dc5..c1e68ccbc 100644 Binary files a/graphics/rotating_gates/l4.png and b/graphics/rotating_gates/l4.png differ diff --git a/graphics/rotating_gates/t1.png b/graphics/rotating_gates/t1.png index d8a0889b1..bbc851731 100644 Binary files a/graphics/rotating_gates/t1.png and b/graphics/rotating_gates/t1.png differ diff --git a/graphics/rotating_gates/t2.png b/graphics/rotating_gates/t2.png index 668feebfb..6e13aefda 100644 Binary files a/graphics/rotating_gates/t2.png and b/graphics/rotating_gates/t2.png differ diff --git a/graphics/rotating_gates/t3.png b/graphics/rotating_gates/t3.png index d92ae872c..694c9ed05 100644 Binary files a/graphics/rotating_gates/t3.png and b/graphics/rotating_gates/t3.png differ diff --git a/graphics/rotating_gates/t4.png b/graphics/rotating_gates/t4.png index 5e3a947c5..fa3a77e38 100644 Binary files a/graphics/rotating_gates/t4.png and b/graphics/rotating_gates/t4.png differ diff --git a/graphics/wireless_status_screen/anim_00.pal b/graphics/wireless_status_screen/anim_00.pal new file mode 100644 index 000000000..7779155a6 --- /dev/null +++ b/graphics/wireless_status_screen/anim_00.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +0 0 0 +90 90 90 +90 90 90 +90 90 90 +90 90 90 +90 90 90 +90 90 90 +74 246 255 +57 57 57 +172 123 0 +90 90 90 +57 57 57 +164 164 164 +255 180 0 +106 106 106 +74 74 74 diff --git a/graphics/wireless_status_screen/anim_01.pal b/graphics/wireless_status_screen/anim_01.pal new file mode 100644 index 000000000..30040b471 --- /dev/null +++ b/graphics/wireless_status_screen/anim_01.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +0 0 0 +90 90 90 +90 90 90 +90 90 90 +90 90 90 +90 90 90 +74 246 255 +57 213 230 +57 57 57 +172 123 0 +90 90 90 +57 57 57 +164 164 164 +255 180 0 +106 106 106 +74 74 74 diff --git a/graphics/wireless_status_screen/anim_02.pal b/graphics/wireless_status_screen/anim_02.pal new file mode 100644 index 000000000..3b40e7681 --- /dev/null +++ b/graphics/wireless_status_screen/anim_02.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +0 0 0 +90 90 90 +90 90 90 +90 90 90 +90 90 90 +74 246 255 +57 213 230 +49 180 205 +0 32 98 +172 123 0 +90 90 90 +57 57 57 +164 164 164 +255 180 0 +106 106 106 +74 74 74 diff --git a/graphics/wireless_status_screen/anim_03.pal b/graphics/wireless_status_screen/anim_03.pal new file mode 100644 index 000000000..b0756a995 --- /dev/null +++ b/graphics/wireless_status_screen/anim_03.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +0 0 0 +90 90 90 +90 90 90 +90 90 90 +74 246 255 +57 213 230 +49 180 205 +41 148 180 +0 32 98 +172 123 0 +90 90 90 +57 57 57 +164 164 164 +255 180 0 +106 106 106 +74 74 74 diff --git a/graphics/wireless_status_screen/anim_04.pal b/graphics/wireless_status_screen/anim_04.pal new file mode 100644 index 000000000..60916f08c --- /dev/null +++ b/graphics/wireless_status_screen/anim_04.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +0 0 0 +90 90 90 +90 90 90 +74 246 255 +57 213 230 +49 180 205 +41 148 180 +24 123 164 +0 32 98 +172 123 0 +90 90 90 +57 57 57 +164 164 164 +255 180 0 +106 106 106 +74 74 74 diff --git a/graphics/wireless_status_screen/anim_05.pal b/graphics/wireless_status_screen/anim_05.pal new file mode 100644 index 000000000..b59dc5901 --- /dev/null +++ b/graphics/wireless_status_screen/anim_05.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +0 0 0 +90 90 90 +74 246 255 +57 213 230 +49 180 205 +41 148 180 +24 123 164 +16 90 139 +0 32 98 +172 123 0 +90 90 90 +57 57 57 +164 164 164 +255 180 0 +106 106 106 +74 74 74 diff --git a/graphics/wireless_status_screen/anim_06.pal b/graphics/wireless_status_screen/anim_06.pal new file mode 100644 index 000000000..3f14d81e7 --- /dev/null +++ b/graphics/wireless_status_screen/anim_06.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +0 0 0 +74 246 255 +57 213 230 +49 180 205 +41 148 180 +24 123 164 +16 90 139 +8 57 115 +0 32 98 +172 123 0 +90 90 90 +57 57 57 +164 164 164 +255 180 0 +106 106 106 +74 74 74 diff --git a/graphics/wireless_status_screen/anim_07.pal b/graphics/wireless_status_screen/anim_07.pal new file mode 100644 index 000000000..e3da8baa6 --- /dev/null +++ b/graphics/wireless_status_screen/anim_07.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +0 0 0 +57 213 230 +49 180 205 +41 148 180 +24 123 164 +16 90 139 +8 57 115 +8 57 115 +57 57 57 +172 123 0 +90 90 90 +57 57 57 +164 164 164 +255 180 0 +106 106 106 +74 74 74 diff --git a/graphics/wireless_status_screen/anim_08.pal b/graphics/wireless_status_screen/anim_08.pal new file mode 100644 index 000000000..1544a2303 --- /dev/null +++ b/graphics/wireless_status_screen/anim_08.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +0 0 0 +49 180 205 +41 148 180 +24 123 164 +16 90 139 +8 57 115 +8 57 115 +90 90 90 +57 57 57 +172 123 0 +90 90 90 +57 57 57 +164 164 164 +255 180 0 +106 106 106 +74 74 74 diff --git a/graphics/wireless_status_screen/anim_09.pal b/graphics/wireless_status_screen/anim_09.pal new file mode 100644 index 000000000..8d3b1d4bc --- /dev/null +++ b/graphics/wireless_status_screen/anim_09.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +0 0 0 +41 148 180 +24 123 164 +16 90 139 +8 57 115 +8 57 115 +90 90 90 +90 90 90 +57 57 57 +172 123 0 +90 90 90 +57 57 57 +164 164 164 +255 180 0 +106 106 106 +74 74 74 diff --git a/graphics/wireless_status_screen/anim_10.pal b/graphics/wireless_status_screen/anim_10.pal new file mode 100644 index 000000000..5ab981ba3 --- /dev/null +++ b/graphics/wireless_status_screen/anim_10.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +0 0 0 +24 123 164 +16 90 139 +8 57 115 +8 57 115 +90 90 90 +90 90 90 +90 90 90 +57 57 57 +172 123 0 +90 90 90 +57 57 57 +164 164 164 +255 180 0 +106 106 106 +74 74 74 diff --git a/graphics/wireless_status_screen/anim_11.pal b/graphics/wireless_status_screen/anim_11.pal new file mode 100644 index 000000000..46ad15269 --- /dev/null +++ b/graphics/wireless_status_screen/anim_11.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +0 0 0 +16 90 139 +8 57 115 +8 57 115 +90 90 90 +90 90 90 +90 90 90 +90 90 90 +57 57 57 +172 123 0 +90 90 90 +57 57 57 +164 164 164 +255 180 0 +106 106 106 +74 74 74 diff --git a/graphics/wireless_status_screen/anim_12.pal b/graphics/wireless_status_screen/anim_12.pal new file mode 100644 index 000000000..d1e4bdd02 --- /dev/null +++ b/graphics/wireless_status_screen/anim_12.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +0 0 0 +8 57 115 +8 57 115 +90 90 90 +90 90 90 +90 90 90 +90 90 90 +90 90 90 +57 57 57 +172 123 0 +90 90 90 +57 57 57 +164 164 164 +255 180 0 +106 106 106 +74 74 74 diff --git a/graphics/wireless_status_screen/anim_13.pal b/graphics/wireless_status_screen/anim_13.pal new file mode 100644 index 000000000..dd11346b7 --- /dev/null +++ b/graphics/wireless_status_screen/anim_13.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +0 0 0 +90 90 90 +90 90 90 +90 90 90 +90 90 90 +90 90 90 +90 90 90 +90 90 90 +57 57 57 +172 123 0 +90 90 90 +57 57 57 +164 164 164 +255 180 0 +106 106 106 +74 74 74 diff --git a/graphics/link/wireless_info_screen.bin b/graphics/wireless_status_screen/bg.bin similarity index 100% rename from graphics/link/wireless_info_screen.bin rename to graphics/wireless_status_screen/bg.bin diff --git a/graphics/wireless_status_screen/bg.png b/graphics/wireless_status_screen/bg.png new file mode 100644 index 000000000..4c453cf1a Binary files /dev/null and b/graphics/wireless_status_screen/bg.png differ diff --git a/graphics/wireless_status_screen/default.pal b/graphics/wireless_status_screen/default.pal new file mode 100644 index 000000000..dd11346b7 --- /dev/null +++ b/graphics/wireless_status_screen/default.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +0 0 0 +90 90 90 +90 90 90 +90 90 90 +90 90 90 +90 90 90 +90 90 90 +90 90 90 +57 57 57 +172 123 0 +90 90 90 +57 57 57 +164 164 164 +255 180 0 +106 106 106 +74 74 74 diff --git a/graphics_file_rules.mk b/graphics_file_rules.mk index 8d9db88ea..a8b945eb9 100644 --- a/graphics_file_rules.mk +++ b/graphics_file_rules.mk @@ -109,40 +109,6 @@ $(TILESETGFXDIR)/secondary/pacifidlog/tiles.4bpp: %.4bpp: %.png $(TILESETGFXDIR)/secondary/sootopolis/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 328 -Wnum_tiles -SOOTOPOLISANIMDIR := $(TILESETGFXDIR)/secondary/sootopolis/anim - -$(SOOTOPOLISANIMDIR)/stormy_water/0.4bpp: $(SOOTOPOLISANIMDIR)/stormy_water/0_kyogre.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 - @cat $^ >$@ - -$(SOOTOPOLISANIMDIR)/stormy_water/2.4bpp: $(SOOTOPOLISANIMDIR)/stormy_water/2_kyogre.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 - @cat $^ >$@ - -$(SOOTOPOLISANIMDIR)/stormy_water/4.4bpp: $(SOOTOPOLISANIMDIR)/stormy_water/4_kyogre.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 - @cat $^ >$@ - -$(SOOTOPOLISANIMDIR)/stormy_water/6.4bpp: $(SOOTOPOLISANIMDIR)/stormy_water/6_kyogre.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 - @cat $^ >$@ - $(TILESETGFXDIR)/secondary/battle_frontier_outside_west/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 508 -Wnum_tiles @@ -356,7 +322,7 @@ graphics/title_screen/pokemon_logo.gbapal: %.gbapal: %.pal graphics/pokemon_jump/bg.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 63 -Wnum_tiles -graphics/pokenav/region_map.8bpp: %.8bpp: %.png +graphics/pokenav/region_map/map.8bpp: %.8bpp: %.png $(GFX) $< $@ -num_tiles 233 -Wnum_tiles $(MISCGFXDIR)/japanese_hof.4bpp: %.4bpp: %.png @@ -688,7 +654,7 @@ $(WALLPAPERGFXDIR)/whiscash/tiles.4bpp: $(WALLPAPERGFXDIR)/friends_frame2.4bpp $ $(OBJEVENTGFXDIR)/pics/effects/unknown_4F6D38/0.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 11 -Wnum_tiles -$(INTERFACEGFXDIR)/selector_outline.4bpp: %.4bpp: %.png +$(INTERFACEGFXDIR)/outline_cursor.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 8 -Wnum_tiles $(BATTRANSGFXDIR)/frontier_logo_center.4bpp: %.4bpp: %.png diff --git a/include/bard_music.h b/include/bard_music.h index 2825d16e6..2942fa8e4 100644 --- a/include/bard_music.h +++ b/include/bard_music.h @@ -3,11 +3,11 @@ struct BardSound { - /*0x00*/ u8 var00; - /*0x01*/ s8 var01; - /*0x02*/ u16 var02; + /*0x00*/ u8 songLengthId; + /*0x01*/ s8 songLengthOffset; + /*0x02*/ u16 unused; /*0x04*/ s16 volume; - /*0x06*/ u16 var06; + /*0x06*/ u16 unused2; }; struct BardPhoneme diff --git a/include/battle.h b/include/battle.h index 5d9f57e43..72ec1b41f 100644 --- a/include/battle.h +++ b/include/battle.h @@ -53,7 +53,7 @@ struct ResourceFlags #define RESOURCE_FLAG_FLASH_FIRE 0x1 #define RESOURCE_FLAG_ROOST 0x2 #define RESOURCE_FLAG_UNBURDEN 0x4 -#define RESOURCE_FLAG_INTIMIDATED 0x8 +#define RESOURCE_FLAG_UNUSED 0x8 #define RESOURCE_FLAG_TRACED 0x10 #define RESOURCE_FLAG_EMERGENCY_EXIT 0x20 #define RESOURCE_FLAG_NEUTRALIZING_GAS 0x40 @@ -155,41 +155,42 @@ struct ProtectStruct struct SpecialStatus { - u8 statLowered:1; - u8 lightningRodRedirected:1; - u8 restoredBattlerSprite: 1; - u8 intimidatedMon:1; - u8 traced:1; - u8 ppNotAffectedByPressure:1; - u8 faintedHasReplacement:1; - u8 focusBanded:1; - // End of byte - u8 focusSashed:1; - u8 sturdied:1; - u8 stormDrainRedirected:1; - u8 switchInAbilityDone:1; - u8 switchInItemDone:1; - u8 instructedChosenTarget:3; - // End of byte - u8 berryReduced:1; - u8 gemBoost:1; - u8 rototillerAffected:1; // to be affected by rototiller - u8 parentalBondState:2; - u8 multiHitOn:1; - // End of byte, two bits unused - u8 gemParam; - u8 damagedMons:4; // Mons that have been damaged directly by using a move, includes substitute. - u8 dancerUsedMove:1; - u8 dancerOriginalTarget:3; - u8 announceNeutralizingGas:1; // See Cmd_switchineffects - u8 neutralizingGasRemoved:1; // See VARIOUS_TRY_END_NEUTRALIZING_GAS - u8 affectionEndured:1; s32 dmg; s32 physicalDmg; s32 specialDmg; u8 physicalBattlerId; u8 specialBattlerId; u8 changedStatsBattlerId; // Battler that was responsible for the latest stat change. Can be self. + u8 statLowered:1; + u8 lightningRodRedirected:1; + u8 restoredBattlerSprite: 1; + u8 traced:1; + u8 ppNotAffectedByPressure:1; + u8 faintedHasReplacement:1; + u8 focusBanded:1; + u8 focusSashed:1; + // End of byte + u8 sturdied:1; + u8 stormDrainRedirected:1; + u8 switchInAbilityDone:1; + u8 switchInItemDone:1; + u8 instructedChosenTarget:3; + u8 berryReduced:1; + // End of byte + u8 gemParam; + // End of byte + u8 gemBoost:1; + u8 rototillerAffected:1; // to be affected by rototiller + u8 parentalBondState:2; + u8 multiHitOn:1; + u8 announceNeutralizingGas:1; // See Cmd_switchineffects + u8 neutralizingGasRemoved:1; // See VARIOUS_TRY_END_NEUTRALIZING_GAS + u8 affectionEndured:1; + // End of byte + u8 damagedMons:4; // Mons that have been damaged directly by using a move, includes substitute. + u8 dancerUsedMove:1; + u8 dancerOriginalTarget:3; + // End of byte }; struct SideTimer @@ -240,7 +241,7 @@ struct WishFutureKnock u8 wishCounter[MAX_BATTLERS_COUNT]; u8 wishPartyId[MAX_BATTLERS_COUNT]; u8 weatherDuration; - u8 knockedOffMons[2]; // Each battler is represented by a bit. The array entry is dependent on the battler's side. + u8 knockedOffMons[NUM_BATTLE_SIDES]; // Each battler is represented by a bit. }; struct AI_SavedBattleMon @@ -451,9 +452,9 @@ struct BattleTv_Mon struct BattleTv { - struct BattleTv_Mon mon[2][PARTY_SIZE]; // [side][partyId] - struct BattleTv_Position pos[2][2]; // [side][flank] - struct BattleTv_Side side[2]; // [side] + struct BattleTv_Mon mon[NUM_BATTLE_SIDES][PARTY_SIZE]; + struct BattleTv_Position pos[NUM_BATTLE_SIDES][2]; // [side][flank] + struct BattleTv_Side side[NUM_BATTLE_SIDES]; }; struct BattleTvMovePoints @@ -570,20 +571,19 @@ struct BattleStruct u8 wallyWaitFrames; u8 wallyMoveFrames; u16 lastTakenMove[MAX_BATTLERS_COUNT]; // Last move that a battler was hit with. - u16 hpOnSwitchout[2]; + u16 hpOnSwitchout[NUM_BATTLE_SIDES]; u32 savedBattleTypeFlags; u16 abilityPreventingSwitchout; u8 hpScale; u16 synchronizeMoveEffect; bool8 anyMonHasTransformed; void (*savedCallback)(void); - u16 usedHeldItems[PARTY_SIZE][2]; // For each party member and side. For harvest, recycle + u16 usedHeldItems[PARTY_SIZE][NUM_BATTLE_SIDES]; // For each party member and side. For harvest, recycle u16 chosenItem[MAX_BATTLERS_COUNT]; u8 AI_itemType[2]; u8 AI_itemFlags[2]; u16 choicedMove[MAX_BATTLERS_COUNT]; u16 changedItems[MAX_BATTLERS_COUNT]; - u8 intimidateBattler; u8 switchInItemsCounter; u8 arenaTurnCounter; u8 turnSideTracker; @@ -916,8 +916,8 @@ extern u16 gMoveResultFlags; extern u32 gHitMarker; extern u8 gTakenDmgByBattler[MAX_BATTLERS_COUNT]; extern u8 gUnusedFirstBattleVar2; -extern u32 gSideStatuses[2]; -extern struct SideTimer gSideTimers[2]; +extern u32 gSideStatuses[NUM_BATTLE_SIDES]; +extern struct SideTimer gSideTimers[NUM_BATTLE_SIDES]; extern u32 gStatuses3[MAX_BATTLERS_COUNT]; extern u32 gStatuses4[MAX_BATTLERS_COUNT]; extern struct DisableStruct gDisableStructs[MAX_BATTLERS_COUNT]; diff --git a/include/battle_bg.h b/include/battle_bg.h index d0110efa2..1b32c7395 100644 --- a/include/battle_bg.h +++ b/include/battle_bg.h @@ -1,7 +1,6 @@ #ifndef GUARD_BATTLE_BG_H #define GUARD_BATTLE_BG_H -#if P_ENABLE_DEBUG == TRUE struct BattleBackground { const void *tileset; @@ -10,7 +9,6 @@ struct BattleBackground const void *entryTilemap; const void *palette; }; -#endif void BattleInitBgsAndWindows(void); void InitBattleBgsVideo(void); diff --git a/include/battle_message.h b/include/battle_message.h index 5cbf8f522..9f6905abd 100644 --- a/include/battle_message.h +++ b/include/battle_message.h @@ -1,8 +1,6 @@ #ifndef GUARD_BATTLE_MESSAGE_H #define GUARD_BATTLE_MESSAGE_H -#include "constants/battle_config.h" - #if B_EXPANDED_ABILITY_NAMES == TRUE #define TEXT_BUFF_ARRAY_COUNT 17 #else diff --git a/include/battle_scripts.h b/include/battle_scripts.h index 9f8e456ea..75afdbf63 100644 --- a/include/battle_scripts.h +++ b/include/battle_scripts.h @@ -152,7 +152,6 @@ extern const u8 BattleScript_ShedSkinActivates[]; extern const u8 BattleScript_WeatherFormChanges[]; extern const u8 BattleScript_WeatherFormChangesLoop[]; extern const u8 BattleScript_WeatherFormChange[]; -extern const u8 BattleScript_IntimidateActivatesEnd3[]; extern const u8 BattleScript_IntimidateActivates[]; extern const u8 BattleScript_DroughtActivates[]; extern const u8 BattleScript_TookAttack[]; @@ -216,6 +215,7 @@ extern const u8 BattleScript_BerryConfuseHealEnd2[]; extern const u8 BattleScript_BerryConfuseHealRet[]; extern const u8 BattleScript_BerryStatRaiseEnd2[]; extern const u8 BattleScript_BerryStatRaiseRet[]; +extern const u8 BattleScript_BerryFocusEnergyRet[]; extern const u8 BattleScript_BerryFocusEnergyEnd2[]; extern const u8 BattleScript_ActionSelectionItemsCantBeUsed[]; extern const u8 BattleScript_ArenaTurnBeginning[]; @@ -432,6 +432,7 @@ extern const u8 BattleScript_SymbiosisActivates[]; extern const u8 BattleScript_MultiHitPrintStrings[]; extern const u8 BattleScript_BurnUpRemoveType[]; extern const u8 BattleScript_TargetAbilityStatRaiseRet[]; +extern const u8 BattleScript_DoubleShockRemoveType[]; // zmoves extern const u8 BattleScript_ZMoveActivateDamaging[]; diff --git a/include/battle_util.h b/include/battle_util.h index 07654e7bd..257b5a743 100644 --- a/include/battle_util.h +++ b/include/battle_util.h @@ -29,13 +29,11 @@ #define ABILITYEFFECT_WEATHER_FORM 7 #define ABILITYEFFECT_SYNCHRONIZE 8 #define ABILITYEFFECT_ATK_SYNCHRONIZE 9 -#define ABILITYEFFECT_INTIMIDATE1 10 -#define ABILITYEFFECT_INTIMIDATE2 11 -#define ABILITYEFFECT_TRACE1 12 -#define ABILITYEFFECT_TRACE2 13 -#define ABILITYEFFECT_MOVE_END_OTHER 14 -#define ABILITYEFFECT_NEUTRALIZINGGAS 15 -#define ABILITYEFFECT_FIELD_SPORT 16 // Only used if B_SPORT_TURNS < GEN_6 +#define ABILITYEFFECT_TRACE1 10 +#define ABILITYEFFECT_TRACE2 11 +#define ABILITYEFFECT_MOVE_END_OTHER 12 +#define ABILITYEFFECT_NEUTRALIZINGGAS 13 +#define ABILITYEFFECT_FIELD_SPORT 14 // Only used if B_SPORT_TURNS < GEN_6 // Special cases #define ABILITYEFFECT_MUD_SPORT 252 // Only used if B_SPORT_TURNS < GEN_6 #define ABILITYEFFECT_WATER_SPORT 253 // Only used if B_SPORT_TURNS < GEN_6 @@ -51,7 +49,7 @@ #define ITEMEFFECT_TARGET 5 #define ITEMEFFECT_ORBS 6 #define ITEMEFFECT_LIFEORB_SHELLBELL 7 -#define ITEMEFFECT_BATTLER_MOVE_END 8 // move end effects for just the battler, not whole field +#define ITEMEFFECT_USE_LAST_ITEM 8 // move end effects for just the battler, not whole field #define WEATHER_HAS_EFFECT ((!IsAbilityOnField(ABILITY_CLOUD_NINE) && !IsAbilityOnField(ABILITY_AIR_LOCK))) diff --git a/include/config.h b/include/config.h index ad8b3268f..3a2461717 100644 --- a/include/config.h +++ b/include/config.h @@ -70,6 +70,7 @@ #define GEN_6 3 #define GEN_7 4 #define GEN_8 5 +#define GEN_9 6 #define GEN_LATEST GEN_8 #endif // GUARD_CONFIG_H diff --git a/include/constants/battle_config.h b/include/config/battle.h similarity index 98% rename from include/constants/battle_config.h rename to include/config/battle.h index 906c5b2f8..1475510ec 100644 --- a/include/constants/battle_config.h +++ b/include/config/battle.h @@ -1,5 +1,5 @@ -#ifndef GUARD_CONSTANTS_BATTLE_CONFIG_H -#define GUARD_CONSTANTS_BATTLE_CONFIG_H +#ifndef GUARD_CONFIG_BATTLE_H +#define GUARD_CONFIG_BATTLE_H // Calculation settings #define B_CRIT_CHANCE GEN_LATEST // Chances of a critical hit landing. See CalcCritChanceStage. Gen6+ chances guarantee that Farfetch'd and Sirfetch'd always get critical hits while holding a Leek and using high-crit ratio moves. @@ -91,6 +91,7 @@ #define B_METRONOME_MOVES GEN_LATEST // This config will determine up to which generation will Metronome pull moves from. #define B_TELEPORT_BEHAVIOR GEN_LATEST // In Gen7+, starting with Pokémon LGPE, Teleport allows the user to swap out with another party member. #define B_BEAT_UP GEN_LATEST // In Gen5+, Beat Up uses a different formula to calculate its damage, and deals Dark-type damage. Prior to Gen 5, each hit also announces the party member's name. +#define B_DARK_VOID_FAIL GEN_LATEST // In Gen7+, only Darkrai can use Dark Void. #define B_BURN_HIT_THAW GEN_LATEST // In Gen6+, damaging moves with a chance of burn will thaw the target, regardless if they're fire-type moves or not. // Ability settings @@ -197,6 +198,4 @@ #define B_NEW_IMPACT_PALETTE FALSE // If set to TRUE, it updates the basic 'hit' palette. #define B_NEW_SURF_PARTICLE_PALETTE FALSE // If set to TRUE, it updates Surf's wave palette. -#define B_ENABLE_DEBUG TRUE // If set to TRUE, enables a debug menu to use in battles by pressing the Select button. - -#endif // GUARD_CONSTANTS_BATTLE_CONFIG_H +#endif // GUARD_CONFIG_BATTLE_H diff --git a/include/config/debug.h b/include/config/debug.h new file mode 100644 index 000000000..b427fcb51 --- /dev/null +++ b/include/config/debug.h @@ -0,0 +1,21 @@ +#ifndef GUARD_CONFIG_DEBUG_H +#define GUARD_CONFIG_DEBUG_H + +// Overworld Debug +#define DEBUG_OVERWORLD_MENU TRUE // Enables a overworld debug menu for changing flags, variables, giving pokemon and more, accessed by holding R and pressing START while in the overworld by default. +#define DEBUG_OVERWORLD_HELD_KEYS (R_BUTTON) // The keys required to be held to open the debug menu. +#define DEBUG_OVERWORLD_TRIGGER_EVENT pressedStartButton // The event that opens the menu when holding the key(s) defined in DEBUG_OVERWORLD_HELD_KEYS. +#define DEBUG_OVERWORLD_IN_MENU FALSE // Replaces the overworld debug menu button combination with a start menu entry (above Pokédex). + +// Debug Flags +// To use the following debug features, replace the 0s with the flag ID you're assigning it to. +// Eg: Replace with FLAG_UNUSED_0x264 so you can use that flag to toggle the feature. +#define DEBUG_FLAG_NO_COLLISION 0 // If this flag is set, the debug function in the Utility submenu to disable player collision can be used. + +// Battle Debug Menu +#define DEBUG_BATTLE_MENU TRUE // If set to TRUE, enables a debug menu to use in battles by pressing the Select button. + +// Pokémon Debug +#define DEBUG_POKEMON_MENU TRUE // Enables a debug menu for pokemon sprites and icons, accessed by pressing SELECT in the summary screen. + +#endif // GUARD_CONFIG_DEBUG_H diff --git a/include/constants/item_config.h b/include/config/item.h similarity index 91% rename from include/constants/item_config.h rename to include/config/item.h index e645b301d..031af3724 100644 --- a/include/constants/item_config.h +++ b/include/config/item.h @@ -1,5 +1,5 @@ -#ifndef GUARD_CONSTANTS_ITEM_CONFIG_H -#define GUARD_CONSTANTS_ITEM_CONFIG_H +#ifndef GUARD_CONFIG_ITEM_H +#define GUARD_CONFIG_ITEM_H // Item config #define I_SHINY_CHARM_REROLLS 3 // Amount of re-rolls if the player has the Shiny Charm. Set to 0 to disable Shiny Charm's effects. @@ -14,4 +14,4 @@ #define VAR_LAST_REPEL_LURE_USED 0 // If this var has been assigned, last Repel/Lure used will be saved and the player will get prompted with the vanilla repel YES/NO option, unless I_REPEL_LURE_MENU is set to TRUE. #define I_REPEL_LURE_MENU TRUE // If TRUE, the player is able to choose which Repel/Lure to use once the previous one runs out. Cursor position is saved by VAR_LAST_REPEL_LURE_USED if not 0. -#endif // GUARD_CONSTANTS_ITEM_CONFIG_H +#endif // GUARD_CONFIG_ITEM_H diff --git a/include/config/overworld.h b/include/config/overworld.h new file mode 100644 index 000000000..fb438431b --- /dev/null +++ b/include/config/overworld.h @@ -0,0 +1,13 @@ +#ifndef GUARD_CONFIG_OVERWORLD_H +#define GUARD_CONFIG_OVERWORLD_H + +// Movement config +#define OW_RUNNING_INDOORS GEN_LATEST // In Gen4+, players are allowed to run indoors. + +// Overworld flags +// To use the following features in scripting, replace the 0s with the flag ID you're assigning it to. +// Eg: Replace with FLAG_UNUSED_0x264 so you can use that flag to toggle the feature. +#define OW_FLAG_NO_ENCOUNTER 0 // If this flag is set, wild encounters will be disabled. +#define OW_FLAG_NO_TRAINER_SEE 0 // If this flag is set, trainers will not battle the player unless they're talked to. + +#endif // GUARD_CONFIG_OVERWORLD_H diff --git a/include/constants/pokemon_config.h b/include/config/pokemon.h similarity index 72% rename from include/constants/pokemon_config.h rename to include/config/pokemon.h index dd10ee236..b2b08d249 100644 --- a/include/constants/pokemon_config.h +++ b/include/config/pokemon.h @@ -1,5 +1,5 @@ -#ifndef GUARD_CONSTANTS_POKEMON_CONFIG_H -#define GUARD_CONSTANTS_POKEMON_CONFIG_H +#ifndef GUARD_CONFIG_POKEMON_H +#define GUARD_CONFIG_POKEMON_H #define P_UPDATED_TYPES GEN_LATEST // Since Gen 6, several Pokémon were changed to be partially or fully Fairy type. #define P_UPDATED_STATS GEN_LATEST // Since Gen 6, Pokémon stats are updated with each passing generation. @@ -9,6 +9,13 @@ #define P_LEGENDARY_PERFECT_IVS GEN_LATEST // Since Gen 6, Legendaries, Mythicals and Ultra Beasts found in the wild or given through gifts have at least 3 perfect IVs. #define P_KADABRA_EVERSTONE GEN_LATEST // Since Gen 4, Kadabra can evolve even when holding an Everstone. #define P_NIDORAN_M_DITTO_BREED GEN_LATEST // Since Gen 5, when Nidoran♂ breeds with Ditto it can produce Nidoran♀ offspring. Before, it would only yield male offspring. This change also applies to Volbeat. +#define P_SHINY_BASE_CHANCE GEN_LATEST // Since Gen 6, the base chances of encountering a Shiny Pokémon was raised to 1/4096. This config adds an extra roll to the calculation, which effectively does the same thing. + +// Flag settings +// To use the following features in scripting, replace the 0s with the flag ID you're assigning it to. +// Eg: Replace with FLAG_UNUSED_0x264 so you can use that flag to toggle the feature. +#define P_FLAG_FORCE_SHINY 0 // If this flag is set, all wild and gift Pokémon will forced into being Shiny. +#define P_FLAG_FORCE_NO_SHINY 0 // If this flag is set, all wild and gift Pokémon will forced into NOT being Shiny. // Modifying the latest generation WILL change the saveblock due to Dex flags and will require a new save file. // Forms are kept based on the base species, Eg: Meowth and Persian will keep all of their forms, but Perrserker will not be available if P_GEN_8_POKEMON is set to FALSE. @@ -20,6 +27,4 @@ #define P_GEN_7_POKEMON TRUE // Generation 7 Pokémon (SM, USUM, LGPE) #define P_GEN_8_POKEMON TRUE // Generation 8 Pokémon (SwSh, BDSP, LA) -#define P_ENABLE_DEBUG TRUE // Enables a debug menu for pokemon sprites and icons, accessed by pressing SELECT in the summary screen. - -#endif // GUARD_CONSTANTS_POKEMON_CONFIG_H +#endif // GUARD_CONFIG_POKEMON_H diff --git a/include/constants/battle.h b/include/constants/battle.h index 11a5a6a86..be44c21cb 100644 --- a/include/constants/battle.h +++ b/include/constants/battle.h @@ -36,6 +36,7 @@ #define B_SIDE_PLAYER 0 #define B_SIDE_OPPONENT 1 +#define NUM_BATTLE_SIDES 2 #define B_FLANK_LEFT 0 #define B_FLANK_RIGHT 1 @@ -78,6 +79,11 @@ #define BATTLE_TYPE_RECORDED_IS_MASTER (1 << 31) #define BATTLE_TYPE_FRONTIER (BATTLE_TYPE_BATTLE_TOWER | BATTLE_TYPE_DOME | BATTLE_TYPE_PALACE | BATTLE_TYPE_ARENA | BATTLE_TYPE_FACTORY | BATTLE_TYPE_PIKE | BATTLE_TYPE_PYRAMID) #define BATTLE_TYPE_FRONTIER_NO_PYRAMID (BATTLE_TYPE_BATTLE_TOWER | BATTLE_TYPE_DOME | BATTLE_TYPE_PALACE | BATTLE_TYPE_ARENA | BATTLE_TYPE_FACTORY | BATTLE_TYPE_PIKE) +#define BATTLE_TYPE_RECORDED_INVALID ((BATTLE_TYPE_LINK | BATTLE_TYPE_SAFARI | BATTLE_TYPE_FIRST_BATTLE \ + | BATTLE_TYPE_WALLY_TUTORIAL | BATTLE_TYPE_ROAMER | BATTLE_TYPE_EREADER_TRAINER \ + | BATTLE_TYPE_KYOGRE_GROUDON | BATTLE_TYPE_LEGENDARY | BATTLE_TYPE_REGI \ + | BATTLE_TYPE_RECORDED | BATTLE_TYPE_TRAINER_HILL | BATTLE_TYPE_SECRET_BASE \ + | BATTLE_TYPE_GROUDON | BATTLE_TYPE_KYOGRE | BATTLE_TYPE_RAYQUAZA)) #define WILD_DOUBLE_BATTLE ((gBattleTypeFlags & BATTLE_TYPE_DOUBLE && !(gBattleTypeFlags & (BATTLE_TYPE_LINK | BATTLE_TYPE_TRAINER)))) #define BATTLE_TWO_VS_ONE_OPPONENT ((gBattleTypeFlags & BATTLE_TYPE_INGAME_PARTNER && gTrainerBattleOpponent_B == 0xFFFF)) @@ -293,79 +299,80 @@ #define ENUM_WEATHER_STRONG_WINDS 7 // Move Effects -#define MOVE_EFFECT_SLEEP 0x1 -#define MOVE_EFFECT_POISON 0x2 -#define MOVE_EFFECT_BURN 0x3 -#define MOVE_EFFECT_FREEZE 0x4 -#define MOVE_EFFECT_PARALYSIS 0x5 -#define MOVE_EFFECT_TOXIC 0x6 +#define MOVE_EFFECT_SLEEP 1 +#define MOVE_EFFECT_POISON 2 +#define MOVE_EFFECT_BURN 3 +#define MOVE_EFFECT_FREEZE 4 +#define MOVE_EFFECT_PARALYSIS 5 +#define MOVE_EFFECT_TOXIC 6 #define PRIMARY_STATUS_MOVE_EFFECT MOVE_EFFECT_TOXIC // All above move effects apply primary status -#define MOVE_EFFECT_CONFUSION 0x7 -#define MOVE_EFFECT_FLINCH 0x8 -#define MOVE_EFFECT_TRI_ATTACK 0x9 -#define MOVE_EFFECT_UPROAR 0xA -#define MOVE_EFFECT_PAYDAY 0xB -#define MOVE_EFFECT_CHARGING 0xC -#define MOVE_EFFECT_WRAP 0xD -#define MOVE_EFFECT_BURN_UP 0xE // MOVE_EFFECT_BURN_UP replaces unused MOVE_EFFECT_RECOIL_25 so that stat change animations don't break -#define MOVE_EFFECT_ATK_PLUS_1 0xF -#define MOVE_EFFECT_DEF_PLUS_1 0x10 -#define MOVE_EFFECT_SPD_PLUS_1 0x11 -#define MOVE_EFFECT_SP_ATK_PLUS_1 0x12 -#define MOVE_EFFECT_SP_DEF_PLUS_1 0x13 -#define MOVE_EFFECT_ACC_PLUS_1 0x14 -#define MOVE_EFFECT_EVS_PLUS_1 0x15 -#define MOVE_EFFECT_ATK_MINUS_1 0x16 -#define MOVE_EFFECT_DEF_MINUS_1 0x17 -#define MOVE_EFFECT_SPD_MINUS_1 0x18 -#define MOVE_EFFECT_SP_ATK_MINUS_1 0x19 -#define MOVE_EFFECT_SP_DEF_MINUS_1 0x1A -#define MOVE_EFFECT_ACC_MINUS_1 0x1B -#define MOVE_EFFECT_EVS_MINUS_1 0x1C -#define MOVE_EFFECT_RECHARGE 0x1D -#define MOVE_EFFECT_RAGE 0x1E -#define MOVE_EFFECT_STEAL_ITEM 0x1F -#define MOVE_EFFECT_PREVENT_ESCAPE 0x20 -#define MOVE_EFFECT_NIGHTMARE 0x21 -#define MOVE_EFFECT_ALL_STATS_UP 0x22 -#define MOVE_EFFECT_RAPIDSPIN 0x23 -#define MOVE_EFFECT_REMOVE_STATUS 0x24 -#define MOVE_EFFECT_ATK_DEF_DOWN 0x25 -#define MOVE_EFFECT_SCALE_SHOT 0x26 // MOVE_EFFECT_SCALE_SHOT replaces unused MOVE_EFFECT_RECOIL_33 so that stat change animations don't break -#define MOVE_EFFECT_ATK_PLUS_2 0x27 -#define MOVE_EFFECT_DEF_PLUS_2 0x28 -#define MOVE_EFFECT_SPD_PLUS_2 0x29 -#define MOVE_EFFECT_SP_ATK_PLUS_2 0x2A -#define MOVE_EFFECT_SP_DEF_PLUS_2 0x2B -#define MOVE_EFFECT_ACC_PLUS_2 0x2C -#define MOVE_EFFECT_EVS_PLUS_2 0x2D -#define MOVE_EFFECT_ATK_MINUS_2 0x2E -#define MOVE_EFFECT_DEF_MINUS_2 0x2F -#define MOVE_EFFECT_SPD_MINUS_2 0x30 -#define MOVE_EFFECT_SP_ATK_MINUS_2 0x31 -#define MOVE_EFFECT_SP_DEF_MINUS_2 0x32 -#define MOVE_EFFECT_ACC_MINUS_2 0x33 -#define MOVE_EFFECT_EVS_MINUS_2 0x34 -#define MOVE_EFFECT_THRASH 0x35 -#define MOVE_EFFECT_KNOCK_OFF 0x36 -#define MOVE_EFFECT_DEF_SPDEF_DOWN 0x37 -#define MOVE_EFFECT_CLEAR_SMOG 0x38 -#define MOVE_EFFECT_SP_ATK_TWO_DOWN 0x39 -#define MOVE_EFFECT_SMACK_DOWN 0x3A -#define MOVE_EFFECT_FLAME_BURST 0x3B -#define MOVE_EFFECT_FEINT 0x3C -#define MOVE_EFFECT_SPECTRAL_THIEF 0x3D -#define MOVE_EFFECT_V_CREATE 0x3E -#define MOVE_EFFECT_HAPPY_HOUR 0x3F -#define MOVE_EFFECT_CORE_ENFORCER 0x40 -#define MOVE_EFFECT_THROAT_CHOP 0x41 -#define MOVE_EFFECT_INCINERATE 0x42 -#define MOVE_EFFECT_BUG_BITE 0x43 -#define MOVE_EFFECT_RECOIL_HP_25 0x44 -#define MOVE_EFFECT_RELIC_SONG 0x45 -#define MOVE_EFFECT_TRAP_BOTH 0x46 +#define MOVE_EFFECT_CONFUSION 7 +#define MOVE_EFFECT_FLINCH 8 +#define MOVE_EFFECT_TRI_ATTACK 9 +#define MOVE_EFFECT_UPROAR 10 +#define MOVE_EFFECT_PAYDAY 11 +#define MOVE_EFFECT_CHARGING 12 +#define MOVE_EFFECT_WRAP 13 +#define MOVE_EFFECT_BURN_UP 14 // MOVE_EFFECT_BURN_UP replaces unused MOVE_EFFECT_RECOIL_25 so that stat change animations don't break +#define MOVE_EFFECT_ATK_PLUS_1 15 +#define MOVE_EFFECT_DEF_PLUS_1 16 +#define MOVE_EFFECT_SPD_PLUS_1 17 +#define MOVE_EFFECT_SP_ATK_PLUS_1 18 +#define MOVE_EFFECT_SP_DEF_PLUS_1 19 +#define MOVE_EFFECT_ACC_PLUS_1 20 +#define MOVE_EFFECT_EVS_PLUS_1 21 +#define MOVE_EFFECT_ATK_MINUS_1 22 +#define MOVE_EFFECT_DEF_MINUS_1 23 +#define MOVE_EFFECT_SPD_MINUS_1 24 +#define MOVE_EFFECT_SP_ATK_MINUS_1 25 +#define MOVE_EFFECT_SP_DEF_MINUS_1 26 +#define MOVE_EFFECT_ACC_MINUS_1 27 +#define MOVE_EFFECT_EVS_MINUS_1 28 +#define MOVE_EFFECT_RECHARGE 29 +#define MOVE_EFFECT_RAGE 30 +#define MOVE_EFFECT_STEAL_ITEM 31 +#define MOVE_EFFECT_PREVENT_ESCAPE 32 +#define MOVE_EFFECT_NIGHTMARE 33 +#define MOVE_EFFECT_ALL_STATS_UP 34 +#define MOVE_EFFECT_RAPIDSPIN 35 +#define MOVE_EFFECT_REMOVE_STATUS 36 +#define MOVE_EFFECT_ATK_DEF_DOWN 37 +#define MOVE_EFFECT_SCALE_SHOT 38 // MOVE_EFFECT_SCALE_SHOT replaces unused MOVE_EFFECT_RECOIL_33 so that stat change animations don't break +#define MOVE_EFFECT_ATK_PLUS_2 39 +#define MOVE_EFFECT_DEF_PLUS_2 40 +#define MOVE_EFFECT_SPD_PLUS_2 41 +#define MOVE_EFFECT_SP_ATK_PLUS_2 42 +#define MOVE_EFFECT_SP_DEF_PLUS_2 43 +#define MOVE_EFFECT_ACC_PLUS_2 44 +#define MOVE_EFFECT_EVS_PLUS_2 45 +#define MOVE_EFFECT_ATK_MINUS_2 46 +#define MOVE_EFFECT_DEF_MINUS_2 47 +#define MOVE_EFFECT_SPD_MINUS_2 48 +#define MOVE_EFFECT_SP_ATK_MINUS_2 49 +#define MOVE_EFFECT_SP_DEF_MINUS_2 50 +#define MOVE_EFFECT_ACC_MINUS_2 51 +#define MOVE_EFFECT_EVS_MINUS_2 52 +#define MOVE_EFFECT_THRASH 53 +#define MOVE_EFFECT_KNOCK_OFF 54 +#define MOVE_EFFECT_DEF_SPDEF_DOWN 55 +#define MOVE_EFFECT_CLEAR_SMOG 56 +#define MOVE_EFFECT_SP_ATK_TWO_DOWN 57 +#define MOVE_EFFECT_SMACK_DOWN 58 +#define MOVE_EFFECT_FLAME_BURST 59 +#define MOVE_EFFECT_FEINT 60 +#define MOVE_EFFECT_SPECTRAL_THIEF 61 +#define MOVE_EFFECT_V_CREATE 62 +#define MOVE_EFFECT_HAPPY_HOUR 63 +#define MOVE_EFFECT_CORE_ENFORCER 64 +#define MOVE_EFFECT_THROAT_CHOP 65 +#define MOVE_EFFECT_INCINERATE 66 +#define MOVE_EFFECT_BUG_BITE 67 +#define MOVE_EFFECT_RECOIL_HP_25 68 +#define MOVE_EFFECT_RELIC_SONG 69 +#define MOVE_EFFECT_TRAP_BOTH 70 +#define MOVE_EFFECT_DOUBLE_SHOCK 71 -#define NUM_MOVE_EFFECTS 0x47 +#define NUM_MOVE_EFFECTS 72 #define MOVE_EFFECT_AFFECTS_USER 0x4000 #define MOVE_EFFECT_CERTAIN 0x8000 diff --git a/include/constants/battle_move_effects.h b/include/constants/battle_move_effects.h index 0096132cc..100b89d53 100644 --- a/include/constants/battle_move_effects.h +++ b/include/constants/battle_move_effects.h @@ -391,7 +391,12 @@ #define EFFECT_STEEL_BEAM 385 #define EFFECT_EXTREME_EVOBOOST 386 #define EFFECT_DAMAGE_SET_TERRAIN 387 // genesis supernova +#define EFFECT_DARK_VOID 388 +#define EFFECT_SLEEP_HIT 389 +#define EFFECT_DOUBLE_SHOCK 390 +#define EFFECT_SPECIAL_ATTACK_UP_HIT 391 +#define EFFECT_VICTORY_DANCE 392 -#define NUM_BATTLE_MOVE_EFFECTS 388 +#define NUM_BATTLE_MOVE_EFFECTS 393 #endif // GUARD_CONSTANTS_BATTLE_MOVE_EFFECTS_H diff --git a/include/constants/battle_script_commands.h b/include/constants/battle_script_commands.h index 06a09fc17..0fcb2bbb0 100644 --- a/include/constants/battle_script_commands.h +++ b/include/constants/battle_script_commands.h @@ -93,7 +93,7 @@ #define VARIOUS_IS_RUNNING_IMPOSSIBLE 2 #define VARIOUS_GET_MOVE_TARGET 3 #define VARIOUS_GET_BATTLER_FAINTED 4 -#define VARIOUS_RESET_INTIMIDATE_TRACE_BITS 5 +#define VARIOUS_RESET_SWITCH_IN_ABILITY_BITS 5 #define VARIOUS_UPDATE_CHOICE_MOVE_ON_LVL_UP 6 #define VARIOUS_RESET_PLAYER_FAINTED 7 #define VARIOUS_PALACE_FLAVOR_TEXT 8 @@ -246,6 +246,7 @@ #define VARIOUS_CAN_TELEPORT 155 #define VARIOUS_GET_BATTLER_SIDE 156 #define VARIOUS_CHECK_PARENTAL_BOND_COUNTER 157 +#define VARIOUS_SWAP_STATS 158 // Cmd_manipulatedamage #define DMG_CHANGE_SIGN 0 diff --git a/include/constants/battle_string_ids.h b/include/constants/battle_string_ids.h index 4bce51a45..8dd94cca4 100644 --- a/include/constants/battle_string_ids.h +++ b/include/constants/battle_string_ids.h @@ -630,8 +630,10 @@ #define STRINGID_ATTACKERHEALEDITSBURN 628 #define STRINGID_ATTACKERMELTEDTHEICE 629 #define STRINGID_TARGETTOUGHEDITOUT 630 +#define STRINGID_ATTACKERLOSTELECTRICTYPE 631 +#define STRINGID_ATTACKERSWITCHEDSTATWITHTARGET 632 -#define BATTLESTRINGS_COUNT 631 +#define BATTLESTRINGS_COUNT 633 // This is the string id that gBattleStringsTable starts with. // String ids before this (e.g. STRINGID_INTROMSG) are not in the table, diff --git a/include/constants/global.h b/include/constants/global.h index 5870cf416..2b8b27028 100644 --- a/include/constants/global.h +++ b/include/constants/global.h @@ -1,8 +1,11 @@ #ifndef GUARD_CONSTANTS_GLOBAL_H #define GUARD_CONSTANTS_GLOBAL_H -#include "constants/battle_config.h" -#include "constants/overworld_config.h" +#include "config/battle.h" +#include "config/debug.h" +#include "config/item.h" +#include "config/pokemon.h" +#include "config/overworld.h" // Invalid Versions show as "----------" in Gen 4 and Gen 5's summary screen. // In Gens 6 and 7, invalid versions instead show "a distant land" in the summary screen. diff --git a/include/constants/heal_locations.h b/include/constants/heal_locations.h index 272a69dfa..d3dd8f1f1 100644 --- a/include/constants/heal_locations.h +++ b/include/constants/heal_locations.h @@ -1,6 +1,7 @@ #ifndef GUARD_CONSTANTS_HEAL_LOCATIONS_H #define GUARD_CONSTANTS_HEAL_LOCATIONS_H +#define HEAL_LOCATION_NONE 0 #define HEAL_LOCATION_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F 1 #define HEAL_LOCATION_LITTLEROOT_TOWN_MAYS_HOUSE_2F 2 #define HEAL_LOCATION_PETALBURG_CITY 3 diff --git a/include/constants/maps.h b/include/constants/maps.h index 2ad4ea8df..626054b43 100644 --- a/include/constants/maps.h +++ b/include/constants/maps.h @@ -3,14 +3,17 @@ #include "map_groups.h" -#define MAP_NONE (0x7F | (0x7F << 8)) +// Warps using this map will instead use the warp data stored in gSaveBlock1Ptr->dynamicWarp. +// Used for warps that need to change destinations, e.g. when stepping off an elevator. +#define MAP_DYNAMIC (0x7F | (0x7F << 8)) + #define MAP_UNDEFINED (0xFF | (0xFF << 8)) #define MAP_GROUP(map) (MAP_##map >> 8) #define MAP_NUM(map) (MAP_##map & 0xFF) // IDs for dynamic warps. Both are used in the dest_warp_id field for warp events, but they -// are never read in practice. A dest_map of MAP_NONE is used to indicate that a +// are never read in practice. A dest_map of MAP_DYNAMIC is used to indicate that a // dynamic warp should be used, at which point the warp id is ignored. It can be passed to // SetDynamicWarp/SetDynamicWarpWithCoords as the first argument, but this argument is unused. // As only one dynamic warp is saved at a time there's no need to distinguish between them. diff --git a/include/constants/moves.h b/include/constants/moves.h index 75691de76..20cb32c54 100644 --- a/include/constants/moves.h +++ b/include/constants/moves.h @@ -809,7 +809,59 @@ #define MOVES_COUNT_GEN8 779 -#define MOVES_COUNT MOVES_COUNT_GEN8 +// Gen 9 moves. +#define MOVE_TERA_BLAST 779 +#define MOVE_SILK_TRAP 780 +#define MOVE_AXE_KICK 781 +#define MOVE_LAST_RESPECTS 782 +#define MOVE_LUMINA_CRASH 783 +#define MOVE_ORDER_UP 784 +#define MOVE_JET_PUNCH 785 +#define MOVE_SPICY_EXTRACT 786 +#define MOVE_SPIN_OUT 787 +#define MOVE_POPULATION_BOMB 788 +#define MOVE_ICE_SPINNER 789 +#define MOVE_GLAIVE_RUSH 790 +#define MOVE_REVIVAL_BLESSING 791 +#define MOVE_SALT_CURE 792 +#define MOVE_TRIPLE_DIVE 793 +#define MOVE_MORTAL_SPIN 794 +#define MOVE_DOODLE 795 +#define MOVE_FILLET_AWAY 796 +#define MOVE_KOWTOW_CLEAVE 797 +#define MOVE_FLOWER_TRICK 798 +#define MOVE_TORCH_SONG 799 +#define MOVE_AQUA_STEP 800 +#define MOVE_RAGING_BULL 801 +#define MOVE_MAKE_IT_RAIN 802 +#define MOVE_RUINATION 803 +#define MOVE_COLLISION_COURSE 804 +#define MOVE_ELECTRO_DRIFT 805 +#define MOVE_SHED_TAIL 806 +#define MOVE_CHILLY_RECEPTION 807 +#define MOVE_TIDY_UP 808 +#define MOVE_SNOWSCAPE 809 +#define MOVE_POUNCE 810 +#define MOVE_TRAILBLAZE 811 +#define MOVE_CHILLING_WATER 812 +#define MOVE_HYPER_DRILL 813 +#define MOVE_TWIN_BEAM 814 +#define MOVE_RAGE_FIST 815 +#define MOVE_ARMOR_CANNON 816 +#define MOVE_BITTER_BLADE 817 +#define MOVE_DOUBLE_SHOCK 818 +#define MOVE_GIGATON_HAMMER 819 +#define MOVE_COMEUPPANCE 820 +#define MOVE_AQUA_CUTTER 821 +#define MOVE_BLAZING_TORQUE 822 +#define MOVE_WICKED_TORQUE 823 +#define MOVE_NOXIOUS_TORQUE 824 +#define MOVE_COMBAT_TORQUE 825 +#define MOVE_MAGICAL_TORQUE 826 + +#define MOVES_COUNT_GEN9 827 + +#define MOVES_COUNT MOVES_COUNT_GEN9 // Z Moves #define MOVE_BREAKNECK_BLITZ (MOVES_COUNT + 0) diff --git a/include/constants/overworld_config.h b/include/constants/overworld_config.h deleted file mode 100644 index 4a27ded83..000000000 --- a/include/constants/overworld_config.h +++ /dev/null @@ -1,20 +0,0 @@ -#ifndef GUARD_CONSTANTS_OVERWORLD_CONFIG_H -#define GUARD_CONSTANTS_OVERWORLD_CONFIG_H - -// Movement config -#define OW_RUNNING_INDOORS GEN_LATEST // In Gen4+, players are allowed to run indoors. - -// Overworld flags -#define OW_FLAG_NO_ENCOUNTER 0 // If this flag is set, wild encounters will be disabled. -#define OW_FLAG_NO_TRAINER_SEE 0 // If this flag is set, trainers will not battle the player unless they're talked to. - -// Debug options -#define DEBUG_SYSTEM_ENABLE TRUE // Enables a overworld debug menu for changing flags, variables, giving pokemon and more, accessed by holding R and pressing START while in the overworld by default. -#define DEBUG_SYSTEM_HELD_KEYS (R_BUTTON) // The keys required to be held to open the debug menu. -#define DEBUG_SYSTEM_TRIGGER_EVENT pressedStartButton // The event that opens the menu when holding the key(s) defined in DEBUG_SYSTEM_HELD_KEYS. -#define DEBUG_SYSTEM_IN_MENU FALSE // Replaces the overworld debug menu button combination with a start menu entry (above Pokédex). - -// Replace the used flags with others or disable with a 0 -#define DEBUG_FLAG_NO_COLLISION 0 // If this flag is set, the debug function in the Utility submenu to disable player collision can be used. - -#endif // GUARD_CONSTANTS_OVERWORLD_CONFIG_H diff --git a/include/constants/pokedex.h b/include/constants/pokedex.h index 39c09c312..ef939b957 100644 --- a/include/constants/pokedex.h +++ b/include/constants/pokedex.h @@ -1,7 +1,6 @@ #ifndef GUARD_CONSTANTS_POKEDEX_H #define GUARD_CONSTANTS_POKEDEX_H -#include "constants/pokemon_config.h" // National Pokedex order. // These constants are NOT disabled by P_GEN_X_POKEMON to keep pokedex_orders.h clean. enum { diff --git a/include/constants/pokemon.h b/include/constants/pokemon.h index 514c2bd26..006e2a703 100644 --- a/include/constants/pokemon.h +++ b/include/constants/pokemon.h @@ -350,8 +350,7 @@ #define SPECIES_FLAG_HISUIAN_FORM (1 << 6) #define SPECIES_FLAG_GENDER_DIFFERENCE (1 << 7) #define SPECIES_FLAG_ALL_PERFECT_IVS (1 << 8) -#define SPECIES_FLAG_SHINY_LOCKED (1 << 9) -#define SPECIES_FLAG_CANNOT_BE_TRADED (1 << 10) +#define SPECIES_FLAG_CANNOT_BE_TRADED (1 << 9) #define LEGENDARY_PERFECT_IV_COUNT 3 diff --git a/include/constants/species.h b/include/constants/species.h index 18e3138ce..5a46e856f 100644 --- a/include/constants/species.h +++ b/include/constants/species.h @@ -1,8 +1,6 @@ #ifndef GUARD_CONSTANTS_SPECIES_H #define GUARD_CONSTANTS_SPECIES_H -#include "constants/pokemon_config.h" - #define SPECIES_NONE 0 #define SPECIES_BULBASAUR 1 #define SPECIES_IVYSAUR 2 diff --git a/include/constants/vars.h b/include/constants/vars.h index bd988c789..be32c7498 100644 --- a/include/constants/vars.h +++ b/include/constants/vars.h @@ -304,4 +304,10 @@ #define SPECIAL_VARS_END 0x8015 +// If an overworld trigger uses this pseudo-variable as the trigger check, +// then the script will be run using RunScriptImmediately instead of in the +// global script context. This means it will run faster, but cannot do any +// cutscenes nor call a wait command. Used for weather effects in vanilla. +#define TRIGGER_RUN_IMMEDIATELY 0 + #endif // GUARD_CONSTANTS_VARS_H diff --git a/include/debug.h b/include/debug.h index f56efbde3..88f5f6662 100644 --- a/include/debug.h +++ b/include/debug.h @@ -1,8 +1,6 @@ #ifndef GUARD_DEBUG_H #define GUARD_DEBUG_H -#include "constants/overworld_config.h" - void Debug_ShowMainMenu(void); #endif // GUARD_DEBUG_H diff --git a/include/event_object_movement.h b/include/event_object_movement.h index aad161553..01269cdb5 100644 --- a/include/event_object_movement.h +++ b/include/event_object_movement.h @@ -3,6 +3,28 @@ #include "constants/event_object_movement.h" +// Palette slots for overworld NPCs. +// The same standard set of palettes for overworld objects are normally always loaded at the same +// time while walking around the overworld. The only exceptions are the palettes for the player and +// the "special" NPC, which can be swapped out. This also means that e.g. two "special" NPCs +// with competing palettes cannot be properly loaded at the same time. +enum { + PALSLOT_PLAYER, + PALSLOT_PLAYER_REFLECTION, + PALSLOT_NPC_1, + PALSLOT_NPC_2, + PALSLOT_NPC_3, + PALSLOT_NPC_4, + PALSLOT_NPC_1_REFLECTION, + PALSLOT_NPC_2_REFLECTION, + PALSLOT_NPC_3_REFLECTION, + PALSLOT_NPC_4_REFLECTION, + PALSLOT_NPC_SPECIAL, + PALSLOT_NPC_SPECIAL_REFLECTION, + OBJ_PALSLOT_COUNT + // the remaining sprite palette slots (12-15) are used by field effects, the interface, etc. +}; + enum SpinnerRunnerFollowPatterns { RUNFOLLOW_ANY, diff --git a/include/field_weather.h b/include/field_weather.h index 1d8cfe422..8ce0cc9e5 100644 --- a/include/field_weather.h +++ b/include/field_weather.h @@ -19,6 +19,8 @@ enum { PALTAG_WEATHER_2 }; +#define NUM_WEATHER_COLOR_MAPS 19 + struct Weather { union @@ -39,12 +41,12 @@ struct Weather struct Sprite *sandstormSprites2[NUM_SWIRL_SANDSTORM_SPRITES]; } s2; } sprites; - u8 gammaShifts[19][32]; - u8 altGammaShifts[19][32]; - s8 gammaIndex; - s8 gammaTargetIndex; - u8 gammaStepDelay; - u8 gammaStepFrameCounter; + u8 darkenedContrastColorMaps[NUM_WEATHER_COLOR_MAPS][32]; + u8 contrastColorMaps[NUM_WEATHER_COLOR_MAPS][32]; + s8 colorMapIndex; + s8 targetColorMapIndex; + u8 colorMapStepDelay; + u8 colorMapStepCounter; u16 fadeDestColor; u8 palProcessingState; u8 fadeScreenCounter; @@ -59,7 +61,7 @@ struct Weather u8 weatherGfxLoaded; bool8 weatherChangeComplete; u8 weatherPicSpritePalIndex; - u8 altGammaSpritePalIndex; + u8 contrastColorMapSpritePalIndex; // Rain u16 rainSpriteVisibleCounter; u8 curRainSpriteIndex; @@ -75,12 +77,12 @@ struct Weather u8 snowflakeSpriteCount; u8 targetSnowflakeSpriteCount; // Thunderstorm - u16 thunderDelay; - u16 thunderCounter; + u16 thunderTimer; // general-purpose timer for state transitions + u16 thunderSETimer; // timer for thunder sound effect bool8 thunderAllowEnd; - bool8 thunderSkipShort; - u8 thunderShortRetries; - bool8 thunderTriggered; + bool8 thunderLongBolt; // true if this cycle will end in a long lightning bolt + u8 thunderShortBolts; // the number of short bolts this cycle + bool8 thunderEnqueued; // Horizontal fog u16 fogHScrollPosX; u16 fogHScrollCounter; @@ -146,12 +148,12 @@ void StartWeather(void); void SetNextWeather(u8 weather); void SetCurrentAndNextWeather(u8 weather); void SetCurrentAndNextWeatherNoDelay(u8 weather); -void ApplyWeatherGammaShiftIfIdle(s8 gammaIndex); -void ApplyWeatherGammaShiftIfIdle_Gradual(u8 gammaIndex, u8 gammaTargetIndex, u8 gammaStepDelay); +void ApplyWeatherColorMapIfIdle(s8 colorMapIndex); +void ApplyWeatherColorMapIfIdle_Gradual(u8 colorMapIndex, u8 targetColorMapIndex, u8 colorMapStepDelay); void FadeScreen(u8 mode, s8 delay); bool8 IsWeatherNotFadingIn(void); void UpdateSpritePaletteWithWeather(u8 spritePaletteIndex); -void ApplyWeatherGammaShiftToPal(u8 paletteIndex); +void ApplyWeatherColorMapToPal(u8 paletteIndex); void LoadCustomWeatherSpritePalette(const u16 *palette); void ResetDroughtWeatherPaletteLoading(void); bool8 LoadDroughtWeatherPalettes(void); diff --git a/include/fieldmap.h b/include/fieldmap.h index 2f7eaba66..f2dbefae8 100644 --- a/include/fieldmap.h +++ b/include/fieldmap.h @@ -9,6 +9,8 @@ #define NUM_PALS_TOTAL 13 #define MAX_MAP_DATA_SIZE 10240 +#define NUM_TILES_PER_METATILE 8 + // Map coordinates are offset by 7 when using the map // buffer because it needs to load sufficient border // metatiles to fill the player's view (the player has diff --git a/include/gba/isagbprint.h b/include/gba/isagbprint.h index 91aa9f214..d362b5cb3 100644 --- a/include/gba/isagbprint.h +++ b/include/gba/isagbprint.h @@ -11,6 +11,7 @@ #ifdef NDEBUG #define DebugPrintf(pBuf, ...) +#define DebugPrintfLevel(level, pBuf, ...) #define MgbaOpen() #define MgbaClose() #define AGBPrintInit() @@ -29,18 +30,21 @@ void AGBPrintInit(void); #if (LOG_HANDLER == LOG_HANDLER_MGBA_PRINT) -#define DebugPrintf(pBuf, ...) MgbaPrintf(MGBA_LOG_INFO, pBuf, __VA_ARGS__) +#define DebugPrintf(pBuf, ...) MgbaPrintf(MGBA_LOG_INFO, pBuf, ## __VA_ARGS__) #define DebugAssert(pFile, nLine, pExpression, nStopProgram) MgbaAssert(pFile, nLine, pExpression, nStopProgram) +#define DebugPrintfLevel(level, pBuf, ...) MgbaPrintf(level, pBuf, ## __VA_ARGS__) #elif (LOG_HANDLER == LOG_HANDLER_NOCASH_PRINT) -#define DebugPrintf(pBuf, ...) NoCashGBAPrintf(pBuf, __VA_ARGS__) +#define DebugPrintf(pBuf, ...) NoCashGBAPrintf(pBuf, ## __VA_ARGS__) #define DebugAssert(pFile, nLine, pExpression, nStopProgram) NoCashGBAAssert(pFile, nLine, pExpression, nStopProgram) +#define DebugPrintfLevel(level, pBuf, ...) NoCashGBAPrintf(pBuf, ## __VA_ARGS__) #else // Default to AGBPrint -#define DebugPrintf(pBuf, ...) AGBPrintf(const char *pBuf, ...) +#define DebugPrintf(pBuf, ...) AGBPrintf(pBuf, ## __VA_ARGS__) #define DebugAssert(pFile, nLine, pExpression, nStopProgram) AGBAssert(pFile, nLine, pExpression, nStopProgram) +#define DebugPrintfLevel(level, pBuf, ...) AGBPrintf(pBuf, ## __VA_ARGS__) #endif #endif diff --git a/include/global.fieldmap.h b/include/global.fieldmap.h index 2be44a5f3..4da3154e2 100644 --- a/include/global.fieldmap.h +++ b/include/global.fieldmap.h @@ -39,10 +39,10 @@ struct Tileset { /*0x00*/ bool8 isCompressed; /*0x01*/ bool8 isSecondary; - /*0x04*/ void *tiles; - /*0x08*/ void *palettes; - /*0x0c*/ u16 *metatiles; - /*0x10*/ u16 *metatileAttributes; + /*0x04*/ const u32 *tiles; + /*0x08*/ const u16 (*palettes)[16]; + /*0x0c*/ const u16 *metatiles; + /*0x10*/ const u16 *metatileAttributes; /*0x14*/ TilesetCB callback; }; diff --git a/include/item.h b/include/item.h index e02aeb682..cf2209e0e 100644 --- a/include/item.h +++ b/include/item.h @@ -2,7 +2,6 @@ #define GUARD_ITEM_H #include "constants/item.h" -#include "constants/item_config.h" typedef void (*ItemUseFunc)(u8); diff --git a/include/list_menu.h b/include/list_menu.h index e70a92bab..9299ede6c 100644 --- a/include/list_menu.h +++ b/include/list_menu.h @@ -7,12 +7,20 @@ #define LIST_CANCEL -2 #define LIST_HEADER -3 -#define LIST_NO_MULTIPLE_SCROLL 0 -#define LIST_MULTIPLE_SCROLL_DPAD 1 -#define LIST_MULTIPLE_SCROLL_L_R 2 +enum { + LIST_NO_MULTIPLE_SCROLL, + LIST_MULTIPLE_SCROLL_DPAD, + LIST_MULTIPLE_SCROLL_L_R, +}; -enum -{ +enum { + CURSOR_BLACK_ARROW, + CURSOR_INVISIBLE, + CURSOR_RED_OUTLINE, + CURSOR_RED_ARROW, +}; + +enum { SCROLL_ARROW_LEFT, SCROLL_ARROW_RIGHT, SCROLL_ARROW_UP, diff --git a/include/pokedex.h b/include/pokedex.h index 703b9ab8d..96cd02aff 100644 --- a/include/pokedex.h +++ b/include/pokedex.h @@ -3,10 +3,7 @@ extern u8 gUnusedPokedexU8; extern void (*gPokedexVBlankCB)(void); - -#if P_ENABLE_DEBUG == TRUE extern const u8 *const gMonFootprintTable[]; -#endif enum { diff --git a/include/pokemon.h b/include/pokemon.h index c4015d562..f70fda91a 100644 --- a/include/pokemon.h +++ b/include/pokemon.h @@ -3,7 +3,6 @@ #include "sprite.h" #include "constants/region_map_sections.h" -#include "constants/pokemon_config.h" #include "constants/map_groups.h" #define GET_BASE_SPECIES_ID(speciesId) (GetFormSpeciesId(speciesId, 0)) @@ -294,7 +293,7 @@ struct BattlePokemon /*0x55*/ u32 otId; }; -struct BaseStats +struct SpeciesInfo { /* 0x00 */ u8 baseHP; /* 0x01 */ u8 baseAttack; @@ -327,7 +326,6 @@ struct BaseStats u16 flags; }; -#include "constants/battle_config.h" struct BattleMove { u16 effect; @@ -396,7 +394,7 @@ extern struct SpriteTemplate gMultiuseSpriteTemplate; extern const struct BattleMove gBattleMoves[]; extern const u8 gFacilityClassToPicIndex[]; extern const u8 gFacilityClassToTrainerClass[]; -extern const struct BaseStats gBaseStats[]; +extern const struct SpeciesInfo gSpeciesInfo[]; extern const u8 *const gItemEffectTable[]; extern const u32 gExperienceTables[][MAX_LEVEL + 1]; extern const struct LevelUpMove *const gLevelUpLearnsets[]; diff --git a/include/tileset_anims.h b/include/tileset_anims.h index 0e515f044..9e07bdcbe 100755 --- a/include/tileset_anims.h +++ b/include/tileset_anims.h @@ -6,4 +6,30 @@ void InitSecondaryTilesetAnimation(void); void UpdateTilesetAnimations(void); void TransferTilesetAnimsBuffer(void); +void InitTilesetAnim_General(void); +void InitTilesetAnim_Petalburg(void); +void InitTilesetAnim_Rustboro(void); +void InitTilesetAnim_Dewford(void); +void InitTilesetAnim_Slateport(void); +void InitTilesetAnim_Mauville(void); +void InitTilesetAnim_Lavaridge(void); +void InitTilesetAnim_Fallarbor(void); +void InitTilesetAnim_Fortree(void); +void InitTilesetAnim_Lilycove(void); +void InitTilesetAnim_Mossdeep(void); +void InitTilesetAnim_EverGrande(void); +void InitTilesetAnim_Pacifidlog(void); +void InitTilesetAnim_Sootopolis(void); +void InitTilesetAnim_BattleFrontierOutsideWest(void); +void InitTilesetAnim_BattleFrontierOutsideEast(void); +void InitTilesetAnim_Building(void); +void InitTilesetAnim_Cave(void); +void InitTilesetAnim_BikeShop(void); +void InitTilesetAnim_Underwater(void); +void InitTilesetAnim_SootopolisGym(void); +void InitTilesetAnim_MauvilleGym(void); +void InitTilesetAnim_EliteFour(void); +void InitTilesetAnim_BattleDome(void); +void InitTilesetAnim_BattlePyramid(void); + #endif // GUARD_TILESET_ANIMS_H diff --git a/include/tilesets.h b/include/tilesets.h index 70609c046..c7cc8edac 100644 --- a/include/tilesets.h +++ b/include/tilesets.h @@ -1,13 +1,10 @@ #ifndef GUARD_tilesets_H #define GUARD_tilesets_H -// Exported type declarations +extern const u32 gTilesetTiles_General[]; +extern const u16 gTilesetPalettes_General[][16]; -// Exported RAM declarations - -// Exported ROM declarations - -extern struct Tileset *gTilesetPointer_SecretBase; -extern struct Tileset *gTilesetPointer_SecretBaseRedCave; +extern const struct Tileset * const gTilesetPointer_SecretBase; +extern const struct Tileset * const gTilesetPointer_SecretBaseRedCave; #endif //GUARD_tilesets_H diff --git a/json_data_rules.mk b/json_data_rules.mk index 1de3c79f3..aa9e5b3a2 100755 --- a/json_data_rules.mk +++ b/json_data_rules.mk @@ -6,3 +6,9 @@ $(DATA_SRC_SUBDIR)/wild_encounters.h: $(DATA_SRC_SUBDIR)/wild_encounters.json $( $(JSONPROC) $^ $@ $(C_BUILDDIR)/wild_encounter.o: c_dep += $(DATA_SRC_SUBDIR)/wild_encounters.h + +AUTO_GEN_TARGETS += $(DATA_SRC_SUBDIR)/region_map/region_map_entries.h +$(DATA_SRC_SUBDIR)/region_map/region_map_entries.h: $(DATA_SRC_SUBDIR)/region_map/region_map_sections.json $(DATA_SRC_SUBDIR)/region_map/region_map_sections.json.txt + $(JSONPROC) $^ $@ + +$(C_BUILDDIR)/region_map.o: c_dep += $(DATA_SRC_SUBDIR)/region_map/region_map_entries.h diff --git a/ld_script.txt b/ld_script.txt index da0eb682d..629649adf 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -21,7 +21,7 @@ SECTIONS { *libc.a:locale.o(.data); *libc.a:mallocr.o(.data); . = 0x40000; -} + } . = 0x3000000; @@ -503,7 +503,7 @@ SECTIONS { src/berry_blender.o(.rodata); src/new_game.o(.rodata); src/overworld.o(.rodata); - data/tilesets.o(.rodata); + src/tilesets.o(.rodata); data/maps.o(.rodata); src/fieldmap.o(.rodata); src/metatile_behavior.o(.rodata); diff --git a/ld_script_modern.txt b/ld_script_modern.txt index b60a22171..dd4eeed6a 100644 --- a/ld_script_modern.txt +++ b/ld_script_modern.txt @@ -17,7 +17,7 @@ SECTIONS { gflib/*.o(ewram_data); . = 0x40000; -} + } . = 0x3000000; @@ -49,8 +49,11 @@ SECTIONS { ALIGN(4) { src/rom_header.o(.text*); - src/*.o(.text*); + src/rom_header_gf.o(.text.*); + src/crt0.o(.text); + src/main.o(.text); gflib/*.o(.text*); + src/*.o(.text*); asm/*.o(.text*); } =0 diff --git a/sound/cry_tables.inc b/sound/cry_tables.inc index b2eef2d02..7714cd00e 100644 --- a/sound/cry_tables.inc +++ b/sound/cry_tables.inc @@ -1749,6 +1749,7 @@ gCryTable:: cry Cry_TornadusTherian cry Cry_ThundurusTherian cry Cry_LandorusTherian + cry Cry_Bulbasaur //Cry_EnamorusTherian @ Kyurem cry Cry_KyuremWhite cry Cry_KyuremBlack diff --git a/src/bard_music.c b/src/bard_music.c index dd986371d..165b4fe77 100644 --- a/src/bard_music.c +++ b/src/bard_music.c @@ -51,9 +51,9 @@ void GetWordPhonemes(struct BardSong *song, u16 word) for (i = 0; i < 6; i ++) { sound = &song->sound[i]; - if (sound->var00 != 0xFF) + if (sound->songLengthId != 0xFF) { - song->phonemes[i].length = sound->var01 + gBardSoundLengthTable[sound->var00]; + song->phonemes[i].length = sound->songLengthOffset + gBardSoundLengthTable[sound->songLengthId]; song->phonemes[i].pitch = CalcWordPitch(word + 30, i); song->length += song->phonemes[i].length; } diff --git a/src/battle_ai_main.c b/src/battle_ai_main.c index 9604f1195..384c50d88 100644 --- a/src/battle_ai_main.c +++ b/src/battle_ai_main.c @@ -1082,6 +1082,14 @@ static s16 AI_CheckBadMove(u8 battlerAtk, u8 battlerDef, u16 move, s16 score) else if (!BattlerStatCanRise(battlerAtk, AI_DATA->abilities[battlerAtk], STAT_SPDEF)) score -= 6; break; + case EFFECT_VICTORY_DANCE: + if (gBattleMons[battlerAtk].statStages[STAT_ATK] >= MAX_STAT_STAGE || !HasMoveWithSplit(battlerAtk, SPLIT_PHYSICAL)) + score -= 10; + else if (!BattlerStatCanRise(battlerAtk, AI_DATA->abilities[battlerAtk], STAT_SPEED)) + score -= 8; + else if (!BattlerStatCanRise(battlerAtk, AI_DATA->abilities[battlerAtk], STAT_DEF)) + score -= 6; + break; case EFFECT_SHIFT_GEAR: if (!BattlerStatCanRise(battlerAtk, AI_DATA->abilities[battlerAtk], STAT_ATK) || !HasMoveWithSplit(battlerAtk, SPLIT_PHYSICAL)) score -= 10; @@ -2007,6 +2015,10 @@ static s16 AI_CheckBadMove(u8 battlerAtk, u8 battlerDef, u16 move, s16 score) if (!IS_BATTLER_OF_TYPE(battlerAtk, TYPE_FIRE)) score -= 10; break; + case EFFECT_DOUBLE_SHOCK: + if (!IS_BATTLER_OF_TYPE(battlerAtk, TYPE_ELECTRIC)) + score -= 10; + break; case EFFECT_DEFOG: if (gSideStatuses[GetBattlerSide(battlerDef)] & (SIDE_STATUS_REFLECT | SIDE_STATUS_LIGHTSCREEN | SIDE_STATUS_AURORA_VEIL | SIDE_STATUS_SAFEGUARD | SIDE_STATUS_MIST) @@ -3938,6 +3950,10 @@ static s16 AI_CheckViability(u8 battlerAtk, u8 battlerDef, u16 move, s16 score) if (sereneGraceBoost) IncreaseStatUpScore(battlerAtk, battlerDef, STAT_ATK, &score); break; + case EFFECT_SPECIAL_ATTACK_UP_HIT: + if (sereneGraceBoost) + IncreaseStatUpScore(battlerAtk, battlerDef, STAT_SPATK, &score); + break; case EFFECT_FELL_STINGER: if (gBattleMons[battlerAtk].statStages[STAT_ATK] < MAX_STAT_STAGE && AI_DATA->abilities[battlerAtk] != ABILITY_CONTRARY @@ -4393,6 +4409,11 @@ static s16 AI_CheckViability(u8 battlerAtk, u8 battlerDef, u16 move, s16 score) IncreaseStatUpScore(battlerAtk, battlerDef, STAT_SPATK, &score); IncreaseStatUpScore(battlerAtk, battlerDef, STAT_SPDEF, &score); break; + case EFFECT_VICTORY_DANCE: + IncreaseStatUpScore(battlerAtk, battlerDef, STAT_SPEED, &score); + IncreaseStatUpScore(battlerAtk, battlerDef, STAT_ATK, &score); + IncreaseStatUpScore(battlerAtk, battlerDef, STAT_DEF, &score); + break; case EFFECT_SHELL_SMASH: if (AI_DATA->holdEffects[battlerAtk] == HOLD_EFFECT_RESTORE_STATS) score += 1; @@ -4878,6 +4899,7 @@ static s16 AI_SetupFirstTurn(u8 battlerAtk, u8 battlerDef, u16 move, s16 score) case EFFECT_SANDSTORM: case EFFECT_HAIL: case EFFECT_GEOMANCY: + case EFFECT_VICTORY_DANCE: score += 2; break; default: diff --git a/src/battle_ai_switch_items.c b/src/battle_ai_switch_items.c index 5876e8b47..e7657cc4e 100644 --- a/src/battle_ai_switch_items.c +++ b/src/battle_ai_switch_items.c @@ -209,9 +209,9 @@ static bool8 FindMonThatAbsorbsOpponentsMove(void) species = GetMonData(&party[i], MON_DATA_SPECIES); if (GetMonData(&party[i], MON_DATA_ABILITY_NUM) != 0) - monAbility = gBaseStats[species].abilities[1]; + monAbility = gSpeciesInfo[species].abilities[1]; else - monAbility = gBaseStats[species].abilities[0]; + monAbility = gSpeciesInfo[species].abilities[0]; if (absorbingTypeAbility == monAbility && Random() & 1) { @@ -583,9 +583,9 @@ static bool8 FindMonWithFlagsAndSuperEffective(u16 flags, u8 moduloPercent) species = GetMonData(&party[i], MON_DATA_SPECIES); if (GetMonData(&party[i], MON_DATA_ABILITY_NUM) != 0) - monAbility = gBaseStats[species].abilities[1]; + monAbility = gSpeciesInfo[species].abilities[1]; else - monAbility = gBaseStats[species].abilities[0]; + monAbility = gSpeciesInfo[species].abilities[0]; CalcPartyMonTypeEffectivenessMultiplier(gLastLandedMoves[gActiveBattler], species, monAbility); if (gMoveResultFlags & flags) @@ -832,8 +832,8 @@ static u32 GetBestMonTypeMatchup(struct Pokemon *party, int firstId, int lastId, u8 atkType1 = gBattleMons[opposingBattler].type1; u8 atkType2 = gBattleMons[opposingBattler].type2; - u8 defType1 = gBaseStats[species].type1; - u8 defType2 = gBaseStats[species].type2; + u8 defType1 = gSpeciesInfo[species].type1; + u8 defType2 = gSpeciesInfo[species].type2; typeEffectiveness *= GetTypeModifier(atkType1, defType1); if (atkType2 != atkType1) diff --git a/src/battle_ai_util.c b/src/battle_ai_util.c index 113d5d3e0..128f223a1 100644 --- a/src/battle_ai_util.c +++ b/src/battle_ai_util.c @@ -552,9 +552,9 @@ void SetBattlerData(u8 battlerId) if (BATTLE_HISTORY->abilities[battlerId] != ABILITY_NONE) gBattleMons[battlerId].ability = BATTLE_HISTORY->abilities[battlerId]; // Check if mon can only have one ability. - else if (gBaseStats[gBattleMons[battlerId].species].abilities[1] == ABILITY_NONE - || gBaseStats[gBattleMons[battlerId].species].abilities[1] == gBaseStats[gBattleMons[battlerId].species].abilities[0]) - gBattleMons[battlerId].ability = gBaseStats[gBattleMons[battlerId].species].abilities[0]; + else if (gSpeciesInfo[gBattleMons[battlerId].species].abilities[1] == ABILITY_NONE + || gSpeciesInfo[gBattleMons[battlerId].species].abilities[1] == gSpeciesInfo[gBattleMons[battlerId].species].abilities[0]) + gBattleMons[battlerId].ability = gSpeciesInfo[gBattleMons[battlerId].species].abilities[0]; // The ability is unknown. else gBattleMons[battlerId].ability = ABILITY_NONE; @@ -628,12 +628,12 @@ bool32 IsBattlerTrapped(u8 battler, bool8 checkSwitch) u32 GetTotalBaseStat(u32 species) { - return gBaseStats[species].baseHP - + gBaseStats[species].baseAttack - + gBaseStats[species].baseDefense - + gBaseStats[species].baseSpeed - + gBaseStats[species].baseSpAttack - + gBaseStats[species].baseSpDefense; + return gSpeciesInfo[species].baseHP + + gSpeciesInfo[species].baseAttack + + gSpeciesInfo[species].baseDefense + + gSpeciesInfo[species].baseSpeed + + gSpeciesInfo[species].baseSpAttack + + gSpeciesInfo[species].baseSpDefense; } bool32 IsTruantMonVulnerable(u32 battlerAI, u32 opposingBattler) @@ -1183,12 +1183,12 @@ s32 AI_GetAbility(u32 battlerId) return knownAbility; // Else, guess the ability - if (gBaseStats[gBattleMons[battlerId].species].abilities[0] != ABILITY_NONE) + if (gSpeciesInfo[gBattleMons[battlerId].species].abilities[0] != ABILITY_NONE) { u16 abilityGuess = ABILITY_NONE; while (abilityGuess == ABILITY_NONE) { - abilityGuess = gBaseStats[gBattleMons[battlerId].species].abilities[Random() % NUM_ABILITY_SLOTS]; + abilityGuess = gSpeciesInfo[gBattleMons[battlerId].species].abilities[Random() % NUM_ABILITY_SLOTS]; } return abilityGuess; @@ -2091,6 +2091,7 @@ bool32 IsStatRaisingEffect(u16 effect) case EFFECT_BULK_UP: case EFFECT_GEOMANCY: case EFFECT_STOCKPILE: + case EFFECT_VICTORY_DANCE: return TRUE; default: return FALSE; diff --git a/src/battle_anim.c b/src/battle_anim.c index 509369789..f949065f2 100644 --- a/src/battle_anim.c +++ b/src/battle_anim.c @@ -17,7 +17,6 @@ #include "sprite.h" #include "task.h" #include "constants/battle_anim.h" -#include "constants/battle_config.h" #include "constants/moves.h" /* diff --git a/src/battle_anim_effects_1.c b/src/battle_anim_effects_1.c index 93bb49524..0db7f69d5 100644 --- a/src/battle_anim_effects_1.c +++ b/src/battle_anim_effects_1.c @@ -5667,11 +5667,11 @@ static void AnimTipMon_Step(struct Sprite *sprite) void AnimTask_SkullBashPosition(u8 taskId) { - u8 a; + u8 side; gTasks[taskId].data[0] = gBattlerSpriteIds[gBattleAnimAttacker]; - a = GetBattlerSide(gBattleAnimAttacker); - gTasks[taskId].data[1] = a; + side = GetBattlerSide(gBattleAnimAttacker); + gTasks[taskId].data[1] = side; gTasks[taskId].data[2] = 0; switch (gBattleAnimArgs[0]) { @@ -5683,7 +5683,7 @@ void AnimTask_SkullBashPosition(u8 taskId) gTasks[taskId].data[3] = 8; gTasks[taskId].data[4] = 0; gTasks[taskId].data[5] = 3; - if (a == 0) + if (side == B_SIDE_PLAYER) gTasks[taskId].data[5] *= -1; gTasks[taskId].func = AnimTask_SkullBashPositionSet; @@ -5692,7 +5692,7 @@ void AnimTask_SkullBashPosition(u8 taskId) gTasks[taskId].data[3] = 8; gTasks[taskId].data[4] = 0x600; gTasks[taskId].data[5] = 0xC0; - if (a == 0) + if (side == B_SIDE_PLAYER) { gTasks[taskId].data[4] = -gTasks[taskId].data[4]; gTasks[taskId].data[5] = -gTasks[taskId].data[5]; diff --git a/src/battle_anim_mons.c b/src/battle_anim_mons.c index 104c77885..dfe2666a6 100644 --- a/src/battle_anim_mons.c +++ b/src/battle_anim_mons.c @@ -36,11 +36,7 @@ static void CreateBattlerTrace(struct Task *task, u8 taskId); EWRAM_DATA static union AffineAnimCmd *sAnimTaskAffineAnim = NULL; -#if P_ENABLE_DEBUG == TRUE const struct UCoords8 sBattlerCoords[][MAX_BATTLERS_COUNT] = -#else -static const struct UCoords8 sBattlerCoords[][MAX_BATTLERS_COUNT] = -#endif { { // Single battle { 72, 80 }, @@ -65,11 +61,7 @@ const struct MonCoords gCastformFrontSpriteCoords[NUM_CASTFORM_FORMS] = [CASTFORM_ICE] = { .size = MON_COORDS_SIZE(64, 48), .y_offset = 8 }, }; -#if P_ENABLE_DEBUG == TRUE const u8 sCastformElevations[NUM_CASTFORM_FORMS] = -#else -static const u8 sCastformElevations[NUM_CASTFORM_FORMS] = -#endif { [CASTFORM_NORMAL] = 13, [CASTFORM_FIRE] = 14, diff --git a/src/battle_bg.c b/src/battle_bg.c index 5ea08c97c..c2c17d9fa 100644 --- a/src/battle_bg.c +++ b/src/battle_bg.c @@ -26,17 +26,6 @@ #include "constants/trainers.h" #include "constants/battle_anim.h" -#if !P_ENABLE_DEBUG -struct BattleBackground -{ - const void *tileset; - const void *tilemap; - const void *entryTileset; - const void *entryTilemap; - const void *palette; -}; -#endif - // .rodata static const u16 sUnrefArray[] = {0x0300, 0x0000}; //OamData? @@ -602,11 +591,7 @@ const struct WindowTemplate * const gBattleWindowTemplates[] = [B_WIN_TYPE_ARENA] = sBattleArenaWindowTemplates, }; -#if P_ENABLE_DEBUG == TRUE const struct BattleBackground sBattleTerrainTable[] = -#else -static const struct BattleBackground sBattleTerrainTable[] = -#endif { [BATTLE_TERRAIN_GRASS] = { diff --git a/src/battle_controller_player.c b/src/battle_controller_player.c index 4be342640..d2d0cecd8 100644 --- a/src/battle_controller_player.c +++ b/src/battle_controller_player.c @@ -30,7 +30,6 @@ #include "util.h" #include "window.h" #include "constants/battle_anim.h" -#include "constants/battle_config.h" #include "constants/items.h" #include "constants/moves.h" #include "constants/party_menu.h" @@ -330,7 +329,7 @@ static void HandleInputChooseAction(void) { SwapHpBarsWithHpText(); } -#if B_ENABLE_DEBUG == TRUE +#if DEBUG_BATTLE_MENU == TRUE else if (JOY_NEW(SELECT_BUTTON)) { BtlController_EmitTwoReturnValues(BUFFER_B, B_ACTION_DEBUG, 0); @@ -1385,7 +1384,7 @@ static void Task_GiveExpToMon(u8 taskId) u16 species = GetMonData(mon, MON_DATA_SPECIES); u8 level = GetMonData(mon, MON_DATA_LEVEL); u32 currExp = GetMonData(mon, MON_DATA_EXP); - u32 nextLvlExp = gExperienceTables[gBaseStats[species].growthRate][level + 1]; + u32 nextLvlExp = gExperienceTables[gSpeciesInfo[species].growthRate][level + 1]; if (currExp + gainedExp >= nextLvlExp) { @@ -1428,11 +1427,11 @@ static void Task_PrepareToGiveExpWithExpBar(u8 taskId) u8 level = GetMonData(mon, MON_DATA_LEVEL); u16 species = GetMonData(mon, MON_DATA_SPECIES); u32 exp = GetMonData(mon, MON_DATA_EXP); - u32 currLvlExp = gExperienceTables[gBaseStats[species].growthRate][level]; + u32 currLvlExp = gExperienceTables[gSpeciesInfo[species].growthRate][level]; u32 expToNextLvl; exp -= currLvlExp; - expToNextLvl = gExperienceTables[gBaseStats[species].growthRate][level + 1] - currLvlExp; + expToNextLvl = gExperienceTables[gSpeciesInfo[species].growthRate][level + 1] - currLvlExp; SetBattleBarStruct(battlerId, gHealthboxSpriteIds[battlerId], expToNextLvl, exp, -gainedExp); PlaySE(SE_EXP); gTasks[taskId].func = Task_GiveExpWithExpBar; @@ -1464,7 +1463,7 @@ static void Task_GiveExpWithExpBar(u8 taskId) level = GetMonData(&gPlayerParty[monId], MON_DATA_LEVEL); currExp = GetMonData(&gPlayerParty[monId], MON_DATA_EXP); species = GetMonData(&gPlayerParty[monId], MON_DATA_SPECIES); - expOnNextLvl = gExperienceTables[gBaseStats[species].growthRate][level + 1]; + expOnNextLvl = gExperienceTables[gSpeciesInfo[species].growthRate][level + 1]; if (currExp + gainedExp >= expOnNextLvl) { diff --git a/src/battle_controller_player_partner.c b/src/battle_controller_player_partner.c index d39d745a6..712f1562d 100644 --- a/src/battle_controller_player_partner.c +++ b/src/battle_controller_player_partner.c @@ -325,7 +325,7 @@ static void Task_GiveExpToMon(u8 taskId) u16 species = GetMonData(mon, MON_DATA_SPECIES); u8 level = GetMonData(mon, MON_DATA_LEVEL); u32 currExp = GetMonData(mon, MON_DATA_EXP); - u32 nextLvlExp = gExperienceTables[gBaseStats[species].growthRate][level + 1]; + u32 nextLvlExp = gExperienceTables[gSpeciesInfo[species].growthRate][level + 1]; if (currExp + gainedExp >= nextLvlExp) { @@ -368,11 +368,11 @@ static void Task_PrepareToGiveExpWithExpBar(u8 taskId) u8 level = GetMonData(mon, MON_DATA_LEVEL); u16 species = GetMonData(mon, MON_DATA_SPECIES); u32 exp = GetMonData(mon, MON_DATA_EXP); - u32 currLvlExp = gExperienceTables[gBaseStats[species].growthRate][level]; + u32 currLvlExp = gExperienceTables[gSpeciesInfo[species].growthRate][level]; u32 expToNextLvl; exp -= currLvlExp; - expToNextLvl = gExperienceTables[gBaseStats[species].growthRate][level + 1] - currLvlExp; + expToNextLvl = gExperienceTables[gSpeciesInfo[species].growthRate][level + 1] - currLvlExp; SetBattleBarStruct(battlerId, gHealthboxSpriteIds[battlerId], expToNextLvl, exp, -gainedExp); PlaySE(SE_EXP); gTasks[taskId].func = Task_GiveExpWithExpBar; @@ -404,7 +404,7 @@ static void Task_GiveExpWithExpBar(u8 taskId) level = GetMonData(&gPlayerParty[monId], MON_DATA_LEVEL); currExp = GetMonData(&gPlayerParty[monId], MON_DATA_EXP); species = GetMonData(&gPlayerParty[monId], MON_DATA_SPECIES); - expOnNextLvl = gExperienceTables[gBaseStats[species].growthRate][level + 1]; + expOnNextLvl = gExperienceTables[gSpeciesInfo[species].growthRate][level + 1]; if (currExp + gainedExp >= expOnNextLvl) { diff --git a/src/battle_debug.c b/src/battle_debug.c index 4450fe0cb..be7dbf715 100644 --- a/src/battle_debug.c +++ b/src/battle_debug.c @@ -271,6 +271,7 @@ static const struct BitfieldInfo sStatus2Bitfield[] = {/*Multiple Turns*/ 1, 12}, // Wrap bits are omitted. Done in various. // In Love bits are omitted. Done in various. + {/*(Focus Energy*/ 1, 20}, {/*Transformed*/ 1, 21}, {/*Recharge*/ 1, 22}, {/*Rage*/ 1, 23}, @@ -1766,7 +1767,7 @@ static void SetUpModifyArrows(struct BattleDebugMenu *data) break; case LIST_ITEM_MOVES: data->modifyArrows.minValue = 0; - data->modifyArrows.maxValue = MOVES_COUNT_GEN8 - 1; + data->modifyArrows.maxValue = MOVES_COUNT - 1; data->modifyArrows.maxDigits = 3; if (data->currentSecondaryListItemId == 4) { diff --git a/src/battle_dome.c b/src/battle_dome.c index 84b7652a5..7005890d8 100644 --- a/src/battle_dome.c +++ b/src/battle_dome.c @@ -2348,8 +2348,8 @@ static void InitDomeTrainers(void) rankingScores[0] += GetMonData(&gPlayerParty[trainerId], MON_DATA_SPDEF, NULL); rankingScores[0] += GetMonData(&gPlayerParty[trainerId], MON_DATA_SPEED, NULL); rankingScores[0] += GetMonData(&gPlayerParty[trainerId], MON_DATA_MAX_HP, NULL); - monTypesBits |= gBitTable[gBaseStats[GetMonData(&gPlayerParty[trainerId], MON_DATA_SPECIES, NULL)].type1]; - monTypesBits |= gBitTable[gBaseStats[GetMonData(&gPlayerParty[trainerId], MON_DATA_SPECIES, NULL)].type2]; + monTypesBits |= gBitTable[gSpeciesInfo[GetMonData(&gPlayerParty[trainerId], MON_DATA_SPECIES, NULL)].type1]; + monTypesBits |= gBitTable[gSpeciesInfo[GetMonData(&gPlayerParty[trainerId], MON_DATA_SPECIES, NULL)].type2]; } // Count the number of types in the players party, to factor into the ranking @@ -2383,8 +2383,8 @@ static void InitDomeTrainers(void) rankingScores[i] += statValues[STAT_SPDEF]; rankingScores[i] += statValues[STAT_SPEED]; rankingScores[i] += statValues[STAT_HP]; - monTypesBits |= gBitTable[gBaseStats[gFacilityTrainerMons[DOME_MONS[i][j]].species].type1]; - monTypesBits |= gBitTable[gBaseStats[gFacilityTrainerMons[DOME_MONS[i][j]].species].type2]; + monTypesBits |= gBitTable[gSpeciesInfo[gFacilityTrainerMons[DOME_MONS[i][j]].species].type1]; + monTypesBits |= gBitTable[gSpeciesInfo[gFacilityTrainerMons[DOME_MONS[i][j]].species].type2]; } for (monTypesCount = 0, j = 0; j < 32; j++) @@ -2448,7 +2448,7 @@ static void InitDomeTrainers(void) #define CALC_STAT(base, statIndex) \ { \ - u8 baseStat = gBaseStats[species].base; \ + u8 baseStat = gSpeciesInfo[species].base; \ stats[statIndex] = (((2 * baseStat + ivs + evs[statIndex] / 4) * level) / 100) + 5; \ stats[statIndex] = (u8) ModifyStatByNature(nature, stats[statIndex], statIndex); \ } @@ -2481,7 +2481,7 @@ static void CalcDomeMonStats(u16 species, int level, int ivs, u8 evBits, u8 natu } else { - int n = 2 * gBaseStats[species].baseHP; + int n = 2 * gSpeciesInfo[species].baseHP; stats[STAT_HP] = (((n + ivs + evs[STAT_HP] / 4) * level) / 100) + level + 10; } @@ -2750,9 +2750,9 @@ static int GetTypeEffectivenessPoints(int move, int targetSpecies, int mode) if (move == MOVE_NONE || move == MOVE_UNAVAILABLE || IS_MOVE_STATUS(move)) return 0; - defType1 = gBaseStats[targetSpecies].type1; - defType2 = gBaseStats[targetSpecies].type2; - defAbility = gBaseStats[targetSpecies].abilities[0]; + defType1 = gSpeciesInfo[targetSpecies].type1; + defType2 = gSpeciesInfo[targetSpecies].type2; + defAbility = gSpeciesInfo[targetSpecies].abilities[0]; moveType = gBattleMoves[move].type; if (defAbility == ABILITY_LEVITATE && moveType == TYPE_GROUND) @@ -5188,9 +5188,9 @@ static u16 GetWinningMove(int winnerTournamentId, int loserTournamentId, u8 roun targetSpecies = gFacilityTrainerMons[DOME_MONS[loserTournamentId][k]].species; if (personality & 1) - targetAbility = gBaseStats[targetSpecies].abilities[1]; + targetAbility = gSpeciesInfo[targetSpecies].abilities[1]; else - targetAbility = gBaseStats[targetSpecies].abilities[0]; + targetAbility = gSpeciesInfo[targetSpecies].abilities[0]; typeMultiplier = CalcPartyMonTypeEffectivenessMultiplier(moveIds[i * 4 + j], targetSpecies, targetAbility); if (typeMultiplier == UQ_4_12(0)) @@ -5865,8 +5865,8 @@ static void InitRandomTourneyTreeResults(void) statSums[i] += statValues[STAT_SPDEF]; statSums[i] += statValues[STAT_SPEED]; statSums[i] += statValues[STAT_HP]; - monTypesBits |= gBitTable[gBaseStats[gFacilityTrainerMons[DOME_MONS[i][j]].species].type1]; - monTypesBits |= gBitTable[gBaseStats[gFacilityTrainerMons[DOME_MONS[i][j]].species].type2]; + monTypesBits |= gBitTable[gSpeciesInfo[gFacilityTrainerMons[DOME_MONS[i][j]].species].type1]; + monTypesBits |= gBitTable[gSpeciesInfo[gFacilityTrainerMons[DOME_MONS[i][j]].species].type2]; } // Because GF hates temporary vars, trainerId acts like monTypesCount here. @@ -5992,12 +5992,12 @@ static void DecideRoundWinners(u8 roundId) } } species = gFacilityTrainerMons[DOME_MONS[tournamentId1][monId1]].species; - points1 += ( gBaseStats[species].baseHP - + gBaseStats[species].baseAttack - + gBaseStats[species].baseDefense - + gBaseStats[species].baseSpeed - + gBaseStats[species].baseSpAttack - + gBaseStats[species].baseSpDefense) / 10; + points1 += ( gSpeciesInfo[species].baseHP + + gSpeciesInfo[species].baseAttack + + gSpeciesInfo[species].baseDefense + + gSpeciesInfo[species].baseSpeed + + gSpeciesInfo[species].baseSpAttack + + gSpeciesInfo[species].baseSpDefense) / 10; } // Random part of the formula. points1 += (Random() & 0x1F); @@ -6015,12 +6015,12 @@ static void DecideRoundWinners(u8 roundId) } } species = gFacilityTrainerMons[DOME_MONS[tournamentId2][monId1]].species; - points2 += ( gBaseStats[species].baseHP - + gBaseStats[species].baseAttack - + gBaseStats[species].baseDefense - + gBaseStats[species].baseSpeed - + gBaseStats[species].baseSpAttack - + gBaseStats[species].baseSpDefense) / 10; + points2 += ( gSpeciesInfo[species].baseHP + + gSpeciesInfo[species].baseAttack + + gSpeciesInfo[species].baseDefense + + gSpeciesInfo[species].baseSpeed + + gSpeciesInfo[species].baseSpAttack + + gSpeciesInfo[species].baseSpDefense) / 10; } // Random part of the formula. points2 += (Random() & 0x1F); diff --git a/src/battle_factory.c b/src/battle_factory.c index 12e477e32..77f501387 100644 --- a/src/battle_factory.c +++ b/src/battle_factory.c @@ -618,9 +618,9 @@ static void GetOpponentMostCommonMonType(void) for (i = 0; i < FRONTIER_PARTY_SIZE; i++) { u32 species = gFacilityTrainerMons[gFrontierTempParty[i]].species; - typeCounts[gBaseStats[species].type1]++; - if (gBaseStats[species].type1 != gBaseStats[species].type2) - typeCounts[gBaseStats[species].type2]++; + typeCounts[gSpeciesInfo[species].type1]++; + if (gSpeciesInfo[species].type1 != gSpeciesInfo[species].type2) + typeCounts[gSpeciesInfo[species].type2]++; } // Determine which are the two most-common types. diff --git a/src/battle_gfx_sfx_util.c b/src/battle_gfx_sfx_util.c index 1b78ec11c..0c26fdfda 100644 --- a/src/battle_gfx_sfx_util.c +++ b/src/battle_gfx_sfx_util.c @@ -23,7 +23,6 @@ #include "palette.h" #include "contest.h" #include "constants/songs.h" -#include "constants/battle_config.h" #include "constants/rgb.h" #include "constants/battle_palace.h" @@ -78,11 +77,7 @@ static const struct CompressedSpriteSheet sSpriteSheets_HealthBar[MAX_BATTLERS_C {gBlankGfxCompressed, 0x0120, TAG_HEALTHBAR_OPPONENT2_TILE} }; -#if P_ENABLE_DEBUG == TRUE const struct SpritePalette sSpritePalettes_HealthBoxHealthBar[2] = -#else -static const struct SpritePalette sSpritePalettes_HealthBoxHealthBar[2] = -#endif { {gBattleInterface_BallStatusBarPal, TAG_HEALTHBOX_PAL}, {gBattleInterface_BallDisplayPal, TAG_HEALTHBAR_PAL} diff --git a/src/battle_interface.c b/src/battle_interface.c index 3039c65b6..e8bc31608 100644 --- a/src/battle_interface.c +++ b/src/battle_interface.c @@ -31,7 +31,6 @@ #include "constants/battle_anim.h" #include "constants/rgb.h" #include "constants/songs.h" -#include "constants/battle_config.h" #include "constants/items.h" enum @@ -2394,9 +2393,9 @@ void UpdateHealthboxAttribute(u8 healthboxSpriteId, struct Pokemon *mon, u8 elem species = GetMonData(mon, MON_DATA_SPECIES); level = GetMonData(mon, MON_DATA_LEVEL); exp = GetMonData(mon, MON_DATA_EXP); - currLevelExp = gExperienceTables[gBaseStats[species].growthRate][level]; + currLevelExp = gExperienceTables[gSpeciesInfo[species].growthRate][level]; currExpBarValue = exp - currLevelExp; - maxExpBarValue = gExperienceTables[gBaseStats[species].growthRate][level + 1] - currLevelExp; + maxExpBarValue = gExperienceTables[gSpeciesInfo[species].growthRate][level + 1] - currLevelExp; SetBattleBarStruct(battlerId, healthboxSpriteId, maxExpBarValue, currExpBarValue, isDoubles); MoveBattleBar(battlerId, healthboxSpriteId, EXP_BAR, 0); } diff --git a/src/battle_main.c b/src/battle_main.c index 9790810a1..d138cf231 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -52,7 +52,6 @@ #include "wild_encounter.h" #include "window.h" #include "constants/abilities.h" -#include "constants/battle_config.h" #include "constants/battle_move_effects.h" #include "constants/battle_string_ids.h" #include "constants/hold_effects.h" @@ -194,8 +193,8 @@ EWRAM_DATA u16 gMoveResultFlags = 0; EWRAM_DATA u32 gHitMarker = 0; EWRAM_DATA u8 gTakenDmgByBattler[MAX_BATTLERS_COUNT] = {0}; EWRAM_DATA u8 gUnusedFirstBattleVar2 = 0; // Never read -EWRAM_DATA u32 gSideStatuses[2] = {0}; -EWRAM_DATA struct SideTimer gSideTimers[2] = {0}; +EWRAM_DATA u32 gSideStatuses[NUM_BATTLE_SIDES] = {0}; +EWRAM_DATA struct SideTimer gSideTimers[NUM_BATTLE_SIDES] = {0}; EWRAM_DATA u32 gStatuses3[MAX_BATTLERS_COUNT] = {0}; EWRAM_DATA u32 gStatuses4[MAX_BATTLERS_COUNT] = {0}; EWRAM_DATA struct DisableStruct gDisableStructs[MAX_BATTLERS_COUNT] = {0}; @@ -3021,7 +3020,7 @@ static void BattleStartClearSetData(void) gBattleStruct->runTries = 0; gBattleStruct->safariGoNearCounter = 0; gBattleStruct->safariPkblThrowCounter = 0; - gBattleStruct->safariCatchFactor = gBaseStats[GetMonData(&gEnemyParty[0], MON_DATA_SPECIES)].catchRate * 100 / 1275; + gBattleStruct->safariCatchFactor = gSpeciesInfo[GetMonData(&gEnemyParty[0], MON_DATA_SPECIES)].catchRate * 100 / 1275; gBattleStruct->safariEscapeFactor = 3; gBattleStruct->wildVictorySong = 0; gBattleStruct->moneyMultiplier = 1; @@ -3043,8 +3042,8 @@ static void BattleStartClearSetData(void) for (i = 0; i < PARTY_SIZE; i++) { - gBattleStruct->usedHeldItems[i][0] = 0; - gBattleStruct->usedHeldItems[i][1] = 0; + gBattleStruct->usedHeldItems[i][B_SIDE_PLAYER] = 0; + gBattleStruct->usedHeldItems[i][B_SIDE_OPPONENT] = 0; gBattleStruct->itemStolen[i].originalItem = GetMonData(&gPlayerParty[i], MON_DATA_HELD_ITEM); gPartyCriticalHits[i] = 0; } @@ -3255,8 +3254,8 @@ void FaintClearSetData(void) gBattleResources->flags->flags[gActiveBattler] = 0; - gBattleMons[gActiveBattler].type1 = gBaseStats[gBattleMons[gActiveBattler].species].type1; - gBattleMons[gActiveBattler].type2 = gBaseStats[gBattleMons[gActiveBattler].species].type2; + gBattleMons[gActiveBattler].type1 = gSpeciesInfo[gBattleMons[gActiveBattler].species].type1; + gBattleMons[gActiveBattler].type2 = gSpeciesInfo[gBattleMons[gActiveBattler].species].type2; gBattleMons[gActiveBattler].type3 = TYPE_MYSTERY; Ai_UpdateFaintData(gActiveBattler); @@ -3358,8 +3357,8 @@ static void DoBattleIntro(void) else { memcpy(&gBattleMons[gActiveBattler], &gBattleResources->bufferB[gActiveBattler][4], sizeof(struct BattlePokemon)); - gBattleMons[gActiveBattler].type1 = gBaseStats[gBattleMons[gActiveBattler].species].type1; - gBattleMons[gActiveBattler].type2 = gBaseStats[gBattleMons[gActiveBattler].species].type2; + gBattleMons[gActiveBattler].type1 = gSpeciesInfo[gBattleMons[gActiveBattler].species].type1; + gBattleMons[gActiveBattler].type2 = gSpeciesInfo[gBattleMons[gActiveBattler].species].type2; gBattleMons[gActiveBattler].type3 = TYPE_MYSTERY; gBattleMons[gActiveBattler].ability = GetAbilityBySpecies(gBattleMons[gActiveBattler].species, gBattleMons[gActiveBattler].abilityNum); gBattleStruct->hpOnSwitchout[GetBattlerSide(gActiveBattler)] = gBattleMons[gActiveBattler].hp; @@ -3721,8 +3720,6 @@ static void TryDoEventsBeforeFirstTurn(void) if (AbilityBattleEffects(ABILITYEFFECT_ON_SWITCHIN, gBattlerAttacker, 0, 0, 0) != 0) return; } - if (AbilityBattleEffects(ABILITYEFFECT_INTIMIDATE1, 0, 0, 0, 0) != 0) - return; if (AbilityBattleEffects(ABILITYEFFECT_TRACE1, 0, 0, 0, 0) != 0) return; // Check all switch in items having effect from the fastest mon to slowest. @@ -4847,10 +4844,10 @@ static void TurnValuesCleanUp(bool8 var0) gSpecialStatuses[gActiveBattler].parentalBondState = PARENTAL_BOND_OFF; } - gSideStatuses[0] &= ~(SIDE_STATUS_QUICK_GUARD | SIDE_STATUS_WIDE_GUARD | SIDE_STATUS_CRAFTY_SHIELD | SIDE_STATUS_MAT_BLOCK); - gSideStatuses[1] &= ~(SIDE_STATUS_QUICK_GUARD | SIDE_STATUS_WIDE_GUARD | SIDE_STATUS_CRAFTY_SHIELD | SIDE_STATUS_MAT_BLOCK); - gSideTimers[0].followmeTimer = 0; - gSideTimers[1].followmeTimer = 0; + gSideStatuses[B_SIDE_PLAYER] &= ~(SIDE_STATUS_QUICK_GUARD | SIDE_STATUS_WIDE_GUARD | SIDE_STATUS_CRAFTY_SHIELD | SIDE_STATUS_MAT_BLOCK); + gSideStatuses[B_SIDE_OPPONENT] &= ~(SIDE_STATUS_QUICK_GUARD | SIDE_STATUS_WIDE_GUARD | SIDE_STATUS_CRAFTY_SHIELD | SIDE_STATUS_MAT_BLOCK); + gSideTimers[B_SIDE_PLAYER].followmeTimer = 0; + gSideTimers[B_SIDE_OPPONENT].followmeTimer = 0; } void SpecialStatusesClear(void) diff --git a/src/battle_message.c b/src/battle_message.c index 568aac774..031261a28 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -589,7 +589,7 @@ static const u8 sText_PsychicTerrainEnds[] = _("The weirdness disappeared\nfrom static const u8 sText_GrassyTerrainEnds[] = _("The grass disappeared\nfrom the battlefield."); static const u8 sText_TargetsStatWasMaxedOut[] = _("{B_DEF_NAME_WITH_PREFIX}'s {B_DEF_ABILITY} maxed\nits {B_BUFF1}!"); static const u8 sText_PoisonHealHpUp[] = _("The poisoning healed {B_ATK_NAME_WITH_PREFIX}\na little bit!"); -static const u8 sText_BadDreamsDmg[] = _("{B_DEF_NAME_WITH_PREFIX} is tormented\nby {B_ATK_ABILITY}!"); +static const u8 sText_BadDreamsDmg[] = _("{B_DEF_NAME_WITH_PREFIX} is tormented!"); static const u8 sText_MoldBreakerEnters[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX} breaks the mold!"); static const u8 sText_TeravoltEnters[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX} is radiating \na bursting aura!"); static const u8 sText_TurboblazeEnters[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX} is radiating\na blazing aura!"); @@ -759,10 +759,12 @@ static const u8 sText_AttackerBrokeThroughParalysis[] = _("{B_ATK_NAME_WITH_PREF static const u8 sText_AttackerHealedItsBurn[] = _("{B_ATK_NAME_WITH_PREFIX} healed its burn with\nits sheer determination!"); static const u8 sText_AttackerMeltedTheIce[] = _("{B_ATK_NAME_WITH_PREFIX} melted the ice with\nits fiery determination!"); static const u8 sText_TargetToughedItOut[] = _("{B_DEF_NAME_WITH_PREFIX} toughed it out\nto show you its best side!"); - +static const u8 sText_AttackerLostElectricType[] = _("{B_ATK_NAME_WITH_PREFIX} used up all\nof its electricity!"); +static const u8 sText_AttackerSwitchedStatWithTarget[] = _("{B_ATK_NAME_WITH_PREFIX} switched {B_BUFF1}\nwith its target!"); const u8 *const gBattleStringsTable[BATTLESTRINGS_COUNT] = { + [STRINGID_ATTACKERSWITCHEDSTATWITHTARGET - BATTLESTRINGS_TABLE_START] = sText_AttackerSwitchedStatWithTarget, [STRINGID_TARGETTOUGHEDITOUT - BATTLESTRINGS_TABLE_START] = sText_TargetToughedItOut, [STRINGID_ATTACKERMELTEDTHEICE - BATTLESTRINGS_TABLE_START] = sText_AttackerMeltedTheIce, [STRINGID_ATTACKERHEALEDITSBURN - BATTLESTRINGS_TABLE_START] = sText_AttackerHealedItsBurn, @@ -1381,6 +1383,7 @@ const u8 *const gBattleStringsTable[BATTLESTRINGS_COUNT] = [STRINGID_CANTESCAPEBECAUSEOFCURRENTMOVE - BATTLESTRINGS_TABLE_START] = sText_CantEscapeBecauseOfCurrentMove, [STRINGID_PKMNTOOKTARGETHIGH - BATTLESTRINGS_TABLE_START] = sText_PkmnTookTargetHigh, [STRINGID_TARGETTOOHEAVY - BATTLESTRINGS_TABLE_START] = sText_TargetTooHeavy, + [STRINGID_ATTACKERLOSTELECTRICTYPE - BATTLESTRINGS_TABLE_START] = sText_AttackerLostElectricType, }; const u16 gZEffectStringIds[] = diff --git a/src/battle_pike.c b/src/battle_pike.c index f86328242..dd3028923 100644 --- a/src/battle_pike.c +++ b/src/battle_pike.c @@ -17,7 +17,6 @@ #include "constants/battle_frontier.h" #include "constants/frontier_util.h" #include "constants/abilities.h" -#include "constants/battle_config.h" #include "constants/layouts.h" #include "constants/rgb.h" #include "constants/trainers.h" @@ -849,24 +848,24 @@ static bool8 DoesTypePreventStatus(u16 species, u32 status) switch (status) { case STATUS1_TOXIC_POISON: - if (gBaseStats[species].type1 == TYPE_STEEL || gBaseStats[species].type1 == TYPE_POISON - || gBaseStats[species].type2 == TYPE_STEEL || gBaseStats[species].type2 == TYPE_POISON) + if (gSpeciesInfo[species].type1 == TYPE_STEEL || gSpeciesInfo[species].type1 == TYPE_POISON + || gSpeciesInfo[species].type2 == TYPE_STEEL || gSpeciesInfo[species].type2 == TYPE_POISON) ret = TRUE; break; case STATUS1_FREEZE: - if (gBaseStats[species].type1 == TYPE_ICE || gBaseStats[species].type2 == TYPE_ICE) + if (gSpeciesInfo[species].type1 == TYPE_ICE || gSpeciesInfo[species].type2 == TYPE_ICE) ret = TRUE; break; case STATUS1_PARALYSIS: - if (gBaseStats[species].type1 == TYPE_GROUND || gBaseStats[species].type2 == TYPE_GROUND + if (gSpeciesInfo[species].type1 == TYPE_GROUND || gSpeciesInfo[species].type2 == TYPE_GROUND #if B_PARALYZE_ELECTRIC >= GEN_6 - || gBaseStats[species].type1 == TYPE_ELECTRIC || gBaseStats[species].type2 == TYPE_ELECTRIC + || gSpeciesInfo[species].type1 == TYPE_ELECTRIC || gSpeciesInfo[species].type2 == TYPE_ELECTRIC #endif ) ret = TRUE; break; case STATUS1_BURN: - if (gBaseStats[species].type1 == TYPE_FIRE || gBaseStats[species].type2 == TYPE_FIRE) + if (gSpeciesInfo[species].type1 == TYPE_FIRE || gSpeciesInfo[species].type2 == TYPE_FIRE) ret = TRUE; break; case STATUS1_SLEEP: @@ -1145,9 +1144,9 @@ bool32 TryGenerateBattlePikeWildMon(bool8 checkKeenEyeIntimidate) SetMonData(&gEnemyParty[0], MON_DATA_EXP, - &gExperienceTables[gBaseStats[wildMons[headerId][pikeMonId].species].growthRate][monLevel]); + &gExperienceTables[gSpeciesInfo[wildMons[headerId][pikeMonId].species].growthRate][monLevel]); - if (gBaseStats[wildMons[headerId][pikeMonId].species].abilities[1]) + if (gSpeciesInfo[wildMons[headerId][pikeMonId].species].abilities[1]) abilityNum = Random() % 2; else abilityNum = 0; diff --git a/src/battle_pyramid.c b/src/battle_pyramid.c index 2c1e20d0d..336582ba5 100644 --- a/src/battle_pyramid.c +++ b/src/battle_pyramid.c @@ -1371,7 +1371,7 @@ void GenerateBattlePyramidWildMon(void) } SetMonData(&gEnemyParty[0], MON_DATA_EXP, - &gExperienceTables[gBaseStats[wildMons[id].species].growthRate][lvl]); + &gExperienceTables[gSpeciesInfo[wildMons[id].species].growthRate][lvl]); switch (wildMons[id].abilityNum) { @@ -1381,7 +1381,7 @@ void GenerateBattlePyramidWildMon(void) break; case ABILITY_RANDOM: default: - if (gBaseStats[wildMons[id].species].abilities[1]) + if (gSpeciesInfo[wildMons[id].species].abilities[1]) { i = GetMonData(&gEnemyParty[0], MON_DATA_PERSONALITY, NULL) % 2; SetMonData(&gEnemyParty[0], MON_DATA_ABILITY_NUM, &i); diff --git a/src/battle_pyramid_bag.c b/src/battle_pyramid_bag.c index 67afaefe1..4f72a7463 100644 --- a/src/battle_pyramid_bag.c +++ b/src/battle_pyramid_bag.c @@ -160,7 +160,7 @@ static const struct ListMenuTemplate sListMenuTemplate = .itemVerticalPadding = 0, .scrollMultiple = LIST_NO_MULTIPLE_SCROLL, .fontId = FONT_NARROW, - .cursorKind = 0 + .cursorKind = CURSOR_BLACK_ARROW }; enum { diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 515e79fc6..d5eea13b1 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -37,7 +37,6 @@ #include "wild_encounter.h" #include "rtc.h" #include "party_menu.h" -#include "constants/battle_config.h" #include "battle_arena.h" #include "battle_pike.h" #include "battle_pyramid.h" @@ -545,7 +544,7 @@ static void Cmd_setuserstatus3(void); static void Cmd_assistattackselect(void); static void Cmd_trysetmagiccoat(void); static void Cmd_trysetsnatch(void); -static void Cmd_trygetintimidatetarget(void); +static void Cmd_unused2(void); static void Cmd_switchoutabilities(void); static void Cmd_jumpifhasnohp(void); static void Cmd_getsecretpowereffect(void); @@ -573,9 +572,9 @@ static void Cmd_settelekinesis(void); static void Cmd_swapstatstages(void); static void Cmd_averagestats(void); static void Cmd_jumpifoppositegenders(void); -static void Cmd_trygetbaddreamstarget(void); +static void Cmd_unused(void); static void Cmd_tryworryseed(void); -static void Cmd_metalburstdamagecalculator(void); +static void Cmd_callnative(void); void (* const gBattleScriptingCommandsTable[])(void) = { @@ -804,7 +803,7 @@ void (* const gBattleScriptingCommandsTable[])(void) = Cmd_assistattackselect, //0xDE Cmd_trysetmagiccoat, //0xDF Cmd_trysetsnatch, //0xE0 - Cmd_trygetintimidatetarget, //0xE1 + Cmd_unused2, //0xE1 Cmd_switchoutabilities, //0xE2 Cmd_jumpifhasnohp, //0xE3 Cmd_getsecretpowereffect, //0xE4 @@ -832,9 +831,9 @@ void (* const gBattleScriptingCommandsTable[])(void) = Cmd_swapstatstages, //0xFA Cmd_averagestats, //0xFB Cmd_jumpifoppositegenders, //0xFC - Cmd_trygetbaddreamstarget, //0xFD + Cmd_unused, //0xFD Cmd_tryworryseed, //0xFE - Cmd_metalburstdamagecalculator, //0xFF + Cmd_callnative, //0xFF }; const struct StatFractions gAccuracyStageRatios[] = @@ -1131,6 +1130,7 @@ static const u16 sFinalStrikeOnlyEffects[] = EFFECT_BUG_BITE, EFFECT_THIEF, EFFECT_BURN_UP, + EFFECT_DOUBLE_SHOCK, EFFECT_SECRET_POWER, EFFECT_SMACK_DOWN, EFFECT_SPARKLING_ARIA, @@ -2839,7 +2839,8 @@ void SetMoveEffect(bool32 primary, u32 certain) if (gBattleMons[gEffectBattler].hp == 0 && gBattleScripting.moveEffect != MOVE_EFFECT_PAYDAY - && gBattleScripting.moveEffect != MOVE_EFFECT_STEAL_ITEM) + && gBattleScripting.moveEffect != MOVE_EFFECT_STEAL_ITEM + && gBattleScripting.moveEffect != MOVE_EFFECT_BUG_BITE) INCREMENT_RESET_RETURN if (DoesSubstituteBlockMove(gBattlerAttacker, gEffectBattler, gCurrentMove) && affectsUser != MOVE_EFFECT_AFFECTS_USER) @@ -3496,16 +3497,11 @@ void SetMoveEffect(bool32 primary, u32 certain) gProtectStructs[gBattlerTarget].kingsShielded = FALSE; gProtectStructs[gBattlerTarget].banefulBunkered = FALSE; gProtectStructs[gBattlerTarget].obstructed = FALSE; - if (gCurrentMove == MOVE_FEINT) - { - BattleScriptPush(gBattlescriptCurrInstr + 1); - gBattlescriptCurrInstr = BattleScript_MoveEffectFeint; - } - else if (gCurrentMove == MOVE_HYPERSPACE_FURY) - { - BattleScriptPush(gBattlescriptCurrInstr + 1); + BattleScriptPush(gBattlescriptCurrInstr + 1); + if (gCurrentMove == MOVE_HYPERSPACE_FURY) gBattlescriptCurrInstr = BattleScript_HyperspaceFuryRemoveProtect; - } + else + gBattlescriptCurrInstr = BattleScript_MoveEffectFeint; } break; case MOVE_EFFECT_SPECTRAL_THIEF: @@ -3600,11 +3596,6 @@ void SetMoveEffect(bool32 primary, u32 certain) BtlController_EmitSetMonData(BUFFER_A, REQUEST_HELDITEM_BATTLE, 0, sizeof(gBattleMons[gEffectBattler].item), &gBattleMons[gEffectBattler].item); MarkBattlerForControllerExec(gActiveBattler); - - // attacker temporarily gains their item - gBattleStruct->changedItems[gBattlerAttacker] = gBattleMons[gBattlerAttacker].item; - gBattleMons[gBattlerAttacker].item = gLastUsedItem; - BattleScriptPush(gBattlescriptCurrInstr + 1); gBattlescriptCurrInstr = BattleScript_MoveEffectBugBite; } @@ -3651,6 +3642,11 @@ void SetMoveEffect(bool32 primary, u32 certain) BattleScriptPush(gBattlescriptCurrInstr + 1); gBattlescriptCurrInstr = BattleScript_BurnUpRemoveType; break; + case MOVE_EFFECT_DOUBLE_SHOCK: + // This seems unnecessary but is done to make it work properly with Parental Bond + BattleScriptPush(gBattlescriptCurrInstr + 1); + gBattlescriptCurrInstr = BattleScript_DoubleShockRemoveType; + break; } } } @@ -4041,9 +4037,9 @@ static void Cmd_getexp(void) viaExpShare++; } #if (B_SCALED_EXP >= GEN_5) && (B_SCALED_EXP != GEN_6) - calculatedExp = gBaseStats[gBattleMons[gBattlerFainted].species].expYield * gBattleMons[gBattlerFainted].level / 5; + calculatedExp = gSpeciesInfo[gBattleMons[gBattlerFainted].species].expYield * gBattleMons[gBattlerFainted].level / 5; #else - calculatedExp = gBaseStats[gBattleMons[gBattlerFainted].species].expYield * gBattleMons[gBattlerFainted].level / 7; + calculatedExp = gSpeciesInfo[gBattleMons[gBattlerFainted].species].expYield * gBattleMons[gBattlerFainted].level / 7; #endif #if B_SPLIT_EXP < GEN_6 @@ -6063,8 +6059,8 @@ static void Cmd_switchindataupdate(void) for (i = 0; i < sizeof(struct BattlePokemon); i++) monData[i] = gBattleResources->bufferB[gActiveBattler][4 + i]; - gBattleMons[gActiveBattler].type1 = gBaseStats[gBattleMons[gActiveBattler].species].type1; - gBattleMons[gActiveBattler].type2 = gBaseStats[gBattleMons[gActiveBattler].species].type2; + gBattleMons[gActiveBattler].type1 = gSpeciesInfo[gBattleMons[gActiveBattler].species].type1; + gBattleMons[gActiveBattler].type2 = gSpeciesInfo[gBattleMons[gActiveBattler].species].type2; gBattleMons[gActiveBattler].type3 = TYPE_MYSTERY; gBattleMons[gActiveBattler].ability = GetAbilityBySpecies(gBattleMons[gActiveBattler].species, gBattleMons[gActiveBattler].abilityNum); @@ -6791,7 +6787,6 @@ static void Cmd_switchineffects(void) if (AbilityBattleEffects(ABILITYEFFECT_ON_SWITCHIN, gActiveBattler, 0, 0, 0) || ItemBattleEffects(ITEMEFFECT_ON_SWITCH_IN, gActiveBattler, FALSE) - || AbilityBattleEffects(ABILITYEFFECT_INTIMIDATE2, 0, 0, 0, 0) || AbilityBattleEffects(ABILITYEFFECT_TRACE2, 0, 0, 0, 0) || AbilityBattleEffects(ABILITYEFFECT_WEATHER_FORM, 0, 0, 0, 0)) return; @@ -7489,6 +7484,13 @@ static void Cmd_removeitem(void) { u16 itemId = 0; + if (gBattleScripting.overrideBerryRequirements) + { + // bug bite / pluck - don't remove current item + gBattlescriptCurrInstr += 2; + return; + } + gActiveBattler = GetBattlerForBattleScript(gBattlescriptCurrInstr[1]); itemId = gBattleMons[gActiveBattler].item; @@ -7922,35 +7924,34 @@ static bool32 HasAttackerFaintedTarget(void) static void HandleTerrainMove(u16 move) { u32 statusFlag = 0; - u8 *timer = NULL; switch (gBattleMoves[move].effect) { case EFFECT_MISTY_TERRAIN: - statusFlag = STATUS_FIELD_MISTY_TERRAIN, timer = &gFieldTimers.terrainTimer; + statusFlag = STATUS_FIELD_MISTY_TERRAIN; gBattleCommunication[MULTISTRING_CHOOSER] = 0; break; case EFFECT_GRASSY_TERRAIN: - statusFlag = STATUS_FIELD_GRASSY_TERRAIN, timer = &gFieldTimers.terrainTimer; + statusFlag = STATUS_FIELD_GRASSY_TERRAIN; gBattleCommunication[MULTISTRING_CHOOSER] = 1; break; case EFFECT_ELECTRIC_TERRAIN: - statusFlag = STATUS_FIELD_ELECTRIC_TERRAIN, timer = &gFieldTimers.terrainTimer; + statusFlag = STATUS_FIELD_ELECTRIC_TERRAIN; gBattleCommunication[MULTISTRING_CHOOSER] = 2; break; case EFFECT_PSYCHIC_TERRAIN: - statusFlag = STATUS_FIELD_PSYCHIC_TERRAIN, timer = &gFieldTimers.terrainTimer; + statusFlag = STATUS_FIELD_PSYCHIC_TERRAIN; gBattleCommunication[MULTISTRING_CHOOSER] = 3; break; case EFFECT_DAMAGE_SET_TERRAIN: switch (gBattleMoves[move].argument) { case 0: //genesis supernova - statusFlag = STATUS_FIELD_PSYCHIC_TERRAIN, timer = &gFieldTimers.terrainTimer; + statusFlag = STATUS_FIELD_PSYCHIC_TERRAIN; gBattleCommunication[MULTISTRING_CHOOSER] = 3; break; case 1: //splintered stormshards - if (!(gFieldStatuses & (STATUS_FIELD_MISTY_TERRAIN | STATUS_FIELD_GRASSY_TERRAIN | STATUS_FIELD_ELECTRIC_TERRAIN | STATUS_FIELD_PSYCHIC_TERRAIN))) + if (!(gFieldStatuses & STATUS_FIELD_TERRAIN_ANY)) { //no terrain to remove -> jump to battle script pointer gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 3); @@ -7958,7 +7959,7 @@ static void HandleTerrainMove(u16 move) else { // remove all terrain - gFieldStatuses &= ~(STATUS_FIELD_MISTY_TERRAIN | STATUS_FIELD_GRASSY_TERRAIN | STATUS_FIELD_ELECTRIC_TERRAIN | STATUS_FIELD_PSYCHIC_TERRAIN); + gFieldStatuses &= ~STATUS_FIELD_TERRAIN_ANY; gBattleCommunication[MULTISTRING_CHOOSER] = 4; gBattlescriptCurrInstr += 7; } @@ -7978,9 +7979,9 @@ static void HandleTerrainMove(u16 move) gFieldStatuses &= ~STATUS_FIELD_TERRAIN_ANY; gFieldStatuses |= statusFlag; if (GetBattlerHoldEffect(gBattlerAttacker, TRUE) == HOLD_EFFECT_TERRAIN_EXTENDER) - *timer = 8; + gFieldTimers.terrainTimer = 8; else - *timer = 5; + gFieldTimers.terrainTimer = 5; gBattlescriptCurrInstr += 7; } } @@ -8096,8 +8097,8 @@ static void RecalcBattlerStats(u32 battler, struct Pokemon *mon) gBattleMons[battler].spAttack = GetMonData(mon, MON_DATA_SPATK); gBattleMons[battler].spDefense = GetMonData(mon, MON_DATA_SPDEF); gBattleMons[battler].ability = GetMonAbility(mon); - gBattleMons[battler].type1 = gBaseStats[gBattleMons[battler].species].type1; - gBattleMons[battler].type2 = gBaseStats[gBattleMons[battler].species].type2; + gBattleMons[battler].type1 = gSpeciesInfo[gBattleMons[battler].species].type1; + gBattleMons[battler].type2 = gSpeciesInfo[gBattleMons[battler].species].type2; } static u32 GetHighestStatId(u32 battlerId) @@ -8193,14 +8194,10 @@ static bool32 CourtChangeSwapSideStatuses(void) static bool32 CanTeleport(u8 battlerId) { - struct Pokemon* party = NULL; + u8 side = GetBattlerSide(battlerId); + struct Pokemon *party = (side == B_SIDE_PLAYER) ? gPlayerParty : gEnemyParty; u32 species, count, i; - if (GetBattlerSide(battlerId) == B_SIDE_PLAYER) - party = gPlayerParty; - else - party = gEnemyParty; - for (i = 0; i < PARTY_SIZE; i++) { species = GetMonData(&party[i], MON_DATA_SPECIES2); @@ -8211,11 +8208,11 @@ static bool32 CanTeleport(u8 battlerId) switch (GetBattlerSide(battlerId)) { case B_SIDE_OPPONENT: - if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) + if (count == 1 || gBattleTypeFlags & BATTLE_TYPE_DOUBLE) return FALSE; break; case B_SIDE_PLAYER: - if (count == 1 || (count <= 2 && gBattleTypeFlags & BATTLE_TYPE_DOUBLE)) + if (count == 1 || (gBattleTypeFlags & BATTLE_TYPE_DOUBLE && count <= 2)) return FALSE; break; } @@ -8474,8 +8471,7 @@ static void Cmd_various(void) else gBattleCommunication[0] = FALSE; break; - case VARIOUS_RESET_INTIMIDATE_TRACE_BITS: - gSpecialStatuses[gActiveBattler].intimidatedMon = FALSE; + case VARIOUS_RESET_SWITCH_IN_ABILITY_BITS: gSpecialStatuses[gActiveBattler].traced = FALSE; gSpecialStatuses[gActiveBattler].switchInAbilityDone = FALSE; break; @@ -8639,7 +8635,6 @@ static void Cmd_various(void) gBattlescriptCurrInstr += 3; AbilityBattleEffects(ABILITYEFFECT_NEUTRALIZINGGAS, gActiveBattler, 0, 0, 0); AbilityBattleEffects(ABILITYEFFECT_ON_SWITCHIN, gActiveBattler, 0, 0, 0); - AbilityBattleEffects(ABILITYEFFECT_INTIMIDATE2, gActiveBattler, 0, 0, 0); AbilityBattleEffects(ABILITYEFFECT_TRACE2, gActiveBattler, 0, 0, 0); return; case VARIOUS_SAVE_TARGET: @@ -9355,6 +9350,7 @@ static void Cmd_various(void) case VARIOUS_TRY_TRAINER_SLIDE_MSG_FIRST_OFF: if (ShouldDoTrainerSlide(gActiveBattler, gTrainerBattleOpponent_A, TRAINER_SLIDE_FIRST_DOWN)) { + gBattleScripting.battler = gActiveBattler; BattleScriptPush(gBattlescriptCurrInstr + 3); gBattlescriptCurrInstr = BattleScript_TrainerSlideMsgRet; return; @@ -9363,6 +9359,7 @@ static void Cmd_various(void) case VARIOUS_TRY_TRAINER_SLIDE_MSG_LAST_ON: if (ShouldDoTrainerSlide(gActiveBattler, gTrainerBattleOpponent_A, TRAINER_SLIDE_LAST_SWITCHIN)) { + gBattleScripting.battler = gActiveBattler; BattleScriptPush(gBattlescriptCurrInstr + 3); gBattlescriptCurrInstr = BattleScript_TrainerSlideMsgRet; return; @@ -9754,24 +9751,18 @@ static void Cmd_various(void) } break; case VARIOUS_CONSUME_BERRY: - if (ItemId_GetHoldEffect(gBattleMons[gActiveBattler].item) == HOLD_EFFECT_NONE) + if (gBattleScripting.overrideBerryRequirements == 2) { gBattlescriptCurrInstr += 4; return; } - - gBattleScripting.battler = gEffectBattler = gBattlerTarget = gActiveBattler; // Cover all berry effect battlerId cases. e.g. ChangeStatBuffs uses target ID - // Do move end berry effects for just a single battler, instead of looping through all battlers - if (ItemBattleEffects(ITEMEFFECT_BATTLER_MOVE_END, gActiveBattler, FALSE)) - return; - + if (gBattlescriptCurrInstr[3]) - { - gBattleMons[gActiveBattler].item = gBattleStruct->changedItems[gActiveBattler]; - gBattleStruct->changedItems[gActiveBattler] = ITEM_NONE; - gBattleResources->flags->flags[gActiveBattler] &= ~RESOURCE_FLAG_UNBURDEN; - } - + gLastUsedItem = gBattleMons[gActiveBattler].item; + + gBattleScripting.battler = gEffectBattler = gBattlerTarget = gActiveBattler; // Cover all berry effect battlerId cases. e.g. ChangeStatBuffs uses target ID + if (ItemBattleEffects(ITEMEFFECT_USE_LAST_ITEM, gActiveBattler, FALSE)) + return; gBattlescriptCurrInstr += 4; return; case VARIOUS_JUMP_IF_CANT_REVERT_TO_PRIMAL: @@ -10080,6 +10071,35 @@ static void Cmd_various(void) return; } break; + case VARIOUS_SWAP_STATS: + { + u8 statId = T1_READ_8(gBattlescriptCurrInstr + 3); + u16 temp; + + switch (statId) + { + case STAT_HP: + SWAP(gBattleMons[gBattlerAttacker].hp, gBattleMons[gBattlerTarget].hp, temp); + break; + case STAT_ATK: + SWAP(gBattleMons[gBattlerAttacker].attack, gBattleMons[gBattlerTarget].attack, temp); + break; + case STAT_DEF: + SWAP(gBattleMons[gBattlerAttacker].defense, gBattleMons[gBattlerTarget].defense, temp); + break; + case STAT_SPEED: + SWAP(gBattleMons[gBattlerAttacker].speed, gBattleMons[gBattlerTarget].speed, temp); + break; + case STAT_SPATK: + SWAP(gBattleMons[gBattlerAttacker].spAttack, gBattleMons[gBattlerTarget].spAttack, temp); + break; + case STAT_SPDEF: + SWAP(gBattleMons[gBattlerAttacker].spDefense, gBattleMons[gBattlerTarget].spDefense, temp); + break; + } + PREPARE_STAT_BUFFER(gBattleTextBuff1, statId); + } + break; } // End of switch (gBattlescriptCurrInstr[2]) gBattlescriptCurrInstr += 3; @@ -10683,9 +10703,6 @@ static u16 ReverseStatChangeMoveEffect(u16 moveEffect) } } -#define STAT_CHANGE_WORKED 0 -#define STAT_CHANGE_DIDNT_WORK 1 - static u32 ChangeStatBuffs(s8 statValue, u32 statId, u32 flags, const u8 *BS_ptr) { bool32 certain = FALSE; @@ -11768,7 +11785,9 @@ static void Cmd_mimicattackcopy(void) static void Cmd_metronome(void) { -#if B_METRONOME_MOVES >= GEN_8 +#if B_METRONOME_MOVES >= GEN_9 + u16 moveCount = MOVES_COUNT_GEN9; +#elif B_METRONOME_MOVES >= GEN_8 u16 moveCount = MOVES_COUNT_GEN8; #elif B_METRONOME_MOVES >= GEN_7 u16 moveCount = MOVES_COUNT_GEN7; @@ -12866,10 +12885,10 @@ static void Cmd_trydobeatup(void) gBattlescriptCurrInstr += 9; - gBattleMoveDamage = gBaseStats[GetMonData(&party[gBattleCommunication[0]], MON_DATA_SPECIES)].baseAttack; + gBattleMoveDamage = gSpeciesInfo[GetMonData(&party[gBattleCommunication[0]], MON_DATA_SPECIES)].baseAttack; gBattleMoveDamage *= gBattleMoves[gCurrentMove].power; gBattleMoveDamage *= (GetMonData(&party[gBattleCommunication[0]], MON_DATA_LEVEL) * 2 / 5 + 2); - gBattleMoveDamage /= gBaseStats[gBattleMons[gBattlerTarget].species].baseDefense; + gBattleMoveDamage /= gSpeciesInfo[gBattleMons[gBattlerTarget].species].baseDefense; gBattleMoveDamage = (gBattleMoveDamage / 50) + 2; if (gProtectStructs[gBattlerAttacker].helpingHand) gBattleMoveDamage = gBattleMoveDamage * 15 / 10; @@ -13544,27 +13563,8 @@ static void Cmd_trysetsnatch(void) } } -static void Cmd_trygetintimidatetarget(void) +static void Cmd_unused2(void) { - u8 side; - - gBattleScripting.battler = gBattleStruct->intimidateBattler; - side = GetBattlerSide(gBattleScripting.battler); - - PREPARE_ABILITY_BUFFER(gBattleTextBuff1, gBattleMons[gBattleScripting.battler].ability) - - for (;gBattlerTarget < gBattlersCount; gBattlerTarget++) - { - if (GetBattlerSide(gBattlerTarget) == side) - continue; - if (!(gAbsentBattlerFlags & gBitTable[gBattlerTarget])) - break; - } - - if (gBattlerTarget >= gBattlersCount) - gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1); - else - gBattlescriptCurrInstr += 5; } static void Cmd_switchoutabilities(void) @@ -13731,7 +13731,7 @@ static void Cmd_pickup(void) species = GetMonData(&gPlayerParty[i], MON_DATA_SPECIES2); heldItem = GetMonData(&gPlayerParty[i], MON_DATA_HELD_ITEM); - ability = gBaseStats[species].abilities[GetMonData(&gPlayerParty[i], MON_DATA_ABILITY_NUM)]; + ability = gSpeciesInfo[species].abilities[GetMonData(&gPlayerParty[i], MON_DATA_ABILITY_NUM)]; if (ability == ABILITY_PICKUP && species != SPECIES_NONE @@ -13767,7 +13767,7 @@ static void Cmd_pickup(void) if (lvlDivBy10 > 9) lvlDivBy10 = 9; - ability = gBaseStats[species].abilities[GetMonData(&gPlayerParty[i], MON_DATA_ABILITY_NUM)]; + ability = gSpeciesInfo[species].abilities[GetMonData(&gPlayerParty[i], MON_DATA_ABILITY_NUM)]; if (ability == ABILITY_PICKUP && species != SPECIES_NONE @@ -14106,9 +14106,9 @@ static void Cmd_handleballthrow(void) if (gBattleTypeFlags & BATTLE_TYPE_SAFARI) catchRate = gBattleStruct->safariCatchFactor * 1275 / 100; else - catchRate = gBaseStats[gBattleMons[gBattlerTarget].species].catchRate; + catchRate = gSpeciesInfo[gBattleMons[gBattlerTarget].species].catchRate; - if (gBaseStats[gBattleMons[gBattlerTarget].species].flags & SPECIES_FLAG_ULTRA_BEAST) + if (gSpeciesInfo[gBattleMons[gBattlerTarget].species].flags & SPECIES_FLAG_ULTRA_BEAST) { if (gLastUsedItem == ITEM_BEAST_BALL) ballMultiplier = 500; @@ -14233,7 +14233,7 @@ static void Cmd_handleballthrow(void) } break; case ITEM_FAST_BALL: - if (gBaseStats[gBattleMons[gBattlerTarget].species].baseSpeed >= 100) + if (gSpeciesInfo[gBattleMons[gBattlerTarget].species].baseSpeed >= 100) ballMultiplier = 400; break; case ITEM_HEAVY_BALL: @@ -14738,22 +14738,8 @@ static void Cmd_jumpifoppositegenders(void) gBattlescriptCurrInstr += 5; } -static void Cmd_trygetbaddreamstarget(void) +static void Cmd_unused(void) { - u8 badDreamsMonSide = GetBattlerSide(gBattlerAttacker); - for (;gBattlerTarget < gBattlersCount; gBattlerTarget++) - { - if (GetBattlerSide(gBattlerTarget) == badDreamsMonSide) - continue; - if ((gBattleMons[gBattlerTarget].status1 & STATUS1_SLEEP || GetBattlerAbility(gBattlerTarget) == ABILITY_COMATOSE) - && IsBattlerAlive(gBattlerTarget)) - break; - } - - if (gBattlerTarget >= gBattlersCount) - gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1); - else - gBattlescriptCurrInstr += 5; } static void Cmd_tryworryseed(void) @@ -14769,7 +14755,14 @@ static void Cmd_tryworryseed(void) } } -static void Cmd_metalburstdamagecalculator(void) +static void Cmd_callnative(void) +{ + void (*func)() = (void *)T1_READ_PTR(gBattlescriptCurrInstr + 1); + func(); +} + +// Callnative Funcs +void BS_CalcMetalBurstDmg(void) { u8 sideAttacker = GetBattlerSide(gBattlerAttacker); u8 sideTarget = 0; @@ -14785,7 +14778,7 @@ static void Cmd_metalburstdamagecalculator(void) else gBattlerTarget = gProtectStructs[gBattlerAttacker].physicalBattlerId; - gBattlescriptCurrInstr += 5; + gBattlescriptCurrInstr += 9; } else if (gProtectStructs[gBattlerAttacker].specialDmg && sideAttacker != (sideTarget = GetBattlerSide(gProtectStructs[gBattlerAttacker].specialBattlerId)) @@ -14798,12 +14791,12 @@ static void Cmd_metalburstdamagecalculator(void) else gBattlerTarget = gProtectStructs[gBattlerAttacker].specialBattlerId; - gBattlescriptCurrInstr += 5; + gBattlescriptCurrInstr += 9; } else { gSpecialStatuses[gBattlerAttacker].ppNotAffectedByPressure = TRUE; - gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1); + gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 5); } } diff --git a/src/battle_tower.c b/src/battle_tower.c index 3ae7c350c..f66c8c1f7 100644 --- a/src/battle_tower.c +++ b/src/battle_tower.c @@ -79,72 +79,71 @@ static void FillPartnerParty(u16 trainerId); static void SetEReaderTrainerChecksum(struct BattleTowerEReaderTrainer *ereaderTrainer); static u8 SetTentPtrsGetLevel(void); -// Const rom data. const u16 gBattleFrontierHeldItems[] = { - ITEM_NONE, - ITEM_KINGS_ROCK, - ITEM_SITRUS_BERRY, - ITEM_ORAN_BERRY, - ITEM_CHESTO_BERRY, - ITEM_HARD_STONE, - ITEM_FOCUS_BAND, - ITEM_PERSIM_BERRY, - ITEM_MIRACLE_SEED, - ITEM_BERRY_JUICE, - ITEM_MACHO_BRACE, - ITEM_SILVER_POWDER, - ITEM_CHERI_BERRY, - ITEM_BLACK_GLASSES, - ITEM_BLACK_BELT, - ITEM_SOUL_DEW, - ITEM_CHOICE_BAND, - ITEM_MAGNET, - ITEM_SILK_SCARF, - ITEM_WHITE_HERB, - ITEM_DEEP_SEA_SCALE, - ITEM_DEEP_SEA_TOOTH, - ITEM_MYSTIC_WATER, - ITEM_SHARP_BEAK, - ITEM_QUICK_CLAW, - ITEM_LEFTOVERS, - ITEM_RAWST_BERRY, - ITEM_LIGHT_BALL, - ITEM_POISON_BARB, - ITEM_NEVER_MELT_ICE, - ITEM_ASPEAR_BERRY, - ITEM_SPELL_TAG, - ITEM_BRIGHT_POWDER, - ITEM_LEPPA_BERRY, - ITEM_SCOPE_LENS, - ITEM_TWISTED_SPOON, - ITEM_METAL_COAT, - ITEM_MENTAL_HERB, - ITEM_CHARCOAL, - ITEM_PECHA_BERRY, - ITEM_SOFT_SAND, - ITEM_LUM_BERRY, - ITEM_DRAGON_SCALE, - ITEM_DRAGON_FANG, - ITEM_IAPAPA_BERRY, - ITEM_WIKI_BERRY, - ITEM_SEA_INCENSE, - ITEM_SHELL_BELL, - ITEM_SALAC_BERRY, - ITEM_LANSAT_BERRY, - ITEM_APICOT_BERRY, - ITEM_STARF_BERRY, - ITEM_LIECHI_BERRY, - ITEM_LEEK, - ITEM_LAX_INCENSE, - ITEM_AGUAV_BERRY, - ITEM_FIGY_BERRY, - ITEM_THICK_CLUB, - ITEM_MAGO_BERRY, - ITEM_METAL_POWDER, - ITEM_PETAYA_BERRY, - ITEM_LUCKY_PUNCH, - ITEM_GANLON_BERRY + [BATTLE_FRONTIER_ITEM_NONE] = ITEM_NONE, + [BATTLE_FRONTIER_ITEM_KINGS_ROCK] = ITEM_KINGS_ROCK, + [BATTLE_FRONTIER_ITEM_SITRUS_BERRY] = ITEM_SITRUS_BERRY, + [BATTLE_FRONTIER_ITEM_ORAN_BERRY] = ITEM_ORAN_BERRY, + [BATTLE_FRONTIER_ITEM_CHESTO_BERRY] = ITEM_CHESTO_BERRY, + [BATTLE_FRONTIER_ITEM_HARD_STONE] = ITEM_HARD_STONE, + [BATTLE_FRONTIER_ITEM_FOCUS_BAND] = ITEM_FOCUS_BAND, + [BATTLE_FRONTIER_ITEM_PERSIM_BERRY] = ITEM_PERSIM_BERRY, + [BATTLE_FRONTIER_ITEM_MIRACLE_SEED] = ITEM_MIRACLE_SEED, + [BATTLE_FRONTIER_ITEM_BERRY_JUICE] = ITEM_BERRY_JUICE, + [BATTLE_FRONTIER_ITEM_MACHO_BRACE] = ITEM_MACHO_BRACE, + [BATTLE_FRONTIER_ITEM_SILVER_POWDER] = ITEM_SILVER_POWDER, + [BATTLE_FRONTIER_ITEM_CHERI_BERRY] = ITEM_CHERI_BERRY, + [BATTLE_FRONTIER_ITEM_BLACK_GLASSES] = ITEM_BLACK_GLASSES, + [BATTLE_FRONTIER_ITEM_BLACK_BELT] = ITEM_BLACK_BELT, + [BATTLE_FRONTIER_ITEM_SOUL_DEW] = ITEM_SOUL_DEW, + [BATTLE_FRONTIER_ITEM_CHOICE_BAND] = ITEM_CHOICE_BAND, + [BATTLE_FRONTIER_ITEM_MAGNET] = ITEM_MAGNET, + [BATTLE_FRONTIER_ITEM_SILK_SCARF] = ITEM_SILK_SCARF, + [BATTLE_FRONTIER_ITEM_WHITE_HERB] = ITEM_WHITE_HERB, + [BATTLE_FRONTIER_ITEM_DEEP_SEA_SCALE] = ITEM_DEEP_SEA_SCALE, + [BATTLE_FRONTIER_ITEM_DEEP_SEA_TOOTH] = ITEM_DEEP_SEA_TOOTH, + [BATTLE_FRONTIER_ITEM_MYSTIC_WATER] = ITEM_MYSTIC_WATER, + [BATTLE_FRONTIER_ITEM_SHARP_BEAK] = ITEM_SHARP_BEAK, + [BATTLE_FRONTIER_ITEM_QUICK_CLAW] = ITEM_QUICK_CLAW, + [BATTLE_FRONTIER_ITEM_LEFTOVERS] = ITEM_LEFTOVERS, + [BATTLE_FRONTIER_ITEM_RAWST_BERRY] = ITEM_RAWST_BERRY, + [BATTLE_FRONTIER_ITEM_LIGHT_BALL] = ITEM_LIGHT_BALL, + [BATTLE_FRONTIER_ITEM_POISON_BARB] = ITEM_POISON_BARB, + [BATTLE_FRONTIER_ITEM_NEVER_MELT_ICE] = ITEM_NEVER_MELT_ICE, + [BATTLE_FRONTIER_ITEM_ASPEAR_BERRY] = ITEM_ASPEAR_BERRY, + [BATTLE_FRONTIER_ITEM_SPELL_TAG] = ITEM_SPELL_TAG, + [BATTLE_FRONTIER_ITEM_BRIGHT_POWDER] = ITEM_BRIGHT_POWDER, + [BATTLE_FRONTIER_ITEM_LEPPA_BERRY] = ITEM_LEPPA_BERRY, + [BATTLE_FRONTIER_ITEM_SCOPE_LENS] = ITEM_SCOPE_LENS, + [BATTLE_FRONTIER_ITEM_TWISTED_SPOON] = ITEM_TWISTED_SPOON, + [BATTLE_FRONTIER_ITEM_METAL_COAT] = ITEM_METAL_COAT, + [BATTLE_FRONTIER_ITEM_MENTAL_HERB] = ITEM_MENTAL_HERB, + [BATTLE_FRONTIER_ITEM_CHARCOAL] = ITEM_CHARCOAL, + [BATTLE_FRONTIER_ITEM_PECHA_BERRY] = ITEM_PECHA_BERRY, + [BATTLE_FRONTIER_ITEM_SOFT_SAND] = ITEM_SOFT_SAND, + [BATTLE_FRONTIER_ITEM_LUM_BERRY] = ITEM_LUM_BERRY, + [BATTLE_FRONTIER_ITEM_DRAGON_SCALE] = ITEM_DRAGON_SCALE, + [BATTLE_FRONTIER_ITEM_DRAGON_FANG] = ITEM_DRAGON_FANG, + [BATTLE_FRONTIER_ITEM_IAPAPA_BERRY] = ITEM_IAPAPA_BERRY, + [BATTLE_FRONTIER_ITEM_WIKI_BERRY] = ITEM_WIKI_BERRY, + [BATTLE_FRONTIER_ITEM_SEA_INCENSE] = ITEM_SEA_INCENSE, + [BATTLE_FRONTIER_ITEM_SHELL_BELL] = ITEM_SHELL_BELL, + [BATTLE_FRONTIER_ITEM_SALAC_BERRY] = ITEM_SALAC_BERRY, + [BATTLE_FRONTIER_ITEM_LANSAT_BERRY] = ITEM_LANSAT_BERRY, + [BATTLE_FRONTIER_ITEM_APICOT_BERRY] = ITEM_APICOT_BERRY, + [BATTLE_FRONTIER_ITEM_STARF_BERRY] = ITEM_STARF_BERRY, + [BATTLE_FRONTIER_ITEM_LIECHI_BERRY] = ITEM_LIECHI_BERRY, + [BATTLE_FRONTIER_ITEM_LEEK] = ITEM_LEEK, + [BATTLE_FRONTIER_ITEM_LAX_INCENSE] = ITEM_LAX_INCENSE, + [BATTLE_FRONTIER_ITEM_AGUAV_BERRY] = ITEM_AGUAV_BERRY, + [BATTLE_FRONTIER_ITEM_FIGY_BERRY] = ITEM_FIGY_BERRY, + [BATTLE_FRONTIER_ITEM_THICK_CLUB] = ITEM_THICK_CLUB, + [BATTLE_FRONTIER_ITEM_MAGO_BERRY] = ITEM_MAGO_BERRY, + [BATTLE_FRONTIER_ITEM_METAL_POWDER] = ITEM_METAL_POWDER, + [BATTLE_FRONTIER_ITEM_PETAYA_BERRY] = ITEM_PETAYA_BERRY, + [BATTLE_FRONTIER_ITEM_LUCKY_PUNCH] = ITEM_LUCKY_PUNCH, + [BATTLE_FRONTIER_ITEM_GANLON_BERRY] = ITEM_GANLON_BERRY, }; #include "data/battle_frontier/battle_frontier_trainer_mons.h" @@ -3650,7 +3649,7 @@ void TrySetLinkBattleTowerEnemyPartyLevel(void) u32 species = GetMonData(&gEnemyParty[i], MON_DATA_SPECIES, NULL); if (species) { - SetMonData(&gEnemyParty[i], MON_DATA_EXP, &gExperienceTables[gBaseStats[species].growthRate][enemyLevel]); + SetMonData(&gEnemyParty[i], MON_DATA_EXP, &gExperienceTables[gSpeciesInfo[species].growthRate][enemyLevel]); CalculateMonStats(&gEnemyParty[i]); } } diff --git a/src/battle_tv.c b/src/battle_tv.c index 646c3563f..ea568a85e 100644 --- a/src/battle_tv.c +++ b/src/battle_tv.c @@ -86,220 +86,401 @@ static const u16 sVariableDmgMoves[] = static const u16 sPoints_MoveEffect[NUM_BATTLE_MOVE_EFFECTS] = { - [EFFECT_HIT] = 1, - [EFFECT_SLEEP] = 1, - [EFFECT_POISON_HIT] = 1, - [EFFECT_ABSORB] = 4, - [EFFECT_BURN_HIT] = 1, - [EFFECT_FREEZE_HIT] = 1, - [EFFECT_PARALYZE_HIT] = 1, - [EFFECT_EXPLOSION] = 0, - [EFFECT_DREAM_EATER] = 5, - [EFFECT_MIRROR_MOVE] = 1, - [EFFECT_ATTACK_UP] = 1, - [EFFECT_DEFENSE_UP] = 1, - [EFFECT_SPEED_UP] = 1, - [EFFECT_SPECIAL_ATTACK_UP] = 1, - [EFFECT_SPECIAL_DEFENSE_UP] = 1, - [EFFECT_ACCURACY_UP] = 1, - [EFFECT_EVASION_UP] = 1, -// [EFFECT_ALWAYS_HIT] = 2, - [EFFECT_ATTACK_DOWN] = 1, - [EFFECT_DEFENSE_DOWN] = 1, - [EFFECT_SPEED_DOWN] = 1, - [EFFECT_SPECIAL_ATTACK_DOWN] = 1, - [EFFECT_SPECIAL_DEFENSE_DOWN] = 1, - [EFFECT_ACCURACY_DOWN] = 1, - [EFFECT_EVASION_DOWN] = 1, - [EFFECT_HAZE] = 5, - [EFFECT_BIDE] = 5, - [EFFECT_RAMPAGE] = 4, - [EFFECT_ROAR] = 5, - [EFFECT_MULTI_HIT] = 1, - [EFFECT_CONVERSION] = 3, - [EFFECT_FLINCH_HIT] = 1, - [EFFECT_RESTORE_HP] = 3, - [EFFECT_TOXIC] = 5, - [EFFECT_PAY_DAY] = 1, - [EFFECT_LIGHT_SCREEN] = 7, - [EFFECT_TRI_ATTACK] = 1, - [EFFECT_REST] = 7, - [EFFECT_OHKO] = 7, -// [EFFECT_RAZOR_WIND] = 1, - [EFFECT_SUPER_FANG] = 5, - [EFFECT_DRAGON_RAGE] = 2, - [EFFECT_TRAP] = 4, -// [EFFECT_HIGH_CRITICAL] = 1, -// [EFFECT_DOUBLE_HIT] = 1, - [EFFECT_RECOIL_IF_MISS] = 1, - [EFFECT_MIST] = 5, - [EFFECT_FOCUS_ENERGY] = 1, - [EFFECT_RECOIL_25] = 2, - [EFFECT_CONFUSE] = 4, - [EFFECT_ATTACK_UP_2] = 1, - [EFFECT_DEFENSE_UP_2] = 1, - [EFFECT_SPEED_UP_2] = 1, - [EFFECT_SPECIAL_ATTACK_UP_2] = 1, - [EFFECT_SPECIAL_DEFENSE_UP_2] = 1, - [EFFECT_ACCURACY_UP_2] = 1, - [EFFECT_EVASION_UP_2] = 1, - [EFFECT_TRANSFORM] = 0, - [EFFECT_ATTACK_DOWN_2] = 1, - [EFFECT_DEFENSE_DOWN_2] = 1, - [EFFECT_SPEED_DOWN_2] = 1, - [EFFECT_SPECIAL_ATTACK_DOWN_2] = 1, - [EFFECT_SPECIAL_DEFENSE_DOWN_2] = 1, - [EFFECT_ACCURACY_DOWN_2] = 1, - [EFFECT_EVASION_DOWN_2] = 1, - [EFFECT_REFLECT] = 7, - [EFFECT_POISON] = 4, - [EFFECT_PARALYZE] = 4, - [EFFECT_ATTACK_DOWN_HIT] = 1, - [EFFECT_DEFENSE_DOWN_HIT] = 1, - [EFFECT_SPEED_DOWN_HIT] = 1, - [EFFECT_SPECIAL_ATTACK_DOWN_HIT] = 1, - [EFFECT_SPECIAL_DEFENSE_DOWN_HIT] = 1, - [EFFECT_ACCURACY_DOWN_HIT] = 1, - [EFFECT_EVASION_DOWN_HIT] = 1, -// [EFFECT_SKY_ATTACK] = 4, - [EFFECT_CONFUSE_HIT] = 1, -// [EFFECT_TWINEEDLE] = 1, - [EFFECT_VITAL_THROW] = 1, - [EFFECT_SUBSTITUTE] = 4, - [EFFECT_RECHARGE] = 5, - [EFFECT_RAGE] = 2, - [EFFECT_MIMIC] = 4, - [EFFECT_METRONOME] = 1, - [EFFECT_LEECH_SEED] = 4, - [EFFECT_DO_NOTHING] = 1, - [EFFECT_DISABLE] = 7, - [EFFECT_LEVEL_DAMAGE] = 2, - [EFFECT_PSYWAVE] = 1, - [EFFECT_COUNTER] = 5, - [EFFECT_ENCORE] = 7, - [EFFECT_PAIN_SPLIT] = 3, - [EFFECT_SNORE] = 3, - [EFFECT_CONVERSION_2] = 4, - [EFFECT_LOCK_ON] = 3, - [EFFECT_SKETCH] = 3, -// [EFFECT_UNUSED_60] = 3, - [EFFECT_SLEEP_TALK] = 3, - [EFFECT_DESTINY_BOND] = 3, - [EFFECT_FLAIL] = 2, - [EFFECT_SPITE] = 4, - [EFFECT_FALSE_SWIPE] = 1, - [EFFECT_HEAL_BELL] = 5, -// [EFFECT_QUICK_ATTACK] = 1, - [EFFECT_TRIPLE_KICK] = 1, - [EFFECT_THIEF] = 4, - [EFFECT_MEAN_LOOK] = 5, - [EFFECT_NIGHTMARE] = 3, - [EFFECT_MINIMIZE] = 1, - [EFFECT_CURSE] = 2, -// [EFFECT_UNUSED_6E] = 1, - [EFFECT_PROTECT] = 5, - [EFFECT_SPIKES] = 4, - [EFFECT_FORESIGHT] = 3, - [EFFECT_PERISH_SONG] = 6, - [EFFECT_SANDSTORM] = 4, - [EFFECT_ENDURE] = 3, - [EFFECT_ROLLOUT] = 3, - [EFFECT_SWAGGER] = 3, - [EFFECT_FURY_CUTTER] = 2, - [EFFECT_ATTRACT] = 4, - [EFFECT_RETURN] = 1, - [EFFECT_PRESENT] = 1, - [EFFECT_FRUSTRATION] = 1, - [EFFECT_SAFEGUARD] = 5, -// [EFFECT_THAW_HIT] = 1, Now unused - [EFFECT_MAGNITUDE] = 1, - [EFFECT_BATON_PASS] = 7, - [EFFECT_PURSUIT] = 2, - [EFFECT_RAPID_SPIN] = 2, - [EFFECT_SONICBOOM] = 1, -// [EFFECT_UNUSED_83] = 1, - [EFFECT_MORNING_SUN] = 4, - [EFFECT_SYNTHESIS] = 4, - [EFFECT_MOONLIGHT] = 4, - [EFFECT_HIDDEN_POWER] = 1, - [EFFECT_RAIN_DANCE] = 4, - [EFFECT_SUNNY_DAY] = 4, - [EFFECT_DEFENSE_UP_HIT] = 1, - [EFFECT_ATTACK_UP_HIT] = 1, - [EFFECT_ALL_STATS_UP_HIT] = 1, -// [EFFECT_UNUSED_8D] = 1, - [EFFECT_BELLY_DRUM] = 7, - [EFFECT_PSYCH_UP] = 7, - [EFFECT_MIRROR_COAT] = 6, - [EFFECT_SKULL_BASH] = 3, - [EFFECT_TWISTER] = 1, - [EFFECT_EARTHQUAKE] = 1, - [EFFECT_FUTURE_SIGHT] = 1, - [EFFECT_GUST] = 1, - [EFFECT_FLINCH_MINIMIZE_HIT] = 1, - [EFFECT_SOLAR_BEAM] = 1, - [EFFECT_THUNDER] = 1, - [EFFECT_TELEPORT] = 1, - [EFFECT_BEAT_UP] = 2, - [EFFECT_SEMI_INVULNERABLE] = 3, - [EFFECT_DEFENSE_CURL] = 1, - [EFFECT_SOFTBOILED] = 1, - [EFFECT_FAKE_OUT] = 4, - [EFFECT_UPROAR] = 4, - [EFFECT_STOCKPILE] = 3, - [EFFECT_SPIT_UP] = 3, - [EFFECT_SWALLOW] = 3, -// [EFFECT_UNUSED_A3] = 1, - [EFFECT_HAIL] = 4, - [EFFECT_TORMENT] = 7, - [EFFECT_FLATTER] = 7, - [EFFECT_WILL_O_WISP] = 5, - [EFFECT_MEMENTO] = 7, - [EFFECT_FACADE] = 1, - [EFFECT_FOCUS_PUNCH] = 7, - [EFFECT_SMELLINGSALT] = 1, - [EFFECT_FOLLOW_ME] = 5, - [EFFECT_NATURE_POWER] = 0, - [EFFECT_CHARGE] = 4, - [EFFECT_TAUNT] = 4, - [EFFECT_HELPING_HAND] = 4, - [EFFECT_TRICK] = 4, - [EFFECT_ROLE_PLAY] = 4, - [EFFECT_WISH] = 2, - [EFFECT_ASSIST] = 2, - [EFFECT_INGRAIN] = 6, - [EFFECT_SUPERPOWER] = 3, - [EFFECT_MAGIC_COAT] = 6, - [EFFECT_RECYCLE] = 4, - [EFFECT_REVENGE] = 4, - [EFFECT_BRICK_BREAK] = 2, - [EFFECT_YAWN] = 5, - [EFFECT_KNOCK_OFF] = 2, - [EFFECT_ENDEAVOR] = 1, - [EFFECT_ERUPTION] = 1, - [EFFECT_SKILL_SWAP] = 6, - [EFFECT_IMPRISON] = 6, - [EFFECT_REFRESH] = 6, - [EFFECT_GRUDGE] = 1, - [EFFECT_SNATCH] = 1, - [EFFECT_LOW_KICK] = 1, - [EFFECT_SECRET_POWER] = 1, - [EFFECT_RECOIL_33] = 2, - [EFFECT_TEETER_DANCE] = 6, -// [EFFECT_BLAZE_KICK] = 1, - [EFFECT_MUD_SPORT] = 4, - [EFFECT_POISON_FANG] = 1, - [EFFECT_WEATHER_BALL] = 1, - [EFFECT_OVERHEAT] = 3, - [EFFECT_TICKLE] = 1, - [EFFECT_COSMIC_POWER] = 1, - [EFFECT_SKY_UPPERCUT] = 1, - [EFFECT_BULK_UP] = 1, -// [EFFECT_POISON_TAIL] = 1, - [EFFECT_WATER_SPORT] = 4, - [EFFECT_CALM_MIND] = 1, - [EFFECT_DRAGON_DANCE] = 1, - [EFFECT_CAMOUFLAGE] = 3 + [EFFECT_HIT] = 1, + [EFFECT_SLEEP] = 1, + [EFFECT_POISON_HIT] = 1, + [EFFECT_ABSORB] = 4, + [EFFECT_BURN_HIT] = 1, + [EFFECT_FREEZE_HIT] = 1, + [EFFECT_PARALYZE_HIT] = 1, + [EFFECT_EXPLOSION] = 0, + [EFFECT_DREAM_EATER] = 5, + [EFFECT_MIRROR_MOVE] = 1, + [EFFECT_ATTACK_UP] = 1, + [EFFECT_DEFENSE_UP] = 1, + [EFFECT_SPEED_UP] = 1, + [EFFECT_SPECIAL_ATTACK_UP] = 1, + [EFFECT_SPECIAL_DEFENSE_UP] = 1, + [EFFECT_ACCURACY_UP] = 1, + [EFFECT_EVASION_UP] = 1, +// [EFFECT_ALWAYS_HIT] = 2, + [EFFECT_ATTACK_DOWN] = 1, + [EFFECT_DEFENSE_DOWN] = 1, + [EFFECT_SPEED_DOWN] = 1, + [EFFECT_SPECIAL_ATTACK_DOWN] = 1, + [EFFECT_SPECIAL_DEFENSE_DOWN] = 1, + [EFFECT_ACCURACY_DOWN] = 1, + [EFFECT_EVASION_DOWN] = 1, + [EFFECT_HAZE] = 5, + [EFFECT_BIDE] = 5, + [EFFECT_RAMPAGE] = 4, + [EFFECT_ROAR] = 5, + [EFFECT_MULTI_HIT] = 1, + [EFFECT_CONVERSION] = 3, + [EFFECT_FLINCH_HIT] = 1, + [EFFECT_RESTORE_HP] = 3, + [EFFECT_TOXIC] = 5, + [EFFECT_PAY_DAY] = 1, + [EFFECT_LIGHT_SCREEN] = 7, + [EFFECT_TRI_ATTACK] = 1, + [EFFECT_REST] = 7, + [EFFECT_OHKO] = 7, +// [EFFECT_RAZOR_WIND] = 1, + [EFFECT_SUPER_FANG] = 5, + [EFFECT_DRAGON_RAGE] = 2, + [EFFECT_TRAP] = 4, +// [EFFECT_HIGH_CRITICAL] = 1, +// [EFFECT_DOUBLE_HIT] = 1, + [EFFECT_RECOIL_IF_MISS] = 1, + [EFFECT_MIST] = 5, + [EFFECT_FOCUS_ENERGY] = 1, + [EFFECT_RECOIL_25] = 2, + [EFFECT_CONFUSE] = 4, + [EFFECT_ATTACK_UP_2] = 1, + [EFFECT_DEFENSE_UP_2] = 1, + [EFFECT_SPEED_UP_2] = 1, + [EFFECT_SPECIAL_ATTACK_UP_2] = 1, + [EFFECT_SPECIAL_DEFENSE_UP_2] = 1, + [EFFECT_ACCURACY_UP_2] = 1, + [EFFECT_EVASION_UP_2] = 1, + [EFFECT_TRANSFORM] = 0, + [EFFECT_ATTACK_DOWN_2] = 1, + [EFFECT_DEFENSE_DOWN_2] = 1, + [EFFECT_SPEED_DOWN_2] = 1, + [EFFECT_SPECIAL_ATTACK_DOWN_2] = 1, + [EFFECT_SPECIAL_DEFENSE_DOWN_2] = 1, + [EFFECT_ACCURACY_DOWN_2] = 1, + [EFFECT_EVASION_DOWN_2] = 1, + [EFFECT_REFLECT] = 7, + [EFFECT_POISON] = 4, + [EFFECT_PARALYZE] = 4, + [EFFECT_ATTACK_DOWN_HIT] = 1, + [EFFECT_DEFENSE_DOWN_HIT] = 1, + [EFFECT_SPEED_DOWN_HIT] = 1, + [EFFECT_SPECIAL_ATTACK_DOWN_HIT] = 1, + [EFFECT_SPECIAL_DEFENSE_DOWN_HIT] = 1, + [EFFECT_ACCURACY_DOWN_HIT] = 1, + [EFFECT_EVASION_DOWN_HIT] = 1, +// [EFFECT_SKY_ATTACK] = 4, + [EFFECT_CONFUSE_HIT] = 1, +// [EFFECT_TWINEEDLE] = 1, + [EFFECT_VITAL_THROW] = 1, + [EFFECT_SUBSTITUTE] = 4, + [EFFECT_RECHARGE] = 5, + [EFFECT_RAGE] = 2, + [EFFECT_MIMIC] = 4, + [EFFECT_METRONOME] = 1, + [EFFECT_LEECH_SEED] = 4, + [EFFECT_DO_NOTHING] = 1, + [EFFECT_DISABLE] = 7, + [EFFECT_LEVEL_DAMAGE] = 2, + [EFFECT_PSYWAVE] = 1, + [EFFECT_COUNTER] = 5, + [EFFECT_ENCORE] = 7, + [EFFECT_PAIN_SPLIT] = 3, + [EFFECT_SNORE] = 3, + [EFFECT_CONVERSION_2] = 4, + [EFFECT_LOCK_ON] = 3, + [EFFECT_SKETCH] = 3, +// [EFFECT_UNUSED_60] = 3, + [EFFECT_SLEEP_TALK] = 3, + [EFFECT_DESTINY_BOND] = 3, + [EFFECT_FLAIL] = 2, + [EFFECT_SPITE] = 4, + [EFFECT_FALSE_SWIPE] = 1, + [EFFECT_HEAL_BELL] = 5, +// [EFFECT_QUICK_ATTACK] = 1, + [EFFECT_TRIPLE_KICK] = 1, + [EFFECT_THIEF] = 4, + [EFFECT_MEAN_LOOK] = 5, + [EFFECT_NIGHTMARE] = 3, + [EFFECT_MINIMIZE] = 1, + [EFFECT_CURSE] = 2, +// [EFFECT_UNUSED_6E] = 1, + [EFFECT_PROTECT] = 5, + [EFFECT_SPIKES] = 4, + [EFFECT_FORESIGHT] = 3, + [EFFECT_PERISH_SONG] = 6, + [EFFECT_SANDSTORM] = 4, + [EFFECT_ENDURE] = 3, + [EFFECT_ROLLOUT] = 3, + [EFFECT_SWAGGER] = 3, + [EFFECT_FURY_CUTTER] = 2, + [EFFECT_ATTRACT] = 4, + [EFFECT_RETURN] = 1, + [EFFECT_PRESENT] = 1, + [EFFECT_FRUSTRATION] = 1, + [EFFECT_SAFEGUARD] = 5, +// [EFFECT_THAW_HIT] = 1, Now unused + [EFFECT_MAGNITUDE] = 1, + [EFFECT_BATON_PASS] = 7, + [EFFECT_PURSUIT] = 2, + [EFFECT_RAPID_SPIN] = 2, + [EFFECT_SONICBOOM] = 1, +// [EFFECT_UNUSED_83] = 1, + [EFFECT_MORNING_SUN] = 4, + [EFFECT_SYNTHESIS] = 4, + [EFFECT_MOONLIGHT] = 4, + [EFFECT_HIDDEN_POWER] = 1, + [EFFECT_RAIN_DANCE] = 4, + [EFFECT_SUNNY_DAY] = 4, + [EFFECT_DEFENSE_UP_HIT] = 1, + [EFFECT_ATTACK_UP_HIT] = 1, + [EFFECT_ALL_STATS_UP_HIT] = 1, +// [EFFECT_UNUSED_8D] = 1, + [EFFECT_BELLY_DRUM] = 7, + [EFFECT_PSYCH_UP] = 7, + [EFFECT_MIRROR_COAT] = 6, + [EFFECT_SKULL_BASH] = 3, + [EFFECT_TWISTER] = 1, + [EFFECT_EARTHQUAKE] = 1, + [EFFECT_FUTURE_SIGHT] = 1, + [EFFECT_GUST] = 1, + [EFFECT_FLINCH_MINIMIZE_HIT] = 1, + [EFFECT_SOLAR_BEAM] = 1, + [EFFECT_THUNDER] = 1, + [EFFECT_TELEPORT] = 1, + [EFFECT_BEAT_UP] = 2, + [EFFECT_SEMI_INVULNERABLE] = 3, + [EFFECT_DEFENSE_CURL] = 1, + [EFFECT_SOFTBOILED] = 1, + [EFFECT_FAKE_OUT] = 4, + [EFFECT_UPROAR] = 4, + [EFFECT_STOCKPILE] = 3, + [EFFECT_SPIT_UP] = 3, + [EFFECT_SWALLOW] = 3, +// [EFFECT_UNUSED_A3] = 1, + [EFFECT_HAIL] = 4, + [EFFECT_TORMENT] = 7, + [EFFECT_FLATTER] = 7, + [EFFECT_WILL_O_WISP] = 5, + [EFFECT_MEMENTO] = 7, + [EFFECT_FACADE] = 1, + [EFFECT_FOCUS_PUNCH] = 7, + [EFFECT_SMELLINGSALT] = 1, + [EFFECT_FOLLOW_ME] = 5, + [EFFECT_NATURE_POWER] = 0, + [EFFECT_CHARGE] = 4, + [EFFECT_TAUNT] = 4, + [EFFECT_HELPING_HAND] = 4, + [EFFECT_TRICK] = 4, + [EFFECT_ROLE_PLAY] = 4, + [EFFECT_WISH] = 2, + [EFFECT_ASSIST] = 2, + [EFFECT_INGRAIN] = 6, + [EFFECT_SUPERPOWER] = 3, + [EFFECT_MAGIC_COAT] = 6, + [EFFECT_RECYCLE] = 4, + [EFFECT_REVENGE] = 4, + [EFFECT_BRICK_BREAK] = 2, + [EFFECT_YAWN] = 5, + [EFFECT_KNOCK_OFF] = 2, + [EFFECT_ENDEAVOR] = 1, + [EFFECT_ERUPTION] = 1, + [EFFECT_SKILL_SWAP] = 6, + [EFFECT_IMPRISON] = 6, + [EFFECT_REFRESH] = 6, + [EFFECT_GRUDGE] = 1, + [EFFECT_SNATCH] = 1, + [EFFECT_LOW_KICK] = 1, + [EFFECT_SECRET_POWER] = 1, + [EFFECT_RECOIL_33] = 2, + [EFFECT_TEETER_DANCE] = 6, +// [EFFECT_BLAZE_KICK] = 1, + [EFFECT_MUD_SPORT] = 4, + [EFFECT_POISON_FANG] = 1, + [EFFECT_WEATHER_BALL] = 1, + [EFFECT_OVERHEAT] = 3, + [EFFECT_TICKLE] = 1, + [EFFECT_COSMIC_POWER] = 1, + [EFFECT_SKY_UPPERCUT] = 1, + [EFFECT_BULK_UP] = 1, +// [EFFECT_POISON_TAIL] = 1, + [EFFECT_WATER_SPORT] = 4, + [EFFECT_CALM_MIND] = 1, + [EFFECT_DRAGON_DANCE] = 1, + [EFFECT_CAMOUFLAGE] = 3, + [EFFECT_PLEDGE] = 0, // TODO: Assign points + [EFFECT_FLING] = 0, // TODO: Assign points + [EFFECT_NATURAL_GIFT] = 0, // TODO: Assign points + [EFFECT_WAKE_UP_SLAP] = 0, // TODO: Assign points + [EFFECT_WRING_OUT] = 0, // TODO: Assign points + [EFFECT_HEX] = 0, // TODO: Assign points + [EFFECT_ASSURANCE] = 0, // TODO: Assign points + [EFFECT_TRUMP_CARD] = 0, // TODO: Assign points + [EFFECT_ACROBATICS] = 0, // TODO: Assign points + [EFFECT_HEAT_CRASH] = 0, // TODO: Assign points + [EFFECT_PUNISHMENT] = 0, // TODO: Assign points + [EFFECT_STORED_POWER] = 0, // TODO: Assign points + [EFFECT_ELECTRO_BALL] = 0, // TODO: Assign points + [EFFECT_GYRO_BALL] = 0, // TODO: Assign points + [EFFECT_ECHOED_VOICE] = 0, // TODO: Assign points + [EFFECT_PAYBACK] = 0, // TODO: Assign points + [EFFECT_ROUND] = 0, // TODO: Assign points + [EFFECT_BRINE] = 0, // TODO: Assign points + [EFFECT_VENOSHOCK] = 0, // TODO: Assign points + [EFFECT_RETALIATE] = 0, // TODO: Assign points + [EFFECT_BULLDOZE] = 0, // TODO: Assign points + [EFFECT_FOUL_PLAY] = 0, // TODO: Assign points + [EFFECT_PSYSHOCK] = 0, // TODO: Assign points + [EFFECT_ROOST] = 0, // TODO: Assign points + [EFFECT_GRAVITY] = 0, // TODO: Assign points + [EFFECT_MIRACLE_EYE] = 0, // TODO: Assign points + [EFFECT_TAILWIND] = 0, // TODO: Assign points + [EFFECT_EMBARGO] = 0, // TODO: Assign points + [EFFECT_AQUA_RING] = 0, // TODO: Assign points + [EFFECT_TRICK_ROOM] = 0, // TODO: Assign points + [EFFECT_WONDER_ROOM] = 0, // TODO: Assign points + [EFFECT_MAGIC_ROOM] = 0, // TODO: Assign points + [EFFECT_MAGNET_RISE] = 0, // TODO: Assign points + [EFFECT_TOXIC_SPIKES] = 0, // TODO: Assign points + [EFFECT_GASTRO_ACID] = 0, // TODO: Assign points + [EFFECT_STEALTH_ROCK] = 0, // TODO: Assign points + [EFFECT_TELEKINESIS] = 0, // TODO: Assign points + [EFFECT_POWER_SWAP] = 0, // TODO: Assign points + [EFFECT_GUARD_SWAP] = 0, // TODO: Assign points + [EFFECT_HEART_SWAP] = 0, // TODO: Assign points + [EFFECT_POWER_SPLIT] = 0, // TODO: Assign points + [EFFECT_GUARD_SPLIT] = 0, // TODO: Assign points + [EFFECT_STICKY_WEB] = 0, // TODO: Assign points + [EFFECT_METAL_BURST] = 0, // TODO: Assign points + [EFFECT_LUCKY_CHANT] = 0, // TODO: Assign points + [EFFECT_SUCKER_PUNCH] = 0, // TODO: Assign points + [EFFECT_SPECIAL_DEFENSE_DOWN_HIT_2] = 0, // TODO: Assign points + [EFFECT_SIMPLE_BEAM] = 0, // TODO: Assign points + [EFFECT_ENTRAINMENT] = 0, // TODO: Assign points + [EFFECT_HEAL_PULSE] = 0, // TODO: Assign points + [EFFECT_QUASH] = 0, // TODO: Assign points + [EFFECT_ION_DELUGE] = 0, // TODO: Assign points + [EFFECT_FREEZE_DRY] = 0, // TODO: Assign points + [EFFECT_TOPSY_TURVY] = 0, // TODO: Assign points + [EFFECT_MISTY_TERRAIN] = 0, // TODO: Assign points + [EFFECT_GRASSY_TERRAIN] = 0, // TODO: Assign points + [EFFECT_ELECTRIC_TERRAIN] = 0, // TODO: Assign points + [EFFECT_PSYCHIC_TERRAIN] = 0, // TODO: Assign points + [EFFECT_ATTACK_ACCURACY_UP] = 0, // TODO: Assign points + [EFFECT_ATTACK_SPATK_UP] = 0, // TODO: Assign points + [EFFECT_HURRICANE] = 0, // TODO: Assign points + [EFFECT_TWO_TYPED_MOVE] = 0, // TODO: Assign points + [EFFECT_ME_FIRST] = 0, // TODO: Assign points + [EFFECT_SPEED_UP_HIT] = 0, // TODO: Assign points + [EFFECT_QUIVER_DANCE] = 0, // TODO: Assign points + [EFFECT_COIL] = 0, // TODO: Assign points + [EFFECT_ELECTRIFY] = 0, // TODO: Assign points + [EFFECT_REFLECT_TYPE] = 0, // TODO: Assign points + [EFFECT_SOAK] = 0, // TODO: Assign points + [EFFECT_GROWTH] = 0, // TODO: Assign points + [EFFECT_CLOSE_COMBAT] = 0, // TODO: Assign points + [EFFECT_LAST_RESORT] = 0, // TODO: Assign points + [EFFECT_RECOIL_33_STATUS] = 0, // TODO: Assign points + [EFFECT_FLINCH_STATUS] = 0, // TODO: Assign points + [EFFECT_RECOIL_50] = 0, // TODO: Assign points + [EFFECT_SHELL_SMASH] = 0, // TODO: Assign points + [EFFECT_SHIFT_GEAR] = 0, // TODO: Assign points + [EFFECT_DEFENSE_UP_3] = 0, // TODO: Assign points + [EFFECT_NOBLE_ROAR] = 0, // TODO: Assign points + [EFFECT_VENOM_DRENCH] = 0, // TODO: Assign points + [EFFECT_TOXIC_THREAD] = 0, // TODO: Assign points + [EFFECT_CLEAR_SMOG] = 0, // TODO: Assign points + [EFFECT_HIT_SWITCH_TARGET] = 0, // TODO: Assign points + [EFFECT_FINAL_GAMBIT] = 0, // TODO: Assign points + [EFFECT_CHANGE_TYPE_ON_ITEM] = 0, // TODO: Assign points + [EFFECT_AUTOTOMIZE] = 0, // TODO: Assign points + [EFFECT_COPYCAT] = 0, // TODO: Assign points + [EFFECT_DEFOG] = 0, // TODO: Assign points + [EFFECT_HIT_ENEMY_HEAL_ALLY] = 0, // TODO: Assign points + [EFFECT_SMACK_DOWN] = 0, // TODO: Assign points + [EFFECT_SYNCHRONOISE] = 0, // TODO: Assign points + [EFFECT_PSYCHO_SHIFT] = 0, // TODO: Assign points + [EFFECT_POWER_TRICK] = 0, // TODO: Assign points + [EFFECT_FLAME_BURST] = 0, // TODO: Assign points + [EFFECT_AFTER_YOU] = 0, // TODO: Assign points + [EFFECT_BESTOW] = 0, // TODO: Assign points + [EFFECT_ROTOTILLER] = 0, // TODO: Assign points + [EFFECT_FLOWER_SHIELD] = 0, // TODO: Assign points + [EFFECT_HIT_PREVENT_ESCAPE] = 0, // TODO: Assign points + [EFFECT_SPEED_SWAP] = 0, // TODO: Assign points + [EFFECT_DEFENSE_UP2_HIT] = 0, // TODO: Assign points + [EFFECT_REVELATION_DANCE] = 0, // TODO: Assign points + [EFFECT_AURORA_VEIL] = 0, // TODO: Assign points + [EFFECT_THIRD_TYPE] = 0, // TODO: Assign points + [EFFECT_FEINT] = 0, // TODO: Assign points + [EFFECT_SPARKLING_ARIA] = 0, // TODO: Assign points + [EFFECT_ACUPRESSURE] = 0, // TODO: Assign points + [EFFECT_AROMATIC_MIST] = 0, // TODO: Assign points + [EFFECT_POWDER] = 0, // TODO: Assign points + [EFFECT_SP_ATTACK_UP_HIT] = 0, // TODO: Assign points + [EFFECT_BELCH] = 0, // TODO: Assign points + [EFFECT_PARTING_SHOT] = 0, // TODO: Assign points + [EFFECT_SPECTRAL_THIEF] = 0, // TODO: Assign points + [EFFECT_V_CREATE] = 0, // TODO: Assign points + [EFFECT_MAT_BLOCK] = 0, // TODO: Assign points + [EFFECT_STOMPING_TANTRUM] = 0, // TODO: Assign points + [EFFECT_CORE_ENFORCER] = 0, // TODO: Assign points + [EFFECT_INSTRUCT] = 0, // TODO: Assign points + [EFFECT_THROAT_CHOP] = 0, // TODO: Assign points + [EFFECT_LASER_FOCUS] = 0, // TODO: Assign points + [EFFECT_MAGNETIC_FLUX] = 0, // TODO: Assign points + [EFFECT_GEAR_UP] = 0, // TODO: Assign points + [EFFECT_INCINERATE] = 0, // TODO: Assign points + [EFFECT_BUG_BITE] = 0, // TODO: Assign points + [EFFECT_STRENGTH_SAP] = 0, // TODO: Assign points + [EFFECT_MIND_BLOWN] = 0, // TODO: Assign points + [EFFECT_PURIFY] = 0, // TODO: Assign points + [EFFECT_BURN_UP] = 0, // TODO: Assign points + [EFFECT_SHORE_UP] = 0, // TODO: Assign points + [EFFECT_GEOMANCY] = 0, // TODO: Assign points + [EFFECT_FAIRY_LOCK] = 0, // TODO: Assign points + [EFFECT_ALLY_SWITCH] = 0, // TODO: Assign points + [EFFECT_RELIC_SONG] = 0, // TODO: Assign points + [EFFECT_ATTACKER_DEFENSE_DOWN_HIT] = 0, // TODO: Assign points + [EFFECT_BODY_PRESS] = 0, // TODO: Assign points + [EFFECT_EERIE_SPELL] = 0, // TODO: Assign points + [EFFECT_JUNGLE_HEALING] = 0, // TODO: Assign points + [EFFECT_COACHING] = 0, // TODO: Assign points + [EFFECT_LASH_OUT] = 0, // TODO: Assign points + [EFFECT_GRASSY_GLIDE] = 0, // TODO: Assign points + [EFFECT_REMOVE_TERRAIN] = 0, // TODO: Assign points + [EFFECT_DYNAMAX_DOUBLE_DMG] = 0, // TODO: Assign points + [EFFECT_DECORATE] = 0, // TODO: Assign points + [EFFECT_SNIPE_SHOT] = 0, // TODO: Assign points + [EFFECT_RECOIL_HP_25] = 0, // TODO: Assign points + [EFFECT_STUFF_CHEEKS] = 0, // TODO: Assign points + [EFFECT_GRAV_APPLE] = 0, // TODO: Assign points + [EFFECT_EVASION_UP_HIT] = 0, // TODO: Assign points + [EFFECT_GLITZY_GLOW] = 0, // TODO: Assign points + [EFFECT_BADDY_BAD] = 0, // TODO: Assign points + [EFFECT_SAPPY_SEED] = 0, // TODO: Assign points + [EFFECT_FREEZY_FROST] = 0, // TODO: Assign points + [EFFECT_SPARKLY_SWIRL] = 0, // TODO: Assign points + [EFFECT_PLASMA_FISTS] = 0, // TODO: Assign points + [EFFECT_HYPERSPACE_FURY] = 0, // TODO: Assign points + [EFFECT_AURA_WHEEL] = 0, // TODO: Assign points + [EFFECT_PHOTON_GEYSER] = 0, // TODO: Assign points + [EFFECT_SHELL_SIDE_ARM] = 0, // TODO: Assign points + [EFFECT_TERRAIN_PULSE] = 0, // TODO: Assign points + [EFFECT_JAW_LOCK] = 0, // TODO: Assign points + [EFFECT_NO_RETREAT] = 0, // TODO: Assign points + [EFFECT_TAR_SHOT] = 0, // TODO: Assign points + [EFFECT_POLTERGEIST] = 0, // TODO: Assign points + [EFFECT_OCTOLOCK] = 0, // TODO: Assign points + [EFFECT_CLANGOROUS_SOUL] = 0, // TODO: Assign points + [EFFECT_BOLT_BEAK] = 0, // TODO: Assign points + [EFFECT_SKY_DROP] = 0, // TODO: Assign points + [EFFECT_EXPANDING_FORCE] = 0, // TODO: Assign points + [EFFECT_SCALE_SHOT] = 0, // TODO: Assign points + [EFFECT_METEOR_BEAM] = 0, // TODO: Assign points + [EFFECT_RISING_VOLTAGE] = 0, // TODO: Assign points + [EFFECT_BEAK_BLAST] = 0, // TODO: Assign points + [EFFECT_COURT_CHANGE] = 0, // TODO: Assign points + [EFFECT_STEEL_BEAM] = 0, // TODO: Assign points + [EFFECT_EXTREME_EVOBOOST] = 0, // TODO: Assign points + [EFFECT_DAMAGE_SET_TERRAIN] = 0, // TODO: Assign points + [EFFECT_DARK_VOID] = 0, // TODO: Assign points + [EFFECT_SLEEP_HIT] = 1, + [EFFECT_DOUBLE_SHOCK] = 0, // TODO: Assign points + [EFFECT_SPECIAL_ATTACK_UP_HIT] = 1, + [EFFECT_VICTORY_DANCE] = 0, // TODO: Assign points }; static const u16 sPoints_Effectiveness[] = diff --git a/src/battle_util.c b/src/battle_util.c index 98e8bbfd2..00e3b869b 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -34,7 +34,6 @@ #include "field_weather.h" #include "constants/abilities.h" #include "constants/battle_anim.h" -#include "constants/battle_config.h" #include "constants/battle_move_effects.h" #include "constants/battle_script_commands.h" #include "constants/battle_string_ids.h" @@ -60,6 +59,8 @@ static bool32 TryRemoveScreens(u8 battler); static bool32 IsUnnerveAbilityOnOpposingSide(u8 battlerId); static u8 GetFlingPowerFromItemId(u16 itemId); static void SetRandomMultiHitCounter(); +static u32 GetBattlerItemHoldEffectParam(u8 battlerId, u16 item); +static u16 GetInverseTypeMultiplier(u16 multiplier); extern const u8 *const gBattleScriptsForMoveEffects[]; extern const u8 *const gBattlescriptsForRunningByItem[]; @@ -231,7 +232,7 @@ static u8 CalcBeatUpPower(void) party = gEnemyParty; // Party slot is set in the battle script for Beat Up species = GetMonData(&party[gBattleCommunication[0] - 1], MON_DATA_SPECIES); - basePower = (gBaseStats[species].baseAttack / 10) + 5; + basePower = (gSpeciesInfo[species].baseAttack / 10) + 5; return basePower; } @@ -1256,38 +1257,6 @@ static const u16 sTypeEffectivenessTable[NUMBER_OF_MON_TYPES][NUMBER_OF_MON_TYPE {X(1.0), X(2.0), X(1.0), X(0.5), X(1.0), X(1.0), X(1.0), X(1.0), X(0.5), X(1.0), X(0.5), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(2.0), X(2.0), X(1.0)}, // fairy }; -static const u16 sInverseTypeEffectivenessTable[NUMBER_OF_MON_TYPES][NUMBER_OF_MON_TYPES] = -{ -// normal fight flying poison ground rock bug ghost steel mystery fire water grass electric psychic ice dragon dark fairy - {X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(2.0), X(1.0), X(2.0), X(2.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0)}, // normal - {X(0.5), X(1.0), X(2.0), X(2.0), X(1.0), X(0.5), X(2.0), X(2.0), X(0.5), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(2.0), X(0.5), X(1.0), X(0.5), X(2.0)}, // fight - {X(1.0), X(0.5), X(1.0), X(1.0), X(1.0), X(2.0), X(0.5), X(1.0), X(2.0), X(1.0), X(1.0), X(1.0), X(0.5), X(2.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0)}, // flying - {X(1.0), X(1.0), X(1.0), X(2.0), X(2.0), X(2.0), X(1.0), X(2.0), X(2.0), X(1.0), X(1.0), X(1.0), X(0.5), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(0.5)}, // poison - {X(1.0), X(1.0), X(2.0), X(0.5), X(1.0), X(0.5), X(2.0), X(1.0), X(0.5), X(1.0), X(0.5), X(1.0), X(2.0), X(0.5), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0)}, // ground - {X(1.0), X(2.0), X(0.5), X(1.0), X(2.0), X(1.0), X(0.5), X(1.0), X(2.0), X(1.0), X(0.5), X(1.0), X(1.0), X(1.0), X(1.0), X(0.5), X(1.0), X(1.0), X(1.0)}, // rock - {X(1.0), X(2.0), X(2.0), X(2.0), X(1.0), X(1.0), X(1.0), X(2.0), X(2.0), X(1.0), X(2.0), X(1.0), X(0.5), X(1.0), X(0.5), X(1.0), X(1.0), X(0.5), X(2.0)}, // bug - #if B_STEEL_RESISTANCES >= GEN_6 - {X(2.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(0.5), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(0.5), X(1.0), X(1.0), X(2.0), X(1.0)}, // ghost - #else - {X(2.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(0.5), X(2.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(0.5), X(1.0), X(1.0), X(2.0), X(1.0)}, // ghost - #endif - {X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(0.5), X(1.0), X(1.0), X(2.0), X(1.0), X(2.0), X(2.0), X(1.0), X(2.0), X(1.0), X(0.5), X(1.0), X(1.0), X(0.5)}, // steel - {X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0)}, // mystery - {X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(2.0), X(0.5), X(1.0), X(0.5), X(1.0), X(2.0), X(2.0), X(0.5), X(1.0), X(1.0), X(0.5), X(2.0), X(1.0), X(1.0)}, // fire - {X(1.0), X(1.0), X(1.0), X(1.0), X(0.5), X(0.5), X(1.0), X(1.0), X(1.0), X(1.0), X(0.5), X(2.0), X(2.0), X(1.0), X(1.0), X(1.0), X(2.0), X(1.0), X(1.0)}, // water - {X(1.0), X(1.0), X(2.0), X(2.0), X(0.5), X(0.5), X(2.0), X(1.0), X(2.0), X(1.0), X(2.0), X(0.5), X(2.0), X(1.0), X(1.0), X(1.0), X(2.0), X(1.0), X(1.0)}, // grass - {X(1.0), X(1.0), X(0.5), X(1.0), X(2.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(0.5), X(2.0), X(2.0), X(1.0), X(1.0), X(2.0), X(1.0), X(1.0)}, // electric - {X(1.0), X(0.5), X(1.0), X(0.5), X(1.0), X(1.0), X(1.0), X(1.0), X(2.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(2.0), X(1.0), X(1.0), X(2.0), X(1.0)}, // psychic - {X(1.0), X(1.0), X(0.5), X(1.0), X(0.5), X(1.0), X(1.0), X(1.0), X(2.0), X(1.0), X(2.0), X(2.0), X(0.5), X(1.0), X(1.0), X(2.0), X(0.5), X(1.0), X(1.0)}, // ice - {X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(2.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(0.5), X(1.0), X(2.0)}, // dragon - #if B_STEEL_RESISTANCES >= GEN_6 - {X(1.0), X(2.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(0.5), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(0.5), X(1.0), X(1.0), X(2.0), X(2.0)}, // dark - #else - {X(1.0), X(2.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(0.5), X(2.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(0.5), X(1.0), X(1.0), X(2.0), X(2.0)}, // dark - #endif - {X(1.0), X(0.5), X(1.0), X(2.0), X(1.0), X(1.0), X(1.0), X(1.0), X(2.0), X(1.0), X(2.0), X(1.0), X(1.0), X(1.0), X(1.0), X(1.0), X(0.5), X(0.5), X(1.0)}, // fairy -}; - #undef X // code @@ -2075,8 +2044,8 @@ u8 GetImprisonedMovesCount(u8 battlerId, u16 move) void RestoreBattlerOriginalTypes(u8 battlerId) { - gBattleMons[battlerId].type1 = gBaseStats[gBattleMons[battlerId].species].type1; - gBattleMons[battlerId].type2 = gBaseStats[gBattleMons[battlerId].species].type2; + gBattleMons[battlerId].type1 = gSpeciesInfo[gBattleMons[battlerId].species].type1; + gBattleMons[battlerId].type2 = gSpeciesInfo[gBattleMons[battlerId].species].type2; } void TryToApplyMimicry(u8 battlerId, bool8 various) @@ -2132,7 +2101,7 @@ u32 GetBattlerFriendshipScore(u8 battlerId) if (side != B_SIDE_PLAYER) return FRIENDSHIP_NONE; - else if (gBaseStats[species].flags & SPECIES_FLAG_MEGA_EVOLUTION + else if (gSpeciesInfo[species].flags & SPECIES_FLAG_MEGA_EVOLUTION || (gBattleTypeFlags & (BATTLE_TYPE_EREADER_TRAINER | BATTLE_TYPE_FRONTIER | BATTLE_TYPE_LINK @@ -3223,8 +3192,7 @@ u8 DoBattlerEndTurnEffects(void) gBattleStruct->turnEffectsTracker++; break; case ENDTURN_PLASMA_FISTS: - for (i = 0; i < gBattlersCount; i++) - gStatuses4[i] &= ~STATUS4_PLASMA_FISTS; + gStatuses4[gActiveBattler] &= ~STATUS4_PLASMA_FISTS; gBattleStruct->turnEffectsTracker++; break; case ENDTURN_BATTLER_COUNT: // done @@ -4237,7 +4205,7 @@ static bool32 TryChangeBattleTerrain(u32 battler, u32 statusFlag, u8 *timer) { if (!(gFieldStatuses & statusFlag)) { - gFieldStatuses &= ~(STATUS_FIELD_MISTY_TERRAIN | STATUS_FIELD_GRASSY_TERRAIN | EFFECT_ELECTRIC_TERRAIN | EFFECT_PSYCHIC_TERRAIN); + gFieldStatuses &= ~(STATUS_FIELD_MISTY_TERRAIN | STATUS_FIELD_GRASSY_TERRAIN | STATUS_FIELD_ELECTRIC_TERRAIN | STATUS_FIELD_PSYCHIC_TERRAIN); gFieldStatuses |= statusFlag; if (GetBattlerHoldEffect(battler, TRUE) == HOLD_EFFECT_TERRAIN_EXTENDER) @@ -4779,10 +4747,12 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u16 ability, u8 special, u16 move } break; case ABILITY_INTIMIDATE: - if (!(gSpecialStatuses[battler].intimidatedMon)) + if (!gSpecialStatuses[battler].switchInAbilityDone) { - gBattleResources->flags->flags[battler] |= RESOURCE_FLAG_INTIMIDATED; - gSpecialStatuses[battler].intimidatedMon = TRUE; + gSpecialStatuses[battler].switchInAbilityDone = TRUE; + SET_STATCHANGER(STAT_ATK, 1, TRUE); + BattleScriptPushCursorAndCallback(BattleScript_IntimidateActivates); + effect++; } break; case ABILITY_FORECAST: @@ -5003,14 +4973,8 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u16 ability, u8 special, u16 move gDisableStructs[gBattlerAttacker].truantCounter ^= 1; break; case ABILITY_BAD_DREAMS: - if (gBattleMons[BATTLE_PARTNER(BATTLE_OPPOSITE(battler))].status1 & STATUS1_SLEEP - || gBattleMons[BATTLE_OPPOSITE(battler)].status1 & STATUS1_SLEEP - || GetBattlerAbility(BATTLE_PARTNER(BATTLE_OPPOSITE(battler))) == ABILITY_COMATOSE - || GetBattlerAbility(BATTLE_OPPOSITE(battler)) == ABILITY_COMATOSE) - { - BattleScriptPushCursorAndCallback(BattleScript_BadDreamsActivates); - effect++; - } + BattleScriptPushCursorAndCallback(BattleScript_BadDreamsActivates); + effect++; break; SOLAR_POWER_HP_DROP: case ABILITY_SOLAR_POWER: @@ -5963,30 +5927,6 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u16 ability, u8 special, u16 move } } break; - case ABILITYEFFECT_INTIMIDATE1: - case ABILITYEFFECT_INTIMIDATE2: - for (i = 0; i < gBattlersCount; i++) - { - if (GetBattlerAbility(i) == ABILITY_INTIMIDATE && gBattleResources->flags->flags[i] & RESOURCE_FLAG_INTIMIDATED - && (IsBattlerAlive(BATTLE_OPPOSITE(i)) || IsBattlerAlive(BATTLE_PARTNER(BATTLE_OPPOSITE(i))))) // At least one opposing mon has to be alive. - { - gBattleResources->flags->flags[i] &= ~RESOURCE_FLAG_INTIMIDATED; - gLastUsedAbility = ABILITY_INTIMIDATE; - if (caseID == ABILITYEFFECT_INTIMIDATE1) - { - BattleScriptPushCursorAndCallback(BattleScript_IntimidateActivatesEnd3); - } - else - { - BattleScriptPushCursor(); - gBattlescriptCurrInstr = BattleScript_IntimidateActivates; - } - battler = gBattlerAbility = gBattleStruct->intimidateBattler = i; - effect++; - break; - } - } - break; case ABILITYEFFECT_TRACE1: case ABILITYEFFECT_TRACE2: for (i = 0; i < gBattlersCount; i++) @@ -6397,7 +6337,7 @@ static u8 HealConfuseBerry(u32 battlerId, u32 itemId, u8 flavorId, bool32 end2) { PREPARE_FLAVOR_BUFFER(gBattleTextBuff1, flavorId); - gBattleMoveDamage = gBattleMons[battlerId].maxHP / GetBattlerHoldEffectParam(battlerId); + gBattleMoveDamage = gBattleMons[battlerId].maxHP / GetBattlerItemHoldEffectParam(battlerId, itemId); if (gBattleMoveDamage == 0) gBattleMoveDamage = 1; gBattleMoveDamage *= -1; @@ -6433,7 +6373,7 @@ static u8 HealConfuseBerry(u32 battlerId, u32 itemId, u8 flavorId, bool32 end2) static u8 StatRaiseBerry(u32 battlerId, u32 itemId, u32 statId, bool32 end2) { - if (CompareStat(battlerId, statId, MAX_STAT_STAGE, CMP_LESS_THAN) && HasEnoughHpToEatBerry(battlerId, GetBattlerHoldEffectParam(battlerId), itemId)) + if (CompareStat(battlerId, statId, MAX_STAT_STAGE, CMP_LESS_THAN) && HasEnoughHpToEatBerry(battlerId, GetBattlerItemHoldEffectParam(battlerId, itemId), itemId)) { BufferStatChange(battlerId, statId, STRINGID_STATROSE); gEffectBattler = battlerId; @@ -6469,7 +6409,7 @@ static u8 RandomStatRaiseBerry(u32 battlerId, u32 itemId, bool32 end2) if (CompareStat(battlerId, STAT_ATK + i, MAX_STAT_STAGE, CMP_LESS_THAN)) break; } - if (i != NUM_STATS - 1 && HasEnoughHpToEatBerry(battlerId, GetBattlerHoldEffectParam(battlerId), itemId)) + if (i != NUM_STATS - 1 && HasEnoughHpToEatBerry(battlerId, GetBattlerItemHoldEffectParam(battlerId, itemId), itemId)) { u16 battlerAbility = GetBattlerAbility(battlerId); do @@ -6588,9 +6528,9 @@ static u8 ItemHealHp(u32 battlerId, u32 itemId, bool32 end2, bool32 percentHeal) && HasEnoughHpToEatBerry(battlerId, 2, itemId)) { if (percentHeal) - gBattleMoveDamage = (gBattleMons[battlerId].maxHP * GetBattlerHoldEffectParam(battlerId) / 100) * -1; + gBattleMoveDamage = (gBattleMons[battlerId].maxHP * GetBattlerItemHoldEffectParam(battlerId, itemId) / 100) * -1; else - gBattleMoveDamage = GetBattlerHoldEffectParam(battlerId) * -1; + gBattleMoveDamage = GetBattlerItemHoldEffectParam(battlerId, itemId) * -1; // check ripen if (ItemId_GetPocket(itemId) == POCKET_BERRIES && GetBattlerAbility(battlerId) == ABILITY_RIPEN) @@ -6673,6 +6613,192 @@ static bool32 GetMentalHerbEffect(u8 battlerId) return ret; } +static u8 ItemEffectMoveEnd(u32 battlerId, u16 holdEffect) +{ + u8 effect = 0; + u32 i; + + switch (holdEffect) + { +#if B_HP_BERRIES >= GEN_4 + case HOLD_EFFECT_MICLE_BERRY: + effect = TrySetMicleBerry(battlerId, gLastUsedItem, FALSE); + break; + case HOLD_EFFECT_RESTORE_HP: + effect = ItemHealHp(battlerId, gLastUsedItem, FALSE, FALSE); + break; +#endif +#if B_BERRIES_INSTANT >= GEN_4 + case HOLD_EFFECT_RESTORE_PCT_HP: + effect = ItemHealHp(battlerId, gLastUsedItem, FALSE, TRUE); + break; + case HOLD_EFFECT_CONFUSE_SPICY: + effect = HealConfuseBerry(battlerId, gLastUsedItem, FLAVOR_SPICY, FALSE); + break; + case HOLD_EFFECT_CONFUSE_DRY: + effect = HealConfuseBerry(battlerId, gLastUsedItem, FLAVOR_DRY, FALSE); + break; + case HOLD_EFFECT_CONFUSE_SWEET: + effect = HealConfuseBerry(battlerId, gLastUsedItem, FLAVOR_SWEET, FALSE); + break; + case HOLD_EFFECT_CONFUSE_BITTER: + effect = HealConfuseBerry(battlerId, gLastUsedItem, FLAVOR_BITTER, FALSE); + break; + case HOLD_EFFECT_CONFUSE_SOUR: + effect = HealConfuseBerry(battlerId, gLastUsedItem, FLAVOR_SOUR, FALSE); + break; + case HOLD_EFFECT_ATTACK_UP: + effect = StatRaiseBerry(battlerId, gLastUsedItem, STAT_ATK, FALSE); + break; + case HOLD_EFFECT_DEFENSE_UP: + effect = StatRaiseBerry(battlerId, gLastUsedItem, STAT_DEF, FALSE); + break; + case HOLD_EFFECT_SPEED_UP: + effect = StatRaiseBerry(battlerId, gLastUsedItem, STAT_SPEED, FALSE); + break; + case HOLD_EFFECT_SP_ATTACK_UP: + effect = StatRaiseBerry(battlerId, gLastUsedItem, STAT_SPATK, FALSE); + break; + case HOLD_EFFECT_SP_DEFENSE_UP: + effect = StatRaiseBerry(battlerId, gLastUsedItem, STAT_SPDEF, FALSE); + break; + case HOLD_EFFECT_RANDOM_STAT_UP: + effect = RandomStatRaiseBerry(battlerId, gLastUsedItem, FALSE); + break; +#endif + case HOLD_EFFECT_CURE_PAR: + if (gBattleMons[battlerId].status1 & STATUS1_PARALYSIS && !UnnerveOn(battlerId, gLastUsedItem)) + { + gBattleMons[battlerId].status1 &= ~STATUS1_PARALYSIS; + BattleScriptPushCursor(); + gBattlescriptCurrInstr = BattleScript_BerryCureParRet; + effect = ITEM_STATUS_CHANGE; + } + break; + case HOLD_EFFECT_CURE_PSN: + if (gBattleMons[battlerId].status1 & STATUS1_PSN_ANY && !UnnerveOn(battlerId, gLastUsedItem)) + { + gBattleMons[battlerId].status1 &= ~(STATUS1_PSN_ANY | STATUS1_TOXIC_COUNTER); + BattleScriptPushCursor(); + gBattlescriptCurrInstr = BattleScript_BerryCurePsnRet; + effect = ITEM_STATUS_CHANGE; + } + break; + case HOLD_EFFECT_CURE_BRN: + if (gBattleMons[battlerId].status1 & STATUS1_BURN && !UnnerveOn(battlerId, gLastUsedItem)) + { + gBattleMons[battlerId].status1 &= ~STATUS1_BURN; + BattleScriptPushCursor(); + gBattlescriptCurrInstr = BattleScript_BerryCureBrnRet; + effect = ITEM_STATUS_CHANGE; + } + break; + case HOLD_EFFECT_CURE_FRZ: + if (gBattleMons[battlerId].status1 & STATUS1_FREEZE && !UnnerveOn(battlerId, gLastUsedItem)) + { + gBattleMons[battlerId].status1 &= ~STATUS1_FREEZE; + BattleScriptPushCursor(); + gBattlescriptCurrInstr = BattleScript_BerryCureFrzRet; + effect = ITEM_STATUS_CHANGE; + } + break; + case HOLD_EFFECT_CURE_SLP: + if (gBattleMons[battlerId].status1 & STATUS1_SLEEP && !UnnerveOn(battlerId, gLastUsedItem)) + { + gBattleMons[battlerId].status1 &= ~STATUS1_SLEEP; + gBattleMons[battlerId].status2 &= ~STATUS2_NIGHTMARE; + BattleScriptPushCursor(); + gBattlescriptCurrInstr = BattleScript_BerryCureSlpRet; + effect = ITEM_STATUS_CHANGE; + } + break; + case HOLD_EFFECT_CURE_CONFUSION: + if (gBattleMons[battlerId].status2 & STATUS2_CONFUSION && !UnnerveOn(battlerId, gLastUsedItem)) + { + gBattleMons[battlerId].status2 &= ~STATUS2_CONFUSION; + BattleScriptPushCursor(); + gBattlescriptCurrInstr = BattleScript_BerryCureConfusionRet; + effect = ITEM_EFFECT_OTHER; + } + break; + case HOLD_EFFECT_MENTAL_HERB: + if (GetMentalHerbEffect(battlerId)) + { + gBattleScripting.savedBattler = gBattlerAttacker; + gBattlerAttacker = battlerId; + BattleScriptPushCursor(); + gBattlescriptCurrInstr = BattleScript_MentalHerbCureRet; + effect = ITEM_EFFECT_OTHER; + } + break; + case HOLD_EFFECT_CURE_STATUS: + if ((gBattleMons[battlerId].status1 & STATUS1_ANY || gBattleMons[battlerId].status2 & STATUS2_CONFUSION) && !UnnerveOn(battlerId, gLastUsedItem)) + { + if (gBattleMons[battlerId].status1 & STATUS1_PSN_ANY) + StringCopy(gBattleTextBuff1, gStatusConditionString_PoisonJpn); + + if (gBattleMons[battlerId].status1 & STATUS1_SLEEP) + { + gBattleMons[battlerId].status2 &= ~STATUS2_NIGHTMARE; + StringCopy(gBattleTextBuff1, gStatusConditionString_SleepJpn); + } + + if (gBattleMons[battlerId].status1 & STATUS1_PARALYSIS) + StringCopy(gBattleTextBuff1, gStatusConditionString_ParalysisJpn); + + if (gBattleMons[battlerId].status1 & STATUS1_BURN) + StringCopy(gBattleTextBuff1, gStatusConditionString_BurnJpn); + + if (gBattleMons[battlerId].status1 & STATUS1_FREEZE) + StringCopy(gBattleTextBuff1, gStatusConditionString_IceJpn); + + if (gBattleMons[battlerId].status2 & STATUS2_CONFUSION) + StringCopy(gBattleTextBuff1, gStatusConditionString_ConfusionJpn); + + gBattleMons[battlerId].status1 = 0; + gBattleMons[battlerId].status2 &= ~STATUS2_CONFUSION; + BattleScriptPushCursor(); + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_CURED_PROBLEM; + gBattlescriptCurrInstr = BattleScript_BerryCureChosenStatusRet; + effect = ITEM_STATUS_CHANGE; + } + break; + case HOLD_EFFECT_RESTORE_STATS: + for (i = 0; i < NUM_BATTLE_STATS; i++) + { + if (gBattleMons[battlerId].statStages[i] < DEFAULT_STAT_STAGE) + { + gBattleMons[battlerId].statStages[i] = DEFAULT_STAT_STAGE; + effect = ITEM_STATS_CHANGE; + } + } + if (effect != 0) + { + gBattleScripting.battler = battlerId; + gPotentialItemEffectBattler = battlerId; + BattleScriptPushCursor(); + gBattlescriptCurrInstr = BattleScript_WhiteHerbRet; + return effect; + } + break; + case HOLD_EFFECT_CRITICAL_UP: // lansat berry + if (B_BERRIES_INSTANT >= GEN_4 + && !(gBattleMons[battlerId].status2 & STATUS2_FOCUS_ENERGY) + && HasEnoughHpToEatBerry(battlerId, GetBattlerItemHoldEffectParam(battlerId, gLastUsedItem), gLastUsedItem)) + { + gBattleMons[battlerId].status2 |= STATUS2_FOCUS_ENERGY; + gBattleScripting.battler = battlerId; + gPotentialItemEffectBattler = battlerId; + BattleScriptPushCursor(); + gBattlescriptCurrInstr = BattleScript_BerryFocusEnergyRet; + effect = ITEM_EFFECT_OTHER; + } + break; + } + + return effect; +} + u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) { int i = 0, moveType; @@ -6682,9 +6808,11 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) u8 atkHoldEffectParam; u16 atkItem; - gLastUsedItem = gBattleMons[battlerId].item; - battlerHoldEffect = GetBattlerHoldEffect(battlerId, TRUE); - + if (caseID != ITEMEFFECT_USE_LAST_ITEM) { + gLastUsedItem = gBattleMons[battlerId].item; + battlerHoldEffect = GetBattlerHoldEffect(battlerId, TRUE); + } + atkItem = gBattleMons[gBattlerAttacker].item; atkHoldEffect = GetBattlerHoldEffect(gBattlerAttacker, TRUE); atkHoldEffectParam = GetBattlerHoldEffectParam(gBattlerAttacker); @@ -6752,9 +6880,10 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) effect = StatRaiseBerry(battlerId, gLastUsedItem, STAT_SPDEF, TRUE); break; case HOLD_EFFECT_CRITICAL_UP: - if (!(gBattleMons[battlerId].status2 & STATUS2_FOCUS_ENERGY) && HasEnoughHpToEatBerry(battlerId, GetBattlerHoldEffectParam(battlerId), gLastUsedItem)) + if (!(gBattleMons[battlerId].status2 & STATUS2_FOCUS_ENERGY) && HasEnoughHpToEatBerry(battlerId, GetBattlerItemHoldEffectParam(battlerId, gLastUsedItem), gLastUsedItem)) { gBattleMons[battlerId].status2 |= STATUS2_FOCUS_ENERGY; + gBattleScripting.battler = battlerId; BattleScriptExecute(BattleScript_BerryFocusEnergyEnd2); effect = ITEM_EFFECT_OTHER; } @@ -7068,9 +7197,10 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) break; case HOLD_EFFECT_CRITICAL_UP: if (!moveTurn && !(gBattleMons[battlerId].status2 & STATUS2_FOCUS_ENERGY) - && HasEnoughHpToEatBerry(battlerId, GetBattlerHoldEffectParam(battlerId), gLastUsedItem)) + && HasEnoughHpToEatBerry(battlerId, GetBattlerItemHoldEffectParam(battlerId, gLastUsedItem), gLastUsedItem)) { gBattleMons[battlerId].status2 |= STATUS2_FOCUS_ENERGY; + gBattleScripting.battler = battlerId; BattleScriptExecute(BattleScript_BerryFocusEnergyEnd2); effect = ITEM_EFFECT_OTHER; } @@ -7205,179 +7335,26 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn) } } break; - case ITEMEFFECT_BATTLER_MOVE_END: - goto DO_ITEMEFFECT_MOVE_END; // this hurts a bit to do, but is an easy solution + case ITEMEFFECT_USE_LAST_ITEM: + effect = ItemEffectMoveEnd(battlerId, ItemId_GetHoldEffect(gLastUsedItem)); + gBattleScripting.overrideBerryRequirements = 2; // to exit VARIOUS_CONSUME_BERRIES + if (effect) + { + gActiveBattler = gPotentialItemEffectBattler = gBattleScripting.battler = battlerId; + if (effect == ITEM_STATUS_CHANGE) + { + BtlController_EmitSetMonData(BUFFER_A, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBattler].status1); + MarkBattlerForControllerExec(gActiveBattler); + } + break; + } + break; case ITEMEFFECT_MOVE_END: for (battlerId = 0; battlerId < gBattlersCount; battlerId++) { gLastUsedItem = gBattleMons[battlerId].item; - battlerHoldEffect = GetBattlerHoldEffect(battlerId, TRUE); - DO_ITEMEFFECT_MOVE_END: - switch (battlerHoldEffect) - { - #if B_HP_BERRIES >= GEN_4 - case HOLD_EFFECT_MICLE_BERRY: - effect = TrySetMicleBerry(battlerId, gLastUsedItem, FALSE); - break; - case HOLD_EFFECT_RESTORE_HP: - effect = ItemHealHp(battlerId, gLastUsedItem, FALSE, FALSE); - break; - #endif - #if B_BERRIES_INSTANT >= GEN_4 - case HOLD_EFFECT_RESTORE_PCT_HP: - effect = ItemHealHp(battlerId, gLastUsedItem, FALSE, TRUE); - break; - case HOLD_EFFECT_CONFUSE_SPICY: - effect = HealConfuseBerry(battlerId, gLastUsedItem, FLAVOR_SPICY, FALSE); - break; - case HOLD_EFFECT_CONFUSE_DRY: - effect = HealConfuseBerry(battlerId, gLastUsedItem, FLAVOR_DRY, FALSE); - break; - case HOLD_EFFECT_CONFUSE_SWEET: - effect = HealConfuseBerry(battlerId, gLastUsedItem, FLAVOR_SWEET, FALSE); - break; - case HOLD_EFFECT_CONFUSE_BITTER: - effect = HealConfuseBerry(battlerId, gLastUsedItem, FLAVOR_BITTER, FALSE); - break; - case HOLD_EFFECT_CONFUSE_SOUR: - effect = HealConfuseBerry(battlerId, gLastUsedItem, FLAVOR_SOUR, FALSE); - break; - case HOLD_EFFECT_ATTACK_UP: - effect = StatRaiseBerry(battlerId, gLastUsedItem, STAT_ATK, FALSE); - break; - case HOLD_EFFECT_DEFENSE_UP: - effect = StatRaiseBerry(battlerId, gLastUsedItem, STAT_DEF, FALSE); - break; - case HOLD_EFFECT_SPEED_UP: - effect = StatRaiseBerry(battlerId, gLastUsedItem, STAT_SPEED, FALSE); - break; - case HOLD_EFFECT_SP_ATTACK_UP: - effect = StatRaiseBerry(battlerId, gLastUsedItem, STAT_SPATK, FALSE); - break; - case HOLD_EFFECT_SP_DEFENSE_UP: - effect = StatRaiseBerry(battlerId, gLastUsedItem, STAT_SPDEF, FALSE); - break; - case HOLD_EFFECT_RANDOM_STAT_UP: - effect = RandomStatRaiseBerry(battlerId, gLastUsedItem, FALSE); - break; - #endif - case HOLD_EFFECT_CURE_PAR: - if (gBattleMons[battlerId].status1 & STATUS1_PARALYSIS && !UnnerveOn(battlerId, gLastUsedItem)) - { - gBattleMons[battlerId].status1 &= ~STATUS1_PARALYSIS; - BattleScriptPushCursor(); - gBattlescriptCurrInstr = BattleScript_BerryCureParRet; - effect = ITEM_STATUS_CHANGE; - } - break; - case HOLD_EFFECT_CURE_PSN: - if (gBattleMons[battlerId].status1 & STATUS1_PSN_ANY && !UnnerveOn(battlerId, gLastUsedItem)) - { - gBattleMons[battlerId].status1 &= ~(STATUS1_PSN_ANY | STATUS1_TOXIC_COUNTER); - BattleScriptPushCursor(); - gBattlescriptCurrInstr = BattleScript_BerryCurePsnRet; - effect = ITEM_STATUS_CHANGE; - } - break; - case HOLD_EFFECT_CURE_BRN: - if (gBattleMons[battlerId].status1 & STATUS1_BURN && !UnnerveOn(battlerId, gLastUsedItem)) - { - gBattleMons[battlerId].status1 &= ~STATUS1_BURN; - BattleScriptPushCursor(); - gBattlescriptCurrInstr = BattleScript_BerryCureBrnRet; - effect = ITEM_STATUS_CHANGE; - } - break; - case HOLD_EFFECT_CURE_FRZ: - if (gBattleMons[battlerId].status1 & STATUS1_FREEZE && !UnnerveOn(battlerId, gLastUsedItem)) - { - gBattleMons[battlerId].status1 &= ~STATUS1_FREEZE; - BattleScriptPushCursor(); - gBattlescriptCurrInstr = BattleScript_BerryCureFrzRet; - effect = ITEM_STATUS_CHANGE; - } - break; - case HOLD_EFFECT_CURE_SLP: - if (gBattleMons[battlerId].status1 & STATUS1_SLEEP && !UnnerveOn(battlerId, gLastUsedItem)) - { - gBattleMons[battlerId].status1 &= ~STATUS1_SLEEP; - gBattleMons[battlerId].status2 &= ~STATUS2_NIGHTMARE; - BattleScriptPushCursor(); - gBattlescriptCurrInstr = BattleScript_BerryCureSlpRet; - effect = ITEM_STATUS_CHANGE; - } - break; - case HOLD_EFFECT_CURE_CONFUSION: - if (gBattleMons[battlerId].status2 & STATUS2_CONFUSION && !UnnerveOn(battlerId, gLastUsedItem)) - { - gBattleMons[battlerId].status2 &= ~STATUS2_CONFUSION; - BattleScriptPushCursor(); - gBattlescriptCurrInstr = BattleScript_BerryCureConfusionRet; - effect = ITEM_EFFECT_OTHER; - } - break; - case HOLD_EFFECT_MENTAL_HERB: - if (GetMentalHerbEffect(battlerId)) - { - gBattleScripting.savedBattler = gBattlerAttacker; - gBattlerAttacker = battlerId; - BattleScriptPushCursor(); - gBattlescriptCurrInstr = BattleScript_MentalHerbCureRet; - effect = ITEM_EFFECT_OTHER; - } - break; - case HOLD_EFFECT_CURE_STATUS: - if ((gBattleMons[battlerId].status1 & STATUS1_ANY || gBattleMons[battlerId].status2 & STATUS2_CONFUSION) && !UnnerveOn(battlerId, gLastUsedItem)) - { - if (gBattleMons[battlerId].status1 & STATUS1_PSN_ANY) - StringCopy(gBattleTextBuff1, gStatusConditionString_PoisonJpn); - - if (gBattleMons[battlerId].status1 & STATUS1_SLEEP) - { - gBattleMons[battlerId].status2 &= ~STATUS2_NIGHTMARE; - StringCopy(gBattleTextBuff1, gStatusConditionString_SleepJpn); - } - - if (gBattleMons[battlerId].status1 & STATUS1_PARALYSIS) - StringCopy(gBattleTextBuff1, gStatusConditionString_ParalysisJpn); - - if (gBattleMons[battlerId].status1 & STATUS1_BURN) - StringCopy(gBattleTextBuff1, gStatusConditionString_BurnJpn); - - if (gBattleMons[battlerId].status1 & STATUS1_FREEZE) - StringCopy(gBattleTextBuff1, gStatusConditionString_IceJpn); - - if (gBattleMons[battlerId].status2 & STATUS2_CONFUSION) - StringCopy(gBattleTextBuff1, gStatusConditionString_ConfusionJpn); - - gBattleMons[battlerId].status1 = 0; - gBattleMons[battlerId].status2 &= ~STATUS2_CONFUSION; - BattleScriptPushCursor(); - gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_CURED_PROBLEM; - gBattlescriptCurrInstr = BattleScript_BerryCureChosenStatusRet; - effect = ITEM_STATUS_CHANGE; - } - break; - case HOLD_EFFECT_RESTORE_STATS: - for (i = 0; i < NUM_BATTLE_STATS; i++) - { - if (gBattleMons[battlerId].statStages[i] < DEFAULT_STAT_STAGE) - { - gBattleMons[battlerId].statStages[i] = DEFAULT_STAT_STAGE; - effect = ITEM_STATS_CHANGE; - } - } - if (effect != 0) - { - gBattleScripting.battler = battlerId; - gPotentialItemEffectBattler = battlerId; - BattleScriptPushCursor(); - gBattlescriptCurrInstr = BattleScript_WhiteHerbRet; - return effect; - } - break; - } - if (effect != 0) + effect = ItemEffectMoveEnd(battlerId, GetBattlerHoldEffect(battlerId, TRUE)); + if (effect) { gActiveBattler = gPotentialItemEffectBattler = gBattleScripting.battler = battlerId; if (effect == ITEM_STATUS_CHANGE) @@ -7943,7 +7920,7 @@ u32 GetBattlerHoldEffect(u8 battlerId, bool32 checkNegating) gPotentialItemEffectBattler = battlerId; -#if B_ENABLE_DEBUG == TRUE +#if DEBUG_BATTLE_MENU == TRUE if (gBattleStruct->debugHoldEffects[battlerId] != 0 && gBattleMons[battlerId].item) return gBattleStruct->debugHoldEffects[battlerId]; else @@ -7954,6 +7931,15 @@ u32 GetBattlerHoldEffect(u8 battlerId, bool32 checkNegating) return ItemId_GetHoldEffect(gBattleMons[battlerId].item); } +// +static u32 GetBattlerItemHoldEffectParam(u8 battlerId, u16 item) +{ + if (item == ITEM_ENIGMA_BERRY) + return gEnigmaBerries[battlerId].holdEffectParam; + else + return ItemId_GetHoldEffectParam(item); +} + u32 GetBattlerHoldEffectParam(u8 battlerId) { if (gBattleMons[battlerId].item == ITEM_ENIGMA_BERRY) @@ -9572,9 +9558,9 @@ u16 CalcPartyMonTypeEffectivenessMultiplier(u16 move, u16 speciesDef, u16 abilit if (move != MOVE_STRUGGLE && moveType != TYPE_MYSTERY) { - MulByTypeEffectiveness(&modifier, move, moveType, 0, gBaseStats[speciesDef].type1, 0, FALSE); - if (gBaseStats[speciesDef].type2 != gBaseStats[speciesDef].type1) - MulByTypeEffectiveness(&modifier, move, moveType, 0, gBaseStats[speciesDef].type2, 0, FALSE); + MulByTypeEffectiveness(&modifier, move, moveType, 0, gSpeciesInfo[speciesDef].type1, 0, FALSE); + if (gSpeciesInfo[speciesDef].type2 != gSpeciesInfo[speciesDef].type1) + MulByTypeEffectiveness(&modifier, move, moveType, 0, gSpeciesInfo[speciesDef].type2, 0, FALSE); if (moveType == TYPE_GROUND && abilityDef == ABILITY_LEVITATE && !(gFieldStatuses & STATUS_FIELD_GRAVITY)) modifier = UQ_4_12(0.0); @@ -9586,11 +9572,26 @@ u16 CalcPartyMonTypeEffectivenessMultiplier(u16 move, u16 speciesDef, u16 abilit return modifier; } +static u16 GetInverseTypeMultiplier(u16 multiplier) +{ + switch (multiplier) + { + case UQ_4_12(0.0): + case UQ_4_12(0.5): + return UQ_4_12(2.0); + case UQ_4_12(2.0): + return UQ_4_12(0.5); + case UQ_4_12(1.0): + default: + return UQ_4_12(1.0); + } +} + u16 GetTypeModifier(u8 atkType, u8 defType) { #if B_FLAG_INVERSE_BATTLE != 0 if (FlagGet(B_FLAG_INVERSE_BATTLE)) - return sInverseTypeEffectivenessTable[atkType][defType]; + return GetInverseTypeMultiplier(sTypeEffectivenessTable[atkType][defType]); #endif return sTypeEffectivenessTable[atkType][defType]; } @@ -9738,8 +9739,8 @@ bool32 CanMegaEvolve(u8 battlerId) // Check if there is an entry in the evolution table for regular Mega Evolution. if (GetMegaEvolutionSpecies(species, itemId) != SPECIES_NONE) { - #if B_ENABLE_DEBUG == TRUE - if (B_ENABLE_DEBUG && gBattleStruct->debugHoldEffects[battlerId]) + #if DEBUG_BATTLE_MENU == TRUE + if (gBattleStruct->debugHoldEffects[battlerId]) holdEffect = gBattleStruct->debugHoldEffects[battlerId]; else #endif diff --git a/src/battle_z_move.c b/src/battle_z_move.c index f0d62f7fe..2eccd82f5 100644 --- a/src/battle_z_move.c +++ b/src/battle_z_move.c @@ -31,7 +31,6 @@ #include "constants/battle_anim.h" #include "constants/rgb.h" #include "battle_debug.h" -#include "constants/battle_config.h" #include "data.h" #include "pokemon_summary_screen.h" #include "constants/songs.h" @@ -166,12 +165,20 @@ bool32 IsViableZMove(u8 battlerId, u16 move) u32 item; u16 holdEffect; u16 species; + int moveSlotIndex; + + species = gBattleMons[battlerId].species; + item = gBattleMons[battlerId].item; + + for (moveSlotIndex = 0; moveSlotIndex < MAX_MON_MOVES; moveSlotIndex++) + { + if (gBattleMons[battlerId].moves[moveSlotIndex] == move && gBattleMons[battlerId].pp[moveSlotIndex] == 0) + return FALSE; + } 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; @@ -187,7 +194,7 @@ bool32 IsViableZMove(u8 battlerId, u16 move) return FALSE; // Partner has mega evolved or is about to mega evolve } -#if B_ENABLE_DEBUG == TRUE +#if DEBUG_BATTLE_MENU == TRUE if (gBattleStruct->debugHoldEffects[battlerId]) holdEffect = gBattleStruct->debugHoldEffects[battlerId]; else diff --git a/src/berry_blender.c b/src/berry_blender.c index 50c24660c..52daa1721 100644 --- a/src/berry_blender.c +++ b/src/berry_blender.c @@ -2676,7 +2676,7 @@ static void CB2_EndBlenderGame(void) switch (Menu_ProcessInputNoWrapClearOnChoose()) { case 1: - case -1: + case MENU_B_PRESSED: sBerryBlender->yesNoAnswer = 1; sBerryBlender->gameEndState++; for (i = 0; i < BLENDER_MAX_PLAYERS; i++) diff --git a/src/braille.c b/src/braille.c index 704f50760..91872b88a 100644 --- a/src/braille.c +++ b/src/braille.c @@ -88,7 +88,7 @@ u16 FontFunc_Braille(struct TextPrinter *textPrinter) subStruct->fontId = *textPrinter->printerTemplate.currentChar; textPrinter->printerTemplate.currentChar++; return RENDER_REPEAT; - case EXT_CTRL_CODE_RESET_SIZE: + case EXT_CTRL_CODE_RESET_FONT: return RENDER_REPEAT; case EXT_CTRL_CODE_PAUSE: textPrinter->delayCounter = *textPrinter->printerTemplate.currentChar++; @@ -109,7 +109,7 @@ u16 FontFunc_Braille(struct TextPrinter *textPrinter) case EXT_CTRL_CODE_ESCAPE: char_ = *++textPrinter->printerTemplate.currentChar; break; - case EXT_CTRL_CODE_SHIFT_TEXT: + case EXT_CTRL_CODE_SHIFT_RIGHT: textPrinter->printerTemplate.currentX = textPrinter->printerTemplate.x + *textPrinter->printerTemplate.currentChar++; return RENDER_REPEAT; case EXT_CTRL_CODE_SHIFT_DOWN: diff --git a/src/clear_save_data_screen.c b/src/clear_save_data_screen.c index 9b79b48f1..ed5461d91 100644 --- a/src/clear_save_data_screen.c +++ b/src/clear_save_data_screen.c @@ -95,7 +95,7 @@ static void Task_ClearSaveDataScreenYesNoChoice(u8 taskId) gTasks[taskId].func = Task_ClearSaveData; break; case 1: - case -1: + case MENU_B_PRESSED: PlaySE(SE_SELECT); DestroyTask(taskId); SetMainCallback2(CB2_FadeAndDoReset); diff --git a/src/contest.c b/src/contest.c index 463b66449..b9ec9add6 100644 --- a/src/contest.c +++ b/src/contest.c @@ -5317,7 +5317,7 @@ static void SetMoveSpecificAnimData(u8 contestant) switch (move) { case MOVE_CURSE: - if (gBaseStats[species].type1 == TYPE_GHOST || gBaseStats[species].type2 == TYPE_GHOST) + if (gSpeciesInfo[species].type1 == TYPE_GHOST || gSpeciesInfo[species].type2 == TYPE_GHOST) gAnimMoveTurn = 0; else gAnimMoveTurn = 1; diff --git a/src/data/.gitignore b/src/data/.gitignore index eaf9e1f6d..f9205e562 100755 --- a/src/data/.gitignore +++ b/src/data/.gitignore @@ -1 +1,3 @@ wild_encounters.h +region_map/region_map_entries.h +region_map/porymap_config.json diff --git a/src/data/bard_music/actions.h b/src/data/bard_music/actions.h index fd8e63061..5acac3450 100644 --- a/src/data/bard_music/actions.h +++ b/src/data/bard_music/actions.h @@ -2,628 +2,628 @@ #define GUARD_DATA_BARD_MUSIC_ACTIONS_H const struct BardSound gBardSounds_Actions[][6] = { { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x10, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 16 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x10, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 16 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x4, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 4 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 6 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x8, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 8 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 5 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 5 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 3 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xd, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 13 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xd, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 13 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 11 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 1 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1d, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 29 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x2f, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 47 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 2 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x2, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 26 }, + { .songLengthId = 2 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 20 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2f, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 47 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2f, 0x0, 0x0, 0x0, 0x0 }, - { 0xa, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 47 }, + { .songLengthId = 10 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2f, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 47 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x26, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 38 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 5 }, + { .songLengthId = 44 }, + { .songLengthId = 26 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 44 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 50 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0xd, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 50 }, + { .songLengthId = 13 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1b, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 27 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1b, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 27 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 1 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x29, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 48 }, + { .songLengthId = 41 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x26, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 38 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x23, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 35 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0xa, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 10 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0xd, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 13 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0xa, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 3 }, + { .songLengthId = 10 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND } }; diff --git a/src/data/bard_music/adjectives.h b/src/data/bard_music/adjectives.h index e56efaa24..c86138d2c 100644 --- a/src/data/bard_music/adjectives.h +++ b/src/data/bard_music/adjectives.h @@ -2,292 +2,292 @@ #define GUARD_DATA_BARD_MUSIC_ADJECTIVES_H const struct BardSound gBardSounds_Adjectives[][6] = { { - { 0x1d, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 29 }, + { .songLengthId = 50 }, + { .songLengthId = 12 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 9 }, + { .songLengthId = 14 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1b, 0x0, 0x0, 0x0, 0x0 }, - { 0x1b, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 27 }, + { .songLengthId = 27 }, + { .songLengthId = 17 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 42 }, + { .songLengthId = 48 }, + { .songLengthId = 14 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x24, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 36 }, + { .songLengthId = 17 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 48 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x8, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 8 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 48 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2d, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 45 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 18 }, + { .songLengthId = 12 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 50 }, + { .songLengthId = 5 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1b, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 27 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1d, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 29 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 3 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 15 }, + { .songLengthId = 12 }, + { .songLengthId = 12 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x1e, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 30 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 20 }, + { .songLengthId = 50 }, + { .songLengthId = 14 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 14 }, + { .songLengthId = 44 }, + { .songLengthId = 14 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 44 }, + { .songLengthId = 14 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x1d, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 } + { .songLengthId = 0 }, + { .songLengthId = 17 }, + { .songLengthId = 17 }, + { .songLengthId = 3 }, + { .songLengthId = 29 }, + { .songLengthId = 51 } } }; diff --git a/src/data/bard_music/bard_sounds.h b/src/data/bard_music/bard_sounds.h index 1dd5c7f56..291d22872 100644 --- a/src/data/bard_music/bard_sounds.h +++ b/src/data/bard_music/bard_sounds.h @@ -1,7 +1,7 @@ #ifndef GUARD_BARD_SOUNDS_TABLE_H #define GUARD_BARD_SOUNDS_TABLE_H -#define NULL_BARD_SOUND { 0xff } +#define NULL_BARD_SOUND { .songLengthId = 0xff } #include "pokemon.h" #include "moves.h" diff --git a/src/data/bard_music/battle.h b/src/data/bard_music/battle.h index 19d032f56..c2cb57134 100644 --- a/src/data/bard_music/battle.h +++ b/src/data/bard_music/battle.h @@ -2,508 +2,508 @@ #define GUARD_DATA_BARD_MUSIC_BATTLE_H const struct BardSound gBardSounds_Battle[][6] = { { - { 0x2, 0x0, 0x0, 0x0, 0x0 }, - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 2 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 42 }, + { .songLengthId = 48 }, + { .songLengthId = 44 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0xf, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 12 }, + { .songLengthId = 15 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x17, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 23 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0xf, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 15 }, + { .songLengthId = 18 }, + { .songLengthId = 15 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0xf, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 15 }, + { .songLengthId = 18 }, + { .songLengthId = 15 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2, 0x0, 0x0, 0x0, 0x0 }, - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 2 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 18 }, + { .songLengthId = 11 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x8, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 8 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x1, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 5 }, + { .songLengthId = 1 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x17, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 23 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x2, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 42 }, + { .songLengthId = 2 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 48 }, + { .songLengthId = 9 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 1 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 11 }, + { .songLengthId = 12 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 50 }, + { .songLengthId = 14 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x15, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 21 }, + { .songLengthId = 11 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 48 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x23, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 35 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1, 0x0, 0x0, 0x0, 0x0 }, - { 0xa, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 1 }, + { .songLengthId = 10 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1b, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x29, 0x0, 0x0, 0x0, 0x0 }, - { 0x1d, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 41 }, + { .songLengthId = 29 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 12 }, + { .songLengthId = 14 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 14 }, + { .songLengthId = 44 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x26, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 38 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x5, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 9 }, + { .songLengthId = 17 }, + { .songLengthId = 5 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1e, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 30 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 14 }, + { .songLengthId = 44 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x17, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 23 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x27, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 15 }, + { .songLengthId = 18 }, + { .songLengthId = 39 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x16, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 22 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x8, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 8 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x15, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 21 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x24, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 15 }, + { .songLengthId = 17 }, + { .songLengthId = 44 }, + { .songLengthId = 36 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x29, 0x0, 0x0, 0x0, 0x0 }, - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 41 }, + { .songLengthId = 26 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x26, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 38 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x29, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 41 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND } }; diff --git a/src/data/bard_music/conditions.h b/src/data/bard_music/conditions.h index d79cc100b..c56421e63 100644 --- a/src/data/bard_music/conditions.h +++ b/src/data/bard_music/conditions.h @@ -2,556 +2,556 @@ #define GUARD_DATA_BARD_MUSIC_CONDITIONS_H const struct BardSound gBardSounds_Conditions[][6] = { { - { 0x15, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 21 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 11 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 11 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0x29, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 6 }, + { .songLengthId = 41 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 1 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x26, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 38 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 11 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x29, 0x0, 0x0, 0x0, 0x0 }, - { 0xa, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 41 }, + { .songLengthId = 10 }, + { .songLengthId = 50 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x26, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 38 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 2 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 15 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 5 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x20, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 32 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x19, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 25 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x17, 0x0, 0x0, 0x0, 0x0 }, - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 23 }, + { .songLengthId = 20 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 39 }, + { .songLengthId = 17 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - NULL_BARD_SOUND + { .songLengthId = 9 }, + { .songLengthId = 48 }, + { .songLengthId = 3 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, }, { - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 50 }, + { .songLengthId = 11 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xa, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 10 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 44 }, + { .songLengthId = 11 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0x23, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 20 }, + { .songLengthId = 35 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0xa, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 10 }, + { .songLengthId = 17 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x1e, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x26, 0x0, 0x0, 0x0, 0x0 }, - NULL_BARD_SOUND + { .songLengthId = 44 }, + { .songLengthId = 42 }, + { .songLengthId = 30 }, + { .songLengthId = 44 }, + { .songLengthId = 38 }, + NULL_BARD_SOUND, }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - NULL_BARD_SOUND + { .songLengthId = 26 }, + { .songLengthId = 50 }, + { .songLengthId = 11 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 39 }, + { .songLengthId = 44 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xa, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 10 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0xa, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 10 }, + { .songLengthId = 17 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x1d, 0x0, 0x0, 0x0, 0x0 }, - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x26, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 15 }, + { .songLengthId = 29 }, + { .songLengthId = 42 }, + { .songLengthId = 38 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1d, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 29 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 48 }, + { .songLengthId = 11 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 20 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x17, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 23 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x17, 0x0, 0x0, 0x0, 0x0 }, - { 0x16, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 23 }, + { .songLengthId = 22 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x16, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - NULL_BARD_SOUND + { .songLengthId = 42 }, + { .songLengthId = 22 }, + { .songLengthId = 50 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x26, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 2 }, + { .songLengthId = 50 }, + { .songLengthId = 38 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x29, 0x0, 0x0, 0x0, 0x0 }, - { 0x1c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 41 }, + { .songLengthId = 28 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 2 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x8, 0x0, 0x0, 0x0, 0x0 }, - { 0x26, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 8 }, + { .songLengthId = 38 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 48 }, + { .songLengthId = 14 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 2 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x21, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 33 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 11 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x26, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 15 }, + { .songLengthId = 38 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xd, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 13 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND } }; diff --git a/src/data/bard_music/endings.h b/src/data/bard_music/endings.h index 7e4304521..251347659 100644 --- a/src/data/bard_music/endings.h +++ b/src/data/bard_music/endings.h @@ -2,556 +2,556 @@ #define GUARD_DATA_BARD_MUSIC_ENDINGS_H const struct BardSound gBardSounds_Endings[][6] = { { - { 0x10, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 16 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x10, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 16 }, + { .songLengthId = 12 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 20 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x26, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 38 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 20 }, + { .songLengthId = 14 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x26, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 38 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x10, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 16 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 9 }, + { .songLengthId = 17 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xb, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 11 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 28 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 15 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 50 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 2 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x17, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 23 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 11 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x4, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 4 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 3 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x23, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 42 }, + { .songLengthId = 35 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 6 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x26, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 38 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 28 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1d, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 29 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 1 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 2 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x21, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 33 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 20 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x23, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 35 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x26, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 38 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 20 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 2 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND } }; diff --git a/src/data/bard_music/events.h b/src/data/bard_music/events.h index 70960e15d..b33c1e2b3 100644 --- a/src/data/bard_music/events.h +++ b/src/data/bard_music/events.h @@ -2,236 +2,236 @@ #define GUARD_DATA_BARD_MUSIC_EVENTS_H const struct BardSound gBardSounds_Events[][6] = { { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - NULL_BARD_SOUND + { .songLengthId = 3 }, + { .songLengthId = 0 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1d, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 29 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2b, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 43 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x15, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x4, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 21 }, + { .songLengthId = 44 }, + { .songLengthId = 4 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x21, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 2 }, + { .songLengthId = 44 }, + { .songLengthId = 33 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x27, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 44 }, + { .songLengthId = 39 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x4, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 9 }, + { .songLengthId = 4 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xa, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 10 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x1d, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 12 }, + { .songLengthId = 29 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 48 }, + { .songLengthId = 42 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 48 }, + { .songLengthId = 9 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 42 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 48 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 42 }, + { .songLengthId = 12 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND } }; diff --git a/src/data/bard_music/feelings.h b/src/data/bard_music/feelings.h index cdab88639..a46513397 100644 --- a/src/data/bard_music/feelings.h +++ b/src/data/bard_music/feelings.h @@ -2,556 +2,556 @@ #define GUARD_DATA_BARD_MUSIC_FEELINGS_H const struct BardSound gBardSounds_Feelings[][6] = { { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x4, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 4 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 50 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x19, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 25 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 12 }, + { .songLengthId = 11 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 11 }, + { .songLengthId = 20 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x0, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 15 }, + { .songLengthId = 26 }, + { .songLengthId = 0 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x17, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 23 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x1e, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 0 }, + { .songLengthId = 30 }, + { .songLengthId = 11 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x20, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 0 }, + { .songLengthId = 32 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 2 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 20 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x31, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 49 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xd, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 13 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x31, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 49 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x8, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 8 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 20 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 5 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 5 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 11 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x20, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 42 }, + { .songLengthId = 32 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x20, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 32 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 11 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x8, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 8 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x21, 0x0, 0x0, 0x0, 0x0 }, - { 0x2, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 33 }, + { .songLengthId = 2 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x26, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 15 }, + { .songLengthId = 11 }, + { .songLengthId = 17 }, + { .songLengthId = 38 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 20 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x31, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 49 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x31, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 49 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 6 }, + { .songLengthId = 20 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 0 }, + { .songLengthId = 50 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x20, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 32 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x20, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 32 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 2 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 2 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1d, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 29 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 11 }, + { .songLengthId = 42 }, + { .songLengthId = 26 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x29, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 41 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 20 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 50 }, + { .songLengthId = 20 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 17 }, + { .songLengthId = 20 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 11 }, + { .songLengthId = 44 }, + { .songLengthId = 17 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 3 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 14 }, + { .songLengthId = 11 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x4, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 4 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 0 }, + { .songLengthId = 17 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 11 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x2, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 50 }, + { .songLengthId = 2 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x2, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 50 }, + { .songLengthId = 2 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND } }; diff --git a/src/data/bard_music/greetings.h b/src/data/bard_music/greetings.h index 22af4dd5c..ebddb79de 100644 --- a/src/data/bard_music/greetings.h +++ b/src/data/bard_music/greetings.h @@ -2,340 +2,340 @@ #define GUARD_DATA_BARD_MUSIC_GREETINGS_H const struct BardSound gBardSounds_Greetings[][6] = { { - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 48 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x17, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 48 }, + { .songLengthId = 18 }, + { .songLengthId = 23 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 48 }, + { .songLengthId = 17 }, + { .songLengthId = 17 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 2 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x17, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 23 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1e, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 30 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x21, 0x0, 0x0, 0x0, 0x0 }, - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 33 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x2, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 2 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1b, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 27 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0x17, 0x0, 0x0, 0x0, 0x0 }, - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - NULL_BARD_SOUND + { .songLengthId = 44 }, + { .songLengthId = 6 }, + { .songLengthId = 23 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x10, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 16 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x4, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 4 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x26, 0x0, 0x0, 0x0, 0x0 }, - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 38 }, + { .songLengthId = 20 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 3 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 6 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1d, 0x0, 0x0, 0x0, 0x0 }, - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 29 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x28, 0x0, 0x0, 0x0, 0x0 }, - { 0xd, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 11 }, + { .songLengthId = 40 }, + { .songLengthId = 13 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 44 }, + { .songLengthId = 11 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x5, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 12 }, + { .songLengthId = 14 }, + { .songLengthId = 5 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x4, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 4 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x2b, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 43 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xa, 0x0, 0x0, 0x0, 0x0 }, - { 0xa, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 10 }, + { .songLengthId = 10 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 20 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xd, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 13 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 11 }, + { .songLengthId = 17 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x1, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 1 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 24 }, + { .songLengthId = 50 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x23, 0x0, 0x0, 0x0, 0x0 }, - { 0x17, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 35 }, + { .songLengthId = 23 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND } }; diff --git a/src/data/bard_music/hobbies.h b/src/data/bard_music/hobbies.h index 66fdbc0c7..db55ef124 100644 --- a/src/data/bard_music/hobbies.h +++ b/src/data/bard_music/hobbies.h @@ -2,436 +2,436 @@ #define GUARD_DATA_BARD_MUSIC_HOBBIES_H const struct BardSound gBardSounds_Hobbies[][6] = { { - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 20 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x5, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 44 }, + { .songLengthId = 5 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x17, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 23 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 1 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0x26, 0x0, 0x0, 0x0, 0x0 }, - { 0x4, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 20 }, + { .songLengthId = 38 }, + { .songLengthId = 4 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1e, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 30 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2f, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 47 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x17, 0x0, 0x0, 0x0, 0x0 }, - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 23 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x15, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 21 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 50 }, + { .songLengthId = 44 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2f, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 47 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 11 }, + { .songLengthId = 5 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x26, 0x0, 0x0, 0x0, 0x0 }, - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 38 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1b, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 27 }, + { .songLengthId = 12 }, + { .songLengthId = 12 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x1b, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - NULL_BARD_SOUND + { .songLengthId = 44 }, + { .songLengthId = 11 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 2 }, + { .songLengthId = 44 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1b, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x15, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 21 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x17, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 23 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x17, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 23 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 20 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xa, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 10 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x26, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 38 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x26, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 38 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 5 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 44 }, + { .songLengthId = 26 }, + { .songLengthId = 17 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x1d, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 29 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x21, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 33 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 2 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 26 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 1 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 11 }, + { .songLengthId = 50 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1b, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x26, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 38 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x8, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 11 }, + { .songLengthId = 14 }, + { .songLengthId = 8 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1b, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 27 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1d, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x5, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 29 }, + { .songLengthId = 17 }, + { .songLengthId = 5 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 2 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x1d, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 3 }, + { .songLengthId = 5 }, + { .songLengthId = 29 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x26, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 38 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND } }; diff --git a/src/data/bard_music/length_table.h b/src/data/bard_music/length_table.h index 144c70dfc..d53dcb23f 100644 --- a/src/data/bard_music/length_table.h +++ b/src/data/bard_music/length_table.h @@ -2,19 +2,19 @@ #define GUARD_LENGTH_TABLE_H const int gBardSoundLengthTable[] = { - 0x09, 0x16, 0x0f, 0x10, - 0x27, 0x15, 0x09, 0x1e, - 0x18, 0x0f, 0x19, 0x0c, - 0x16, 0x2d, 0x18, 0x0f, - 0x28, 0x09, 0x15, 0x2a, - 0x12, 0x09, 0x16, 0x0f, - 0x1b, 0x30, 0x12, 0x1b, - 0x21, 0x18, 0x19, 0x27, - 0x13, 0x10, 0x36, 0x12, - 0x09, 0x2d, 0x0f, 0x0c, - 0x27, 0x17, 0x05, 0x2d, - 0x0c, 0x15, 0x30, 0x0c, - 0x15, 0x45, 0x12, 0x0f + 9, 22, 15, 16, + 39, 21, 9, 30, + 24, 15, 25, 12, + 22, 45, 24, 15, + 40, 9, 21, 42, + 18, 9, 22, 15, + 27, 48, 18, 27, + 33, 24, 25, 39, + 19, 16, 54, 18, + 9, 45, 15, 12, + 39, 23, 5, 45, + 12, 21, 48, 12, + 21, 69, 18, 15 }; diff --git a/src/data/bard_music/lifestyle.h b/src/data/bard_music/lifestyle.h index 7054283f4..9aeac3757 100644 --- a/src/data/bard_music/lifestyle.h +++ b/src/data/bard_music/lifestyle.h @@ -2,364 +2,364 @@ #define GUARD_DATA_BARD_MUSIC_LIFESTYLE_H const struct BardSound gBardSounds_Lifestyle[][6] = { { - { 0x31, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 49 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x23, 0x0, 0x0, 0x0, 0x0 }, - { 0x2, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 42 }, + { .songLengthId = 35 }, + { .songLengthId = 2 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 2 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - NULL_BARD_SOUND + { .songLengthId = 42 }, + { .songLengthId = 50 }, + { .songLengthId = 3 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, }, { - { 0x29, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 41 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x5, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 11 }, + { .songLengthId = 50 }, + { .songLengthId = 5 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 50 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 48 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 2 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x1d, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 29 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - NULL_BARD_SOUND + { .songLengthId = 15 }, + { .songLengthId = 48 }, + { .songLengthId = 5 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 50 }, + { .songLengthId = 42 }, + { .songLengthId = 11 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 11 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 17 }, + { .songLengthId = 44 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x1b, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 27 }, + { .songLengthId = 11 }, + { .songLengthId = 26 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x1b, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - NULL_BARD_SOUND + { .songLengthId = 9 }, + { .songLengthId = 44 }, + { .songLengthId = 17 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1d, 0x0, 0x0, 0x0, 0x0 }, - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 29 }, + { .songLengthId = 39 }, + { .songLengthId = 50 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1c, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 28 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x24, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 3 }, + { .songLengthId = 36 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 11 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1d, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 29 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x17, 0x0, 0x0, 0x0, 0x0 }, - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - NULL_BARD_SOUND + { .songLengthId = 15 }, + { .songLengthId = 50 }, + { .songLengthId = 23 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x18, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 3 }, + { .songLengthId = 12 }, + { .songLengthId = 24 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x26, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 11 }, + { .songLengthId = 38 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x24, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 50 }, + { .songLengthId = 36 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND } }; diff --git a/src/data/bard_music/misc.h b/src/data/bard_music/misc.h index 84e1d5530..1bce1a45d 100644 --- a/src/data/bard_music/misc.h +++ b/src/data/bard_music/misc.h @@ -2,340 +2,340 @@ #define GUARD_DATA_BARD_MUSIC_MISC_H const struct BardSound gBardSounds_Misc[][6] = { { - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 20 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2b, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 43 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 42 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 15 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x21, 0x0, 0x0, 0x0, 0x0 }, - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 33 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 17 }, + { .songLengthId = 17 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 48 }, + { .songLengthId = 14 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x21, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 33 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 2 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x1b, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 1 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x10, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 16 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2b, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 43 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1b, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x4, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 4 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x10, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 16 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1, 0x0, 0x0, 0x0, 0x0 }, - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 1 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 20 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x2e, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 42 }, + { .songLengthId = 46 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1d, 0x0, 0x0, 0x0, 0x0 }, - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 29 }, + { .songLengthId = 26 }, + { .songLengthId = 17 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND } }; diff --git a/src/data/bard_music/moves.h b/src/data/bard_music/moves.h index 89fc4c0f1..3fd16697d 100644 --- a/src/data/bard_music/moves.h +++ b/src/data/bard_music/moves.h @@ -12,2839 +12,2839 @@ const struct BardSound gBardSounds_Moves[MOVES_COUNT][6] = { NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND + NULL_BARD_SOUND, }, [MOVE_POUND] = { - { 0x21, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 33 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_KARATE_CHOP] = { - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x1d, 0x0, 0x0, 0x0, 0x0}, - { 0xe, 0x0, 0x0, 0x0, 0x0}, - { 0x1d, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 44 }, + { .songLengthId = 29 }, + { .songLengthId = 14 }, + { .songLengthId = 29 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_DOUBLE_SLAP] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0xa, 0x0, 0x0, 0x0, 0x0}, - { 0x2, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 10 }, + { .songLengthId = 2 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_COMET_PUNCH] = { - { 0x1d, 0x0, 0x0, 0x0, 0x0}, - { 0xb, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 29 }, + { .songLengthId = 11 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_MEGA_PUNCH] = { - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 3 }, + { .songLengthId = 42 }, + { .songLengthId = 44 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_PAY_DAY] = { - { 0x5, 0x0, 0x0, 0x0, 0x0}, - { 0x5, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 5 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_FIRE_PUNCH] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 48 }, + { .songLengthId = 42 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_ICE_PUNCH] = { - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x1d, 0x0, 0x0, 0x0, 0x0}, - { 0xe, 0x0, 0x0, 0x0, 0x0}, - { 0x1d, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 44 }, + { .songLengthId = 29 }, + { .songLengthId = 14 }, + { .songLengthId = 29 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_THUNDER_PUNCH] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 48 }, + { .songLengthId = 44 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SCRATCH] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_VISE_GRIP] = { - { 0x14, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 20 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_GUILLOTINE] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0xe, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 44 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_RAZOR_WIND] = { - { 0x5, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 5 }, + { .songLengthId = 48 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SWORDS_DANCE] = { - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x1, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 26 }, + { .songLengthId = 48 }, + { .songLengthId = 1 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_CUT] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_GUST] = { - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_WING_ATTACK] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 42 }, + { .songLengthId = 0 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_WHIRLWIND] = { - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x1d, 0x0, 0x0, 0x0, 0x0}, - { 0xe, 0x0, 0x0, 0x0, 0x0}, - { 0x1d, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 44 }, + { .songLengthId = 29 }, + { .songLengthId = 14 }, + { .songLengthId = 29 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_FLY] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_BIND] = { - { 0x14, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 20 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SLAM] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_VINE_WHIP] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_STOMP] = { - { 0x1d, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 29 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_DOUBLE_KICK] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 44 }, + { .songLengthId = 17 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_MEGA_KICK] = { - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 3 }, + { .songLengthId = 42 }, + { .songLengthId = 17 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_JUMP_KICK] = { - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 44 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_ROLLING_KICK] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 12 }, + { .songLengthId = 17 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SAND_ATTACK] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 42 }, + { .songLengthId = 0 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_HEADBUTT] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_HORN_ATTACK] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 42 }, + { .songLengthId = 0 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_FURY_ATTACK] = { - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x2, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 48 }, + { .songLengthId = 12 }, + { .songLengthId = 42 }, + { .songLengthId = 2 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_HORN_DRILL] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_TACKLE] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x24, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 36 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_BODY_SLAM] = { - { 0x1d, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x2, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 29 }, + { .songLengthId = 12 }, + { .songLengthId = 2 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_WRAP] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_TAKE_DOWN] = { - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x23, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 3 }, + { .songLengthId = 35 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_THRASH] = { - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x2, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 48 }, + { .songLengthId = 2 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_DOUBLE_EDGE] = { - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x24, 0x0, 0x0, 0x0, 0x0}, - { 0xa, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 44 }, + { .songLengthId = 36 }, + { .songLengthId = 10 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_TAIL_WHIP] = { - { 0x5, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 5 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_POISON_STING] = { - { 0x1e, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0xe, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 30 }, + { .songLengthId = 44 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_TWINEEDLE] = { - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x24, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 15 }, + { .songLengthId = 12 }, + { .songLengthId = 36 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_PIN_MISSILE] = { - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x24, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 15 }, + { .songLengthId = 17 }, + { .songLengthId = 36 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_LEER] = { - { 0xe, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 14 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_BITE] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_GROWL] = { - { 0x21, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 33 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_ROAR] = { - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 26 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SING] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SUPERSONIC] = { - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 39 }, + { .songLengthId = 48 }, + { .songLengthId = 27 }, + { .songLengthId = 17 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SONIC_BOOM] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 17 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_DISABLE] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x24, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 3 }, + { .songLengthId = 36 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_ACID] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_EMBER] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_FLAMETHROWER] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 26 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_MIST] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_WATER_GUN] = { - { 0x1d, 0x0, 0x0, 0x0, 0x0}, - { 0x32, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 29 }, + { .songLengthId = 50 }, + { .songLengthId = 44 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_HYDRO_PUMP] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 24 }, + { .songLengthId = 42 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SURF] = { - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_ICE_BEAM] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_BLIZZARD] = { - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0x32, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 15 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_PSYBEAM] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_BUBBLE_BEAM] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x24, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 36 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_AURORA_BEAM] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - NULL_BARD_SOUND + { .songLengthId = 27 }, + { .songLengthId = 26 }, + { .songLengthId = 44 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, }, [MOVE_HYPER_BEAM] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 48 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_PECK] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_DRILL_PECK] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0xb, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SUBMISSION] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0xb, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 17 }, + { .songLengthId = 11 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_LOW_KICK] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_COUNTER] = { - { 0x21, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 33 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SEISMIC_TOSS] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 17 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_STRENGTH] = { - { 0x32, 0x0, 0x0, 0x0, 0x0}, - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 50 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_ABSORB] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_MEGA_DRAIN] = { - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 3 }, + { .songLengthId = 44 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_LEECH_SEED] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0xe, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_GROWTH] = { - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 48 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_RAZOR_LEAF] = { - { 0x5, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 5 }, + { .songLengthId = 48 }, + { .songLengthId = 12 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SOLAR_BEAM] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 48 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_POISON_POWDER] = { - { 0x1e, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x21, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 30 }, + { .songLengthId = 44 }, + { .songLengthId = 33 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_STUN_SPORE] = { - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 44 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SLEEP_POWDER] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x21, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 33 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_PETAL_DANCE] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x2, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 44 }, + { .songLengthId = 2 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_STRING_SHOT] = { - { 0x32, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 50 }, + { .songLengthId = 12 }, + { .songLengthId = 27 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_DRAGON_RAGE] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x5, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - NULL_BARD_SOUND + { .songLengthId = 0 }, + { .songLengthId = 27 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, }, [MOVE_FIRE_SPIN] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 48 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_THUNDER_SHOCK] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 48 }, + { .songLengthId = 27 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_THUNDERBOLT] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x1a, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 48 }, + { .songLengthId = 26 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_THUNDER_WAVE] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x5, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 48 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_THUNDER] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_ROCK_THROW] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_EARTHQUAKE] = { - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x5, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 48 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_FISSURE] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x32, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_DIG] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_TOXIC] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_CONFUSION] = { - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x29, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 44 }, + { .songLengthId = 41 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_PSYCHIC] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_HYPNOSIS] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 24 }, + { .songLengthId = 17 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_MEDITATE] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 17 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_AGILITY] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0xe, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 17 }, + { .songLengthId = 17 }, + { .songLengthId = 14 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_QUICK_ATTACK] = { - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 39 }, + { .songLengthId = 17 }, + { .songLengthId = 42 }, + { .songLengthId = 0 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_RAGE] = { - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_TELEPORT] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 12 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_NIGHT_SHADE] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x5, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_MIMIC] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SCREECH] = { - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0xd, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 48 }, + { .songLengthId = 13 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_DOUBLE_TEAM] = { - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 44 }, + { .songLengthId = 44 }, + { .songLengthId = 12 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_RECOVER] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 44 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_HARDEN] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_MINIMIZE] = { - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 15 }, + { .songLengthId = 15 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SMOKESCREEN] = { - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0xe, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 26 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_CONFUSE_RAY] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x2d, 0x0, 0x0, 0x0, 0x0}, - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 45 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_WITHDRAW] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_DEFENSE_CURL] = { - { 0xe, 0x0, 0x0, 0x0, 0x0}, - { 0xb, 0x0, 0x0, 0x0, 0x0}, - { 0x32, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 14 }, + { .songLengthId = 11 }, + { .songLengthId = 50 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_BARRIER] = { - { 0x5, 0x0, 0x0, 0x0, 0x0}, - { 0xe, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 5 }, + { .songLengthId = 14 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_LIGHT_SCREEN] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_HAZE] = { - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_REFLECT] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_FOCUS_ENERGY] = { - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0xb, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - NULL_BARD_SOUND + { .songLengthId = 26 }, + { .songLengthId = 44 }, + { .songLengthId = 11 }, + { .songLengthId = 48 }, + { .songLengthId = 12 }, + NULL_BARD_SOUND, }, [MOVE_BIDE] = { - { 0xb, 0x0, 0x0, 0x0, 0x0}, - { 0x32, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 11 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_METRONOME] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 24 }, + { .songLengthId = 24 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_MIRROR_MOVE] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x32, 0x0, 0x0, 0x0, 0x0}, - { 0x29, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 50 }, + { .songLengthId = 41 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SELF_DESTRUCT] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 12 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_EGG_BOMB] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_LICK] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SMOG] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SLUDGE] = { - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_BONE_CLUB] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_FIRE_BLAST] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 48 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_WATERFALL] = { - { 0x1d, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x1d, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 29 }, + { .songLengthId = 48 }, + { .songLengthId = 29 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_CLAMP] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SWIFT] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SKULL_BASH] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + { .songLengthId = 0 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SPIKE_CANNON] = { - { 0x14, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x1d, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 20 }, + { .songLengthId = 0 }, + { .songLengthId = 29 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_CONSTRICT] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_AMNESIA] = { - { 0x2, 0x0, 0x0, 0x0, 0x0}, - { 0xe, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 2 }, + { .songLengthId = 14 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_KINESIS] = { - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 15 }, + { .songLengthId = 12 }, + { .songLengthId = 17 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SOFT_BOILED] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x1e, 0x0, 0x0, 0x0, 0x0}, - { 0xb, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 30 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_HIGH_JUMP_KICK] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 44 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_GLARE] = { - { 0x5, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 5 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_DREAM_EATER] = { - { 0xe, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 14 }, + { .songLengthId = 12 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_POISON_GAS] = { - { 0x1e, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 30 }, + { .songLengthId = 27 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_BARRAGE] = { - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 48 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_LEECH_LIFE] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_LOVELY_KISS] = { - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - NULL_BARD_SOUND + { .songLengthId = 44 }, + { .songLengthId = 44 }, + { .songLengthId = 12 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, }, [MOVE_SKY_ATTACK] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 42 }, + { .songLengthId = 0 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_TRANSFORM] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_BUBBLE] = { - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x24, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 44 }, + { .songLengthId = 36 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_DIZZY_PUNCH] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0xe, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 14 }, + { .songLengthId = 44 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SPORE] = { - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_FLASH] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_PSYWAVE] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SPLASH] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_ACID_ARMOR] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 17 }, + { .songLengthId = 27 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_CRABHAMMER] = { - { 0x2, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 2 }, + { .songLengthId = 0 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_EXPLOSION] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - NULL_BARD_SOUND + { .songLengthId = 9 }, + { .songLengthId = 24 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, }, [MOVE_FURY_SWIPES] = { - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 48 }, + { .songLengthId = 12 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_BONEMERANG] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 48 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_REST] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_ROCK_SLIDE] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_HYPER_FANG] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 48 }, + { .songLengthId = 0 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SHARPEN] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_CONVERSION] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 48 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_TRI_ATTACK] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 42 }, + { .songLengthId = 0 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SUPER_FANG] = { - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x1, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 39 }, + { .songLengthId = 48 }, + { .songLengthId = 1 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SLASH] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SUBSTITUTE] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 17 }, + { .songLengthId = 39 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_STRUGGLE] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x24, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 36 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SKETCH] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_TRIPLE_KICK] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x24, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 36 }, + { .songLengthId = 17 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_THIEF] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SPIDER_WEB] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 48 }, + { .songLengthId = 9 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_MIND_READER] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 12 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_NIGHTMARE] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x5, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_FLAME_WHEEL] = { - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0xe, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 3 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SNORE] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_CURSE] = { - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_FLAIL] = { - { 0x5, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 5 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_CONVERSION_2] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - NULL_BARD_SOUND + { .songLengthId = 42 }, + { .songLengthId = 48 }, + { .songLengthId = 44 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, }, [MOVE_AEROBLAST] = { - { 0x5, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 5 }, + { .songLengthId = 24 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_COTTON_SPORE] = { - { 0x1d, 0x0, 0x0, 0x0, 0x0}, - { 0x1d, 0x0, 0x0, 0x0, 0x0}, - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 29 }, + { .songLengthId = 29 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_REVERSAL] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x24, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 48 }, + { .songLengthId = 36 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SPITE] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_POWDER_SNOW] = { - { 0x21, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 33 }, + { .songLengthId = 48 }, + { .songLengthId = 24 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_PROTECT] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_MACH_PUNCH] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SCARY_FACE] = { - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x3, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 3 }, + { .songLengthId = 12 }, + { .songLengthId = 3 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_FEINT_ATTACK] = { - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 3 }, + { .songLengthId = 42 }, + { .songLengthId = 0 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SWEET_KISS] = { - { 0xe, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 14 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_BELLY_DRUM] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 12 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SLUDGE_BOMB] = { - { 0x2b, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 43 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_MUD_SLAP] = { - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 44 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_OCTAZOOKA] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x28, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 44 }, + { .songLengthId = 40 }, + { .songLengthId = 44 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SPIKES] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_ZAP_CANNON] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x1, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 1 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_FORESIGHT] = { - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x14, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 26 }, + { .songLengthId = 20 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_DESTINY_BOND] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 15 }, + { .songLengthId = 12 }, + { .songLengthId = 27 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_PERISH_SONG] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 17 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_ICY_WIND] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0xf, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 12 }, + { .songLengthId = 15 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_DETECT] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_BONE_RUSH] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_LOCK_ON] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x1d, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 29 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_OUTRAGE] = { - { 0x21, 0x0, 0x0, 0x0, 0x0}, - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 33 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SANDSTORM] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_GIGA_DRAIN] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 42 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_ENDURE] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_CHARM] = { - { 0x15, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 21 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_ROLLOUT] = { - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x21, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 26 }, + { .songLengthId = 33 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_FALSE_SWIPE] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SWAGGER] = { - { 0x2, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 2 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_MILK_DRINK] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0xe, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SPARK] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_FURY_CUTTER] = { - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 48 }, + { .songLengthId = 12 }, + { .songLengthId = 42 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_STEEL_WING] = { - { 0xe, 0x0, 0x0, 0x0, 0x0}, - { 0xd, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 14 }, + { .songLengthId = 13 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_MEAN_LOOK] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x24, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 36 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_ATTRACT] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SLEEP_TALK] = { - { 0xe, 0x0, 0x0, 0x0, 0x0}, - { 0x1d, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 14 }, + { .songLengthId = 29 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_HEAL_BELL] = { - { 0xe, 0x0, 0x0, 0x0, 0x0}, - { 0xa, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 14 }, + { .songLengthId = 10 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_RETURN] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_PRESENT] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_FRUSTRATION] = { - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 44 }, + { .songLengthId = 3 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SAFEGUARD] = { - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 3 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_PAIN_SPLIT] = { - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 3 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SACRED_FIRE] = { - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - NULL_BARD_SOUND + { .songLengthId = 3 }, + { .songLengthId = 17 }, + { .songLengthId = 18 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, }, [MOVE_MAGNITUDE] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 15 }, + { .songLengthId = 39 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_DYNAMIC_PUNCH] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 0 }, + { .songLengthId = 17 }, + { .songLengthId = 44 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_MEGAHORN] = { - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 3 }, + { .songLengthId = 42 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_DRAGON_BREATH] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0xb, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - NULL_BARD_SOUND + { .songLengthId = 0 }, + { .songLengthId = 27 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, }, [MOVE_BATON_PASS] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 27 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_ENCORE] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_PURSUIT] = { - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 48 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_RAPID_SPIN] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0xf, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 15 }, + { .songLengthId = 15 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SWEET_SCENT] = { - { 0xe, 0x0, 0x0, 0x0, 0x0}, - { 0xb, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 14 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_IRON_TAIL] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x5, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 27 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_METAL_CLAW] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x24, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 36 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_VITAL_THROW] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x24, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 36 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_MORNING_SUN] = { - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0xe, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 26 }, + { .songLengthId = 14 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SYNTHESIS] = { - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0xf, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 15 }, + { .songLengthId = 42 }, + { .songLengthId = 15 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_MOONLIGHT] = { - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 39 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_HIDDEN_POWER] = { - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x21, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 15 }, + { .songLengthId = 9 }, + { .songLengthId = 33 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_CROSS_CHOP] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x1d, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 29 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_TWISTER] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_RAIN_DANCE] = { - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 3 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SUNNY_DAY] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0xe, 0x0, 0x0, 0x0, 0x0}, - { 0x5, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 14 }, + { .songLengthId = 5 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_CRUNCH] = { - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 48 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_MIRROR_COAT] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 48 }, + { .songLengthId = 24 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_PSYCH_UP] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_EXTREME_SPEED] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 12 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_ANCIENT_POWER] = { - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x21, 0x0, 0x0, 0x0, 0x0}, - { 0x32, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - NULL_BARD_SOUND + { .songLengthId = 3 }, + { .songLengthId = 12 }, + { .songLengthId = 33 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, }, [MOVE_SHADOW_BALL] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 24 }, + { .songLengthId = 27 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_FUTURE_SIGHT] = { - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 39 }, + { .songLengthId = 48 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_ROCK_SMASH] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_WHIRLPOOL] = { - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 48 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_BEAT_UP] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_FAKE_OUT] = { - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x21, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 3 }, + { .songLengthId = 33 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_UPROAR] = { - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 44 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_STOCKPILE] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x14, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 20 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SPIT_UP] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SWALLOW] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_HEAT_WAVE] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_HAIL] = { - { 0x5, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_TORMENT] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_FLATTER] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_WILL_O_WISP] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 24 }, + { .songLengthId = 17 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_MEMENTO] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 9 }, + { .songLengthId = 24 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_FACADE] = { - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 44 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_FOCUS_PUNCH] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 44 }, + { .songLengthId = 44 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SMELLING_SALTS] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 12 }, + { .songLengthId = 27 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_FOLLOW_ME] = { - { 0x15, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 21 }, + { .songLengthId = 24 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_NATURE_POWER] = { - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x21, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 3 }, + { .songLengthId = 48 }, + { .songLengthId = 33 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_CHARGE] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_TAUNT] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_HELPING_HAND] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 12 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_TRICK] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_ROLE_PLAY] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_WISH] = { - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_ASSIST] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_INGRAIN] = { - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 15 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SUPERPOWER] = { - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x21, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 39 }, + { .songLengthId = 48 }, + { .songLengthId = 33 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_MAGIC_COAT] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 17 }, + { .songLengthId = 24 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_RECYCLE] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x24, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 18 }, + { .songLengthId = 36 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_REVENGE] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_BRICK_BREAK] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x5, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_YAWN] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_KNOCK_OFF] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x1d, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 29 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_ENDEAVOR] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 9 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_ERUPTION] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x1d, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 44 }, + { .songLengthId = 29 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SKILL_SWAP] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_IMPRISON] = { - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 15 }, + { .songLengthId = 15 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_REFRESH] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_GRUDGE] = { - { 0x2b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 43 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SNATCH] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SECRET_POWER] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x21, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 9 }, + { .songLengthId = 33 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_DIVE] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_ARM_THRUST] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_CAMOUFLAGE] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 24 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_TAIL_GLOW] = { - { 0x4, 0x0, 0x0, 0x0, 0x0}, - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 4 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_LUSTER_PURGE] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x32, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 48 }, + { .songLengthId = 50 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_MIST_BALL] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_FEATHER_DANCE] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 48 }, + { .songLengthId = 0 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_TEETER_DANCE] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 48 }, + { .songLengthId = 0 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_BLAZE_KICK] = { - { 0x5, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 5 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_MUD_SPORT] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 24 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_ICE_BALL] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_NEEDLE_ARM] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x1d, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 42 }, + { .songLengthId = 29 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SLACK_OFF] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_HYPER_VOICE] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x1e, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 48 }, + { .songLengthId = 30 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_POISON_FANG] = { - { 0x1e, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 30 }, + { .songLengthId = 42 }, + { .songLengthId = 0 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_CRUSH_CLAW] = { - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 44 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_BLAST_BURN] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_HYDRO_CANNON] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - NULL_BARD_SOUND + { .songLengthId = 18 }, + { .songLengthId = 24 }, + { .songLengthId = 0 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, }, [MOVE_METEOR_MASH] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0} + { .songLengthId = 12 }, + { .songLengthId = 12 }, + { .songLengthId = 24 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, }, [MOVE_ASTONISH] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 27 }, + { .songLengthId = 17 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_WEATHER_BALL] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 48 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_AROMATHERAPY] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0xe, 0x0, 0x0, 0x0, 0x0} + { .songLengthId = 42 }, + { .songLengthId = 24 }, + { .songLengthId = 44 }, + { .songLengthId = 0 }, + { .songLengthId = 27 }, + { .songLengthId = 14 }, }, [MOVE_FAKE_TEARS] = { - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0xe, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 3 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_AIR_CUTTER] = { - { 0x5, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 5 }, + { .songLengthId = 42 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_OVERHEAT] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 48 }, + { .songLengthId = 12 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_ODOR_SLEUTH] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 48 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_ROCK_TOMB] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SILVER_WIND] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0xf, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 48 }, + { .songLengthId = 15 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_METAL_SOUND] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x21, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 27 }, + { .songLengthId = 33 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_GRASS_WHISTLE] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x24, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 17 }, + { .songLengthId = 36 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_TICKLE] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x24, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 36 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_COSMIC_POWER] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x21, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 17 }, + { .songLengthId = 33 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_WATER_SPOUT] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x21, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 48 }, + { .songLengthId = 33 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SIGNAL_BEAM] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 27 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SHADOW_PUNCH] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 24 }, + { .songLengthId = 44 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_EXTRASENSORY] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - NULL_BARD_SOUND + { .songLengthId = 9 }, + { .songLengthId = 42 }, + { .songLengthId = 9 }, + { .songLengthId = 24 }, + { .songLengthId = 12 }, + NULL_BARD_SOUND, }, [MOVE_SKY_UPPERCUT] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 44 }, + { .songLengthId = 48 }, + { .songLengthId = 42 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SAND_TOMB] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SHEER_COLD] = { - { 0xe, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 14 }, + { .songLengthId = 48 }, + { .songLengthId = 24 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_MUDDY_WATER] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 12 }, + { .songLengthId = 27 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_BULLET_SEED] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 9 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_AERIAL_ACE] = { - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x3, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 3 }, + { .songLengthId = 12 }, + { .songLengthId = 42 }, + { .songLengthId = 3 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_ICICLE_SPEAR] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - NULL_BARD_SOUND + { .songLengthId = 18 }, + { .songLengthId = 15 }, + { .songLengthId = 42 }, + { .songLengthId = 12 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, }, [MOVE_IRON_DEFENSE] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 27 }, + { .songLengthId = 12 }, + { .songLengthId = 9 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_BLOCK] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_HOWL] = { - { 0x21, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 33 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_DRAGON_CLAW] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x1d, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 27 }, + { .songLengthId = 29 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_FRENZY_PLANT] = { - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 48 }, + { .songLengthId = 9 }, + { .songLengthId = 12 }, + { .songLengthId = 0 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_BULK_UP] = { - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 44 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_BOUNCE] = { - { 0x21, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 33 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_MUD_SHOT] = { - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x1d, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 44 }, + { .songLengthId = 29 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_POISON_TAIL] = { - { 0x1e, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x5, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 30 }, + { .songLengthId = 44 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_COVET] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_VOLT_TACKLE] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x24, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + { .songLengthId = 0 }, + { .songLengthId = 36 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_MAGICAL_LEAF] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x24, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - NULL_BARD_SOUND + { .songLengthId = 0 }, + { .songLengthId = 17 }, + { .songLengthId = 36 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, }, [MOVE_WATER_SPORT] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 48 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_CALM_MIND] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_LEAF_BLADE] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x5, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_DRAGON_DANCE] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 27 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_ROCK_BLAST] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_SHOCK_WAVE] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_WATER_PULSE] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 48 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [MOVE_DOOM_DESIRE] = { - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - NULL_BARD_SOUND + { .songLengthId = 39 }, + { .songLengthId = 51 }, + { .songLengthId = 12 }, + { .songLengthId = 18 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, }, [MOVE_PSYCHO_BOOST] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + { .songLengthId = 39 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND } }; diff --git a/src/data/bard_music/people.h b/src/data/bard_music/people.h index 2db017080..c1c2f9d3f 100644 --- a/src/data/bard_music/people.h +++ b/src/data/bard_music/people.h @@ -2,604 +2,604 @@ #define GUARD_DATA_BARD_MUSIC_PEOPLE_H const struct BardSound gBardSounds_People[][6] = { { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 26 }, + { .songLengthId = 11 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x13, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 19 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2d, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 45 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, -0x9, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26, .songLengthOffset = -0x9 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x26, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 38 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2d, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 45 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1, 0x0, 0x0, 0x0, 0x0 }, - { 0x8, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 1 }, + { .songLengthId = 8 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x26, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 38 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x8, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 8 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1e, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 30 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x24, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 36 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x15, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 21 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 1 }, + { .songLengthId = 44 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x7, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 7 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xd, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 13 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x4, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 4 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 17 }, + { .songLengthId = 14 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x10, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 16 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 28 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0xa, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 10 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0xd, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 13 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x2, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 2 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 20 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x29, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 41 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 42 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x29, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 41 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x10, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 16 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x10, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 16 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 5 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 20 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x1d, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 50 }, + { .songLengthId = 29 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x28, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 40 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 5 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x31, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 49 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x31, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 49 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 3 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x21, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 33 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x24, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 36 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x26, 0x0, 0x0, 0x0, 0x0 }, - { 0x2, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 38 }, + { .songLengthId = 2 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x2b, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 43 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x10, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 16 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x1, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 1 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND } }; diff --git a/src/data/bard_music/pokemon.h b/src/data/bard_music/pokemon.h index 7e6a2566d..7d378da6f 100644 --- a/src/data/bard_music/pokemon.h +++ b/src/data/bard_music/pokemon.h @@ -10,3095 +10,3095 @@ const struct BardSound gBardSounds_Pokemon[NUM_SPECIES][6] = { NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND + NULL_BARD_SOUND, }, [SPECIES_BULBASAUR] = { - { 0x24, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 36 }, + { .songLengthId = 42 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_IVYSAUR] = { - { 0x14, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x32, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 20 }, + { .songLengthId = 12 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_VENUSAUR] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 44 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_CHARMANDER] = { - { 0x6, 0x0, 0x0, 0x0, 0x0}, - { 0x2, 0x0, 0x0, 0x0, 0x0}, - { 0x32, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 6 }, + { .songLengthId = 2 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_CHARMELEON] = { - { 0x6, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x15, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - NULL_BARD_SOUND + { .songLengthId = 6 }, + { .songLengthId = 12 }, + { .songLengthId = 12 }, + { .songLengthId = 21 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, }, [SPECIES_CHARIZARD] = { - { 0x6, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x32, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - NULL_BARD_SOUND + { .songLengthId = 6 }, + { .songLengthId = 17 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, }, [SPECIES_SQUIRTLE] = { - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x24, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 48 }, + { .songLengthId = 36 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_WARTORTLE] = { - { 0x8, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x24, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 8 }, + { .songLengthId = 48 }, + { .songLengthId = 36 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_BLASTOISE] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x1e, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 30 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_CATERPIE] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 48 }, + { .songLengthId = 12 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_METAPOD] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x15, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 42 }, + { .songLengthId = 21 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_BUTTERFREE] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 48 }, + { .songLengthId = 12 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_WEEDLE] = { - { 0xe, 0x0, 0x0, 0x0, 0x0}, - { 0x26, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 14 }, + { .songLengthId = 38 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_KAKUNA] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 39 }, + { .songLengthId = 42 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_BEEDRILL] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_PIDGEY] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_PIDGEOTTO] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 12 }, + { .songLengthId = 24 }, + { .songLengthId = 24 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_PIDGEOT] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x15, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 12 }, + { .songLengthId = 21 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_RATTATA] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 0 }, + { .songLengthId = 44 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_RATICATE] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x3, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 12 }, + { .songLengthId = 3 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SPEAROW] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_FEAROW] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_EKANS] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_ARBOK] = { - { 0x6, 0x0, 0x0, 0x0, 0x0}, - { 0x17, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 6 }, + { .songLengthId = 23 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_PIKACHU] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 42 }, + { .songLengthId = 39 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_RAICHU] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SANDSHREW] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SANDSLASH] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_NIDORAN_F] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 24 }, + { .songLengthId = 0 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_NIDORINA] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 24 }, + { .songLengthId = 12 }, + { .songLengthId = 42 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_NIDOQUEEN] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 24 }, + { .songLengthId = 12 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_NIDORAN_M] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 24 }, + { .songLengthId = 0 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_NIDORINO] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 24 }, + { .songLengthId = 12 }, + { .songLengthId = 24 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_NIDOKING] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 24 }, + { .songLengthId = 12 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_CLEFAIRY] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0xb, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 11 }, + { .songLengthId = 12 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_CLEFABLE] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x24, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 42 }, + { .songLengthId = 36 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_VULPIX] = { - { 0x24, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 36 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_NINETALES] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x5, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_JIGGLYPUFF] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - NULL_BARD_SOUND + { .songLengthId = 17 }, + { .songLengthId = 39 }, + { .songLengthId = 12 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, }, [SPECIES_WIGGLYTUFF] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - NULL_BARD_SOUND + { .songLengthId = 17 }, + { .songLengthId = 39 }, + { .songLengthId = 12 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, }, [SPECIES_ZUBAT] = { - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 39 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_GOLBAT] = { - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 26 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_ODDISH] = { - { 0x15, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 21 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_GLOOM] = { - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_VILEPLUME] = { - { 0x14, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 20 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_PARAS] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_PARASECT] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 0 }, + { .songLengthId = 9 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_VENONAT] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 26 }, + { .songLengthId = 0 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_VENOMOTH] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x15, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 26 }, + { .songLengthId = 21 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_DIGLETT] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_DUGTRIO] = { - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 44 }, + { .songLengthId = 12 }, + { .songLengthId = 24 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MEOWTH] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x21, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 33 }, + { .songLengthId = 17 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_PERSIAN] = { - { 0x32, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 50 }, + { .songLengthId = 17 }, + { .songLengthId = 0 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_PSYDUCK] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_GOLDUCK] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MANKEY] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_PRIMEAPE] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_GROWLITHE] = { - { 0x21, 0x0, 0x0, 0x0, 0x0}, - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 33 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_ARCANINE] = { - { 0x6, 0x0, 0x0, 0x0, 0x0}, - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 6 }, + { .songLengthId = 3 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_POLIWAG] = { - { 0x15, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 21 }, + { .songLengthId = 12 }, + { .songLengthId = 0 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_POLIWHIRL] = { - { 0x15, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 21 }, + { .songLengthId = 12 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_POLIWRATH] = { - { 0x15, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 21 }, + { .songLengthId = 12 }, + { .songLengthId = 0 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_ABRA] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_KADABRA] = { - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 44 }, + { .songLengthId = 0 }, + { .songLengthId = 44 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_ALAKAZAM] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 44 }, + { .songLengthId = 44 }, + { .songLengthId = 0 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MACHOP] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x15, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 21 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MACHOKE] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MACHAMP] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_BELLSPROUT] = { - { 0xb, 0x0, 0x0, 0x0, 0x0}, - { 0x21, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 11 }, + { .songLengthId = 33 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_WEEPINBELL] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0xb, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 15 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_VICTREEBEL] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 12 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_TENTACOOL] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 42 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_TENTACRUEL] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 42 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_GEODUDE] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 24 }, + { .songLengthId = 39 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_GRAVELER] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 9 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_GOLEM] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_PONYTA] = { - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 26 }, + { .songLengthId = 12 }, + { .songLengthId = 42 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_RAPIDASH] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 17 }, + { .songLengthId = 0 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SLOWPOKE] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SLOWBRO] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MAGNEMITE] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x12, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 9 }, + { .songLengthId = 18 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MAGNETON] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 9 }, + { .songLengthId = 42 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_FARFETCHD] = { - { 0x6, 0x0, 0x0, 0x0, 0x0}, - { 0xb, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 6 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_DODUO] = { - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 26 }, + { .songLengthId = 39 }, + { .songLengthId = 24 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_DODRIO] = { - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 26 }, + { .songLengthId = 12 }, + { .songLengthId = 24 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SEEL] = { - { 0xe, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_DEWGONG] = { - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x15, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 39 }, + { .songLengthId = 21 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_GRIMER] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MUK] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SHELLDER] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_CLOYSTER] = { - { 0x1e, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 30 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_GASTLY] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0xe, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_HAUNTER] = { - { 0x15, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 21 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_GENGAR] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x8, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 8 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_ONIX] = { - { 0x15, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 21 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_DROWZEE] = { - { 0x21, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 33 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_HYPNO] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_KRABBY] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_KINGLER] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_VOLTORB] = { - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 26 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_ELECTRODE] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 9 }, + { .songLengthId = 24 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_EXEGGCUTE] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 44 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_EXEGGUTOR] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x32, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - NULL_BARD_SOUND + { .songLengthId = 9 }, + { .songLengthId = 44 }, + { .songLengthId = 9 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, }, [SPECIES_CUBONE] = { - { 0x2d, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 45 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MAROWAK] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 26 }, + { .songLengthId = 0 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_HITMONLEE] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x15, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 21 }, + { .songLengthId = 12 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_HITMONCHAN] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x15, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 21 }, + { .songLengthId = 0 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_LICKITUNG] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 12 }, + { .songLengthId = 42 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_KOFFING] = { - { 0x15, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 21 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_WEEZING] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_RHYHORN] = { - { 0x14, 0x0, 0x0, 0x0, 0x0}, - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 20 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_RHYDON] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x15, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 21 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_CHANSEY] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_TANGELA] = { - { 0x2, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 2 }, + { .songLengthId = 9 }, + { .songLengthId = 42 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_KANGASKHAN] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 0 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_HORSEA] = { - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 26 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SEADRA] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_GOLDEEN] = { - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 26 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SEAKING] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_STARYU] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_STARMIE] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MR_MIME] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x12, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 48 }, + { .songLengthId = 18 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SCYTHER] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_JYNX] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_ELECTABUZZ] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 9 }, + { .songLengthId = 44 }, + { .songLengthId = 44 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MAGMAR] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x1d, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 29 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_PINSIR] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_TAUROS] = { - { 0x1d, 0x0, 0x0, 0x0, 0x0}, - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 29 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MAGIKARP] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 17 }, + { .songLengthId = 27 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_GYARADOS] = { - { 0x1d, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x1d, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 29 }, + { .songLengthId = 9 }, + { .songLengthId = 17 }, + { .songLengthId = 29 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_LAPRAS] = { - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 44 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_DITTO] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_EEVEE] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_VAPOREON] = { - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x15, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 3 }, + { .songLengthId = 24 }, + { .songLengthId = 12 }, + { .songLengthId = 21 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_JOLTEON] = { - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x15, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 26 }, + { .songLengthId = 12 }, + { .songLengthId = 21 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_FLAREON] = { - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x15, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 3 }, + { .songLengthId = 12 }, + { .songLengthId = 21 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_PORYGON] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x15, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 12 }, + { .songLengthId = 21 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_OMANYTE] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 0 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_OMASTAR] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x15, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 0 }, + { .songLengthId = 21 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_KABUTO] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x1a, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 39 }, + { .songLengthId = 26 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_KABUTOPS] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x15, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 39 }, + { .songLengthId = 21 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_AERODACTYL] = { - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 3 }, + { .songLengthId = 24 }, + { .songLengthId = 0 }, + { .songLengthId = 24 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SNORLAX] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_ARTICUNO] = { - { 0x6, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 6 }, + { .songLengthId = 17 }, + { .songLengthId = 39 }, + { .songLengthId = 24 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_ZAPDOS] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MOLTRES] = { - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 26 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_DRATINI] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 12 }, + { .songLengthId = 12 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_DRAGONAIR] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x15, 0x0, 0x0, 0x0, 0x0}, - { 0xb, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 21 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_DRAGONITE] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x15, 0x0, 0x0, 0x0, 0x0}, - { 0x12, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 21 }, + { .songLengthId = 18 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MEWTWO] = { - { 0x2d, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 45 }, + { .songLengthId = 39 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MEW] = { - { 0x2d, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 45 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_CHIKORITA] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 24 }, + { .songLengthId = 12 }, + { .songLengthId = 42 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_BAYLEEF] = { - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 3 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MEGANIUM] = { - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 3 }, + { .songLengthId = 9 }, + { .songLengthId = 12 }, + { .songLengthId = 42 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_CYNDAQUIL] = { - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 15 }, + { .songLengthId = 42 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_QUILAVA] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x6, 0x0, 0x0, 0x0, 0x0}, - { 0x8, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 6 }, + { .songLengthId = 8 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_TYPHLOSION] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - NULL_BARD_SOUND + { .songLengthId = 18 }, + { .songLengthId = 24 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, }, [SPECIES_TOTODILE] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x12, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 24 }, + { .songLengthId = 18 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_CROCONAW] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 24 }, + { .songLengthId = 27 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_FERALIGATR] = { - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - NULL_BARD_SOUND + { .songLengthId = 48 }, + { .songLengthId = 0 }, + { .songLengthId = 15 }, + { .songLengthId = 3 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, }, [SPECIES_SENTRET] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_FURRET] = { - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 48 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_HOOTHOOT] = { - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 39 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_NOCTOWL] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x21, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 33 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_LEDYBA] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 12 }, + { .songLengthId = 42 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_LEDIAN] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 12 }, + { .songLengthId = 0 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SPINARAK] = { - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 15 }, + { .songLengthId = 48 }, + { .songLengthId = 0 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_ARIADOS] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 12 }, + { .songLengthId = 42 }, + { .songLengthId = 24 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_CROBAT] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_CHINCHOU] = { - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0x21, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 15 }, + { .songLengthId = 33 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_LANTURN] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_PICHU] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_CLEFFA] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_IGGLYBUFF] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 42 }, + { .songLengthId = 12 }, + { .songLengthId = 42 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_TOGEPI] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 9 }, + { .songLengthId = 12 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_TOGETIC] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 9 }, + { .songLengthId = 17 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_NATU] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_XATU] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MAREEP] = { - { 0x1d, 0x0, 0x0, 0x0, 0x0}, - { 0xe, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 29 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_FLAAFFY] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_AMPHAROS] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x6, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 6 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_BELLOSSOM] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 27 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MARILL] = { - { 0x8, 0x0, 0x0, 0x0, 0x0}, - { 0x10, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 8 }, + { .songLengthId = 16 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_AZUMARILL] = { - { 0x8, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x10, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 8 }, + { .songLengthId = 39 }, + { .songLengthId = 44 }, + { .songLengthId = 16 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SUDOWOODO] = { - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 39 }, + { .songLengthId = 24 }, + { .songLengthId = 39 }, + { .songLengthId = 24 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_POLITOED] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 12 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_HOPPIP] = { - { 0x1d, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 29 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SKIPLOOM] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_JUMPLUFF] = { - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 44 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_AIPOM] = { - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 3 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SUNKERN] = { - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 44 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SUNFLORA] = { - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 44 }, + { .songLengthId = 24 }, + { .songLengthId = 44 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_YANMA] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_WOOPER] = { - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 39 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_QUAGSIRE] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x32, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 18 }, + { .songLengthId = 50 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_ESPEON] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 12 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_UMBREON] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 12 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MURKROW] = { - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 48 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SLOWKING] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MISDREAVUS] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 12 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_UNOWN] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_WOBBUFFET] = { - { 0x1d, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 29 }, + { .songLengthId = 44 }, + { .songLengthId = 9 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_GIRAFARIG] = { - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 48 }, + { .songLengthId = 0 }, + { .songLengthId = 42 }, + { .songLengthId = 17 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_PINECO] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_FORRETRESS] = { - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 26 }, + { .songLengthId = 9 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_DUNSPARCE] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x1c, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 28 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_GLIGAR] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_STEELIX] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SNUBBULL] = { - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 44 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_GRANBULL] = { - { 0x2, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 2 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_QWILFISH] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SCIZOR] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x32, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SHUCKLE] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x26, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 38 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_HERACROSS] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 42 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SNEASEL] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x26, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 38 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_TEDDIURSA] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 12 }, + { .songLengthId = 48 }, + { .songLengthId = 44 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_URSARING] = { - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 48 }, + { .songLengthId = 44 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SLUGMA] = { - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 44 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MAGCARGO] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 27 }, + { .songLengthId = 24 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SWINUB] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_PILOSWINE] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 26 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_CORSOLA] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 24 }, + { .songLengthId = 42 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_REMORAID] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x3, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 24 }, + { .songLengthId = 3 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_OCTILLERY] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 17 }, + { .songLengthId = 48 }, + { .songLengthId = 12 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_DELIBIRD] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 12 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MANTINE] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SKARMORY] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 26 }, + { .songLengthId = 12 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_HOUNDOUR] = { - { 0x23, 0x0, 0x0, 0x0, 0x0}, - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 35 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_HOUNDOOM] = { - { 0x21, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 33 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_KINGDRA] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_PHANPY] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_DONPHAN] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_PORYGON2] = { - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 26 }, + { .songLengthId = 12 }, + { .songLengthId = 27 }, + { .songLengthId = 39 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_STANTLER] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SMEARGLE] = { - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x26, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 48 }, + { .songLengthId = 38 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_TYROGUE] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_HITMONTOP] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x15, 0x0, 0x0, 0x0, 0x0}, - { 0x1d, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 21 }, + { .songLengthId = 29 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SMOOCHUM] = { - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 39 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_ELEKID] = { - { 0xb, 0x0, 0x0, 0x0, 0x0}, - { 0xb, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 11 }, + { .songLengthId = 11 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MAGBY] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MILTANK] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_BLISSEY] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0xe, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_RAIKOU] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_ENTEI] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SUICUNE] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_LARVITAR] = { - { 0x15, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x15, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 21 }, + { .songLengthId = 17 }, + { .songLengthId = 21 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_PUPITAR] = { - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 39 }, + { .songLengthId = 17 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_TYRANITAR] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 0 }, + { .songLengthId = 17 }, + { .songLengthId = 27 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_LUGIA] = { - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 39 }, + { .songLengthId = 12 }, + { .songLengthId = 42 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_HO_OH] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_CELEBI] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 9 }, + { .songLengthId = 12 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_TREECKO] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_GROVYLE] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SCEPTILE] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_TORCHIC] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_COMBUSKEN] = { - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 44 }, + { .songLengthId = 44 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_BLAZIKEN] = { - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 3 }, + { .songLengthId = 17 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MUDKIP] = { - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 44 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MARSHTOMP] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x1d, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 29 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SWAMPERT] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_POOCHYENA] = { - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 39 }, + { .songLengthId = 12 }, + { .songLengthId = 9 }, + { .songLengthId = 44 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MIGHTYENA] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 12 }, + { .songLengthId = 9 }, + { .songLengthId = 44 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_ZIGZAGOON] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 0 }, + { .songLengthId = 39 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_LINOONE] = { - { 0x14, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 20 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_WURMPLE] = { - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x24, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 48 }, + { .songLengthId = 36 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SILCOON] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x28, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 40 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_BEAUTIFLY] = { - { 0x2d, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 45 }, + { .songLengthId = 9 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_CASCOON] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_DUSTOX] = { - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x17, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 44 }, + { .songLengthId = 23 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_LOTAD] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_LOMBRE] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_LUDICOLO] = { - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x1a, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 39 }, + { .songLengthId = 9 }, + { .songLengthId = 26 }, + { .songLengthId = 26 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SEEDOT] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_NUZLEAF] = { - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0xe, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 44 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SHIFTRY] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_NINCADA] = { - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0x6, 0x0, 0x0, 0x0, 0x0}, - { 0x6, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 15 }, + { .songLengthId = 6 }, + { .songLengthId = 6 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_NINJASK] = { - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 15 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SHEDINJA] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 15 }, + { .songLengthId = 42 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_TAILLOW] = { - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 3 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SWELLOW] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SHROOMISH] = { - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 39 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_BRELOOM] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SPINDA] = { - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 15 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_WINGULL] = { - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0x24, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 15 }, + { .songLengthId = 36 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_PELIPPER] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 12 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SURSKIT] = { - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 48 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MASQUERAIN] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 48 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_WAILMER] = { - { 0x5, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 5 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_WAILORD] = { - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 3 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SKITTY] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_DELCATTY] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 0 }, + { .songLengthId = 12 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_KECLEON] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 12 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_BALTOY] = { - { 0x1, 0x0, 0x0, 0x0, 0x0}, - { 0x1e, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 1 }, + { .songLengthId = 30 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_CLAYDOL] = { - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 3 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_NOSEPASS] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_TORKOAL] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SABLEYE] = { - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0xb, 0x0, 0x0, 0x0, 0x0}, - { 0x12, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 3 }, + { .songLengthId = 11 }, + { .songLengthId = 18 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_BARBOACH] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_WHISCASH] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_LUVDISC] = { - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 44 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_CORPHISH] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_CRAWDAUNT] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_FEEBAS] = { - { 0xe, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 14 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MILOTIC] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 24 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_CARVANHA] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x1, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 1 }, + { .songLengthId = 42 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SHARPEDO] = { - { 0x1d, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 29 }, + { .songLengthId = 12 }, + { .songLengthId = 24 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_TRAPINCH] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_VIBRAVA] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 27 }, + { .songLengthId = 42 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_FLYGON] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MAKUHITA] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 39 }, + { .songLengthId = 12 }, + { .songLengthId = 42 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_HARIYAMA] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 12 }, + { .songLengthId = 27 }, + { .songLengthId = 42 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_ELECTRIKE] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 9 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MANECTRIC] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 9 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_NUMEL] = { - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0xb, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 44 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_CAMERUPT] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 48 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SPHEAL] = { - { 0xe, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SEALEO] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 12 }, + { .songLengthId = 24 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_WALREIN] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_CACNEA] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 12 }, + { .songLengthId = 42 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_CACTURNE] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SNORUNT] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_GLALIE] = { - { 0x5, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 5 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_LUNATONE] = { - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 39 }, + { .songLengthId = 44 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SOLROCK] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_AZURILL] = { - { 0x6, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 6 }, + { .songLengthId = 39 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SPOINK] = { - { 0x1e, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 30 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_GRUMPIG] = { - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 44 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_PLUSLE] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x24, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 36 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MINUN] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MAWILE] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MEDITITE] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 17 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_MEDICHAM] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 17 }, + { .songLengthId = 0 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SWABLU] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_ALTARIA] = { - { 0x6, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 6 }, + { .songLengthId = 27 }, + { .songLengthId = 12 }, + { .songLengthId = 42 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_WYNAUT] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_DUSKULL] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x26, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 38 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_DUSCLOPS] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_ROSELIA] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 9 }, + { .songLengthId = 12 }, + { .songLengthId = 42 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SLAKOTH] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_VIGOROTH] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 48 }, + { .songLengthId = 27 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SLAKING] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_GULPIN] = { - { 0x24, 0x0, 0x0, 0x0, 0x0}, - { 0xf, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 36 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SWALOT] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_TROPIUS] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 12 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_WHISMUR] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_LOUDRED] = { - { 0x21, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 33 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_EXPLOUD] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x21, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 33 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_CLAMPERL] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x32, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_HUNTAIL] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x5, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_GOREBYSS] = { - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x2c, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 26 }, + { .songLengthId = 44 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_ABSOL] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SHUPPET] = { - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 42 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_BANETTE] = { - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 3 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SEVIPER] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 18 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_ZANGOOSE] = { - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 3 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_RELICANTH] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 17 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_ARON] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x1d, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 29 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_LAIRON] = { - { 0x5, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 5 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_AGGRON] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_CASTFORM] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x1a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_VOLBEAT] = { - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 24 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_ILLUMISE] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x27, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x3, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 39 }, + { .songLengthId = 12 }, + { .songLengthId = 3 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_LILEEP] = { - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 17 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_CRADILY] = { - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 3 }, + { .songLengthId = 17 }, + { .songLengthId = 12 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_ANORITH] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 24 }, + { .songLengthId = 17 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_ARMALDO] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 27 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_RALTS] = { - { 0x7, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 7 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_KIRLIA] = { - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 48 }, + { .songLengthId = 12 }, + { .songLengthId = 42 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_GARDEVOIR] = { - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 27 }, + { .songLengthId = 9 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_BAGON] = { - { 0x5, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 5 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SHELGON] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_SALAMENCE] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 0 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_BELDUM] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_METANG] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_METAGROSS] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 42 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_REGIROCK] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 12 }, + { .songLengthId = 27 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_REGICE] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 12 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_REGISTEEL] = { - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0xe, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 9 }, + { .songLengthId = 12 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_KYOGRE] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x30, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 24 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_GROUDON] = { - { 0x21, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 33 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_RAYQUAZA] = { - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x3, 0x0, 0x0, 0x0, 0x0}, - { 0x2a, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 3 }, + { .songLengthId = 3 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_LATIAS] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 12 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_LATIOS] = { - { 0x0, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 0 }, + { .songLengthId = 12 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_JIRACHI] = { - { 0x30, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 48 }, + { .songLengthId = 27 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_DEOXYS] = { - { 0xc, 0x0, 0x0, 0x0, 0x0}, - { 0x1b, 0x0, 0x0, 0x0, 0x0}, - { 0x11, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 12 }, + { .songLengthId = 27 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, [SPECIES_CHIMECHO] = { - { 0x12, 0x0, 0x0, 0x0, 0x0}, - { 0x9, 0x0, 0x0, 0x0, 0x0}, - { 0x18, 0x0, 0x0, 0x0, 0x0}, - { 0x33, 0x0, 0x0, 0x0, 0x0}, + { .songLengthId = 18 }, + { .songLengthId = 9 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND } }; diff --git a/src/data/bard_music/speech.h b/src/data/bard_music/speech.h index d0d4abb11..dc7844ec8 100644 --- a/src/data/bard_music/speech.h +++ b/src/data/bard_music/speech.h @@ -2,484 +2,484 @@ #define GUARD_DATA_BARD_MUSIC_SPEECH_H const struct BardSound gBardSounds_Speech[][6] = { { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x10, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 16 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x15, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 21 }, + { .songLengthId = 9 }, + { .songLengthId = 12 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0xa, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 44 }, + { .songLengthId = 10 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 15 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 20 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2b, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 43 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x21, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 33 }, + { .songLengthId = 9 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2b, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 43 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x21, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 33 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x17, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 3 }, + { .songLengthId = 23 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x26, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 3 }, + { .songLengthId = 17 }, + { .songLengthId = 38 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x2d, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - NULL_BARD_SOUND + { .songLengthId = 0 }, + { .songLengthId = 44 }, + { .songLengthId = 45 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xa, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 10 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x15, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 21 }, + { .songLengthId = 44 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xa, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 10 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 20 }, + { .songLengthId = 12 }, + { .songLengthId = 17 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 11 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 11 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - NULL_BARD_SOUND + { .songLengthId = 1 }, + { .songLengthId = 48 }, + { .songLengthId = 6 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x23, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 35 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x27, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 50 }, + { .songLengthId = 39 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1b, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 27 }, + { .songLengthId = 14 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1b, 0x0, 0x0, 0x0, 0x0 }, - { 0x23, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 27 }, + { .songLengthId = 35 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 6 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 6 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 50 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x1, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 1 }, + { .songLengthId = 44 }, + { .songLengthId = 1 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0xa, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 10 }, + { .songLengthId = 14 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x26, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - NULL_BARD_SOUND + { .songLengthId = 17 }, + { .songLengthId = 14 }, + { .songLengthId = 38 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x7, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 7 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x10, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 16 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 1 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x28, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 40 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0x26, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 6 }, + { .songLengthId = 38 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 6 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x8, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 8 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 15 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2b, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 43 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND } }; diff --git a/src/data/bard_music/status.h b/src/data/bard_music/status.h index 418fe639a..9a3fd0139 100644 --- a/src/data/bard_music/status.h +++ b/src/data/bard_music/status.h @@ -2,876 +2,876 @@ #define GUARD_DATA_BARD_MUSIC_STATUS_H const struct BardSound gBardSounds_Status[][6] = { { - { 0x8, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 8 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 3 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0x0, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 6 }, + { .songLengthId = 12 }, + { .songLengthId = 6 }, + { .songLengthId = 0 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x3, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 15 }, + { .songLengthId = 17 }, + { .songLengthId = 44 }, + { .songLengthId = 3 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x15, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 21 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1b, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x1, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - NULL_BARD_SOUND + { .songLengthId = 27 }, + { .songLengthId = 50 }, + { .songLengthId = 1 }, + { .songLengthId = 44 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, }, { - { 0x15, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 21 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x24, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 12 }, + { .songLengthId = 36 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x15, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 21 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 48 }, + { .songLengthId = 44 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x0, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 24 }, + { .songLengthId = 0 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 6 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 6 }, + { .songLengthId = 50 }, + { .songLengthId = 9 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x29, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 41 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x29, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 41 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 9 }, + { .songLengthId = 6 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2d, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 45 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2d, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 45 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 48 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - NULL_BARD_SOUND + { .songLengthId = 42 }, + { .songLengthId = 15 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x17, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 23 }, + { .songLengthId = 12 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x15, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 21 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 6 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x8, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - NULL_BARD_SOUND + { .songLengthId = 0 }, + { .songLengthId = 50 }, + { .songLengthId = 8 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x21, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 33 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 15 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 9 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 15 }, + { .songLengthId = 24 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x18, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 48 }, + { .songLengthId = 24 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 2 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2, 0x0, 0x0, 0x0, 0x0 }, - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 2 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 15 }, + { .songLengthId = 48 }, + { .songLengthId = 24 }, + { .songLengthId = 42 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2d, 0x0, 0x0, 0x0, 0x0 }, - { 0x21, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 45 }, + { .songLengthId = 33 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x24, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 36 }, + { .songLengthId = 44 }, + { .songLengthId = 26 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 6 }, + { .songLengthId = 48 }, + { .songLengthId = 44 }, + { .songLengthId = 26 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 11 }, + { .songLengthId = 9 }, + { .songLengthId = 17 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x2, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 2 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 48 }, + { .songLengthId = 14 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x20, 0x0, 0x0, 0x0, 0x0 }, - { 0x1b, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 32 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x20, 0x0, 0x0, 0x0, 0x0 }, - { 0x1b, 0x0, 0x0, 0x0, 0x0 }, - { 0x1e, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 32 }, + { .songLengthId = 27 }, + { .songLengthId = 30 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1, 0x0, 0x0, 0x0, 0x0 }, - { 0x1b, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 1 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x4, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 4 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - NULL_BARD_SOUND + { .songLengthId = 44 }, + { .songLengthId = 17 }, + { .songLengthId = 12 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 0 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x8, 0x0, 0x0, 0x0, 0x0 }, - { 0x5, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 42 }, + { .songLengthId = 8 }, + { .songLengthId = 5 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x18, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 12 }, + { .songLengthId = 24 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x21, 0x0, 0x0, 0x0, 0x0 }, - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 33 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x3, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 39 }, + { .songLengthId = 15 }, + { .songLengthId = 3 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 48 }, + { .songLengthId = 12 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x26, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 42 }, + { .songLengthId = 38 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x21, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 33 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x15, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 17 }, + { .songLengthId = 21 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x15, 0x0, 0x0, 0x0, 0x0 }, - { 0x21, 0x0, 0x0, 0x0, 0x0 }, - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 21 }, + { .songLengthId = 33 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0x24, 0x0, 0x0, 0x0, 0x0 }, - { 0x5, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 6 }, + { .songLengthId = 36 }, + { .songLengthId = 5 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x6, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 42 }, + { .songLengthId = 48 }, + { .songLengthId = 6 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x15, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x6, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 15 }, + { .songLengthId = 21 }, + { .songLengthId = 12 }, + { .songLengthId = 6 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x3, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 12 }, + { .songLengthId = 3 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x27, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 9 }, + { .songLengthId = 39 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x17, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 23 }, + { .songLengthId = 48 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x21, 0x0, 0x0, 0x0, 0x0 }, - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 33 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 9 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 12 }, + { .songLengthId = 42 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 20 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x15, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 3 }, + { .songLengthId = 21 }, + { .songLengthId = 12 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x18, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 9 }, + { .songLengthId = 24 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x1b, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 1 }, + { .songLengthId = 44 }, + { .songLengthId = 27 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 6 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x4, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 6 }, + { .songLengthId = 48 }, + { .songLengthId = 4 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x7, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 7 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2d, 0x0, 0x0, 0x0, 0x0 }, - { 0x7, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 45 }, + { .songLengthId = 7 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 39 }, + { .songLengthId = 17 }, + { .songLengthId = 12 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 20 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x1b, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 27 }, + { .songLengthId = 48 }, + { .songLengthId = 17 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 44 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2d, 0x0, 0x0, 0x0, 0x0 }, - { 0x21, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 45 }, + { .songLengthId = 33 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x2b, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 43 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND } }; diff --git a/src/data/bard_music/time.h b/src/data/bard_music/time.h index 5755353a0..1f7dac8a6 100644 --- a/src/data/bard_music/time.h +++ b/src/data/bard_music/time.h @@ -2,364 +2,364 @@ #define GUARD_DATA_BARD_MUSIC_TIME_H const struct BardSound gBardSounds_Time[][6] = { { - { 0x1b, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x1c, 0x0, 0x0, 0x0, 0x0 }, - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 28 }, + { .songLengthId = 26 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 2 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 20 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1b, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 27 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 9 }, + { .songLengthId = 44 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x5, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 11 }, + { .songLengthId = 50 }, + { .songLengthId = 5 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 5 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 48 }, + { .songLengthId = 12 }, + { .songLengthId = 50 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 42 }, + { .songLengthId = 44 }, + { .songLengthId = 50 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 20 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 15 }, + { .songLengthId = 17 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xa, 0x0, 0x0, 0x0, 0x0 }, - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 10 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x28, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 40 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x17, 0x0, 0x0, 0x0, 0x0 }, - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 23 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1d, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 29 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x21, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 33 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x24, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 36 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x5, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 48 }, + { .songLengthId = 5 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 15 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 5 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 15 }, + { .songLengthId = 50 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 5 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0xa, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 10 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1b, 0x0, 0x0, 0x0, 0x0 }, - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 27 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 48 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 20 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 20 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND } }; diff --git a/src/data/bard_music/trainer.h b/src/data/bard_music/trainer.h index a59689b6c..05fc6a6ef 100644 --- a/src/data/bard_music/trainer.h +++ b/src/data/bard_music/trainer.h @@ -2,220 +2,220 @@ #define GUARD_DATA_BARD_MUSIC_TRAINER_H const struct BardSound gBardSounds_Trainer[][6] = { { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x2d, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 39 }, + { .songLengthId = 45 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x15, 0x0, 0x0, 0x0, 0x0 }, - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 21 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x32, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 18 }, + { .songLengthId = 50 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x1b, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 27 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x6, 0x0, 0x0, 0x0, 0x0 } + { .songLengthId = 9 }, + { .songLengthId = 18 }, + { .songLengthId = 24 }, + { .songLengthId = 12 }, + { .songLengthId = 12 }, + { .songLengthId = 6 }, }, { - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 3 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x8, 0x0, 0x0, 0x0, 0x0 }, - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 } + { .songLengthId = 9 }, + { .songLengthId = 8 }, + { .songLengthId = 6 }, + { .songLengthId = 17 }, + { .songLengthId = 17 }, + { .songLengthId = 12 }, }, { - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 3 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x32, 0x0, 0x0, 0x0, 0x0 }, - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 50 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x0, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 12 }, + { .songLengthId = 0 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x1b, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 12 }, + { .songLengthId = 27 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 12 }, + { .songLengthId = 9 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 15 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x6, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 48 }, + { .songLengthId = 6 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND } }; diff --git a/src/data/bard_music/trendysaying.h b/src/data/bard_music/trendysaying.h index 4830725ad..ccd9083ea 100644 --- a/src/data/bard_music/trendysaying.h +++ b/src/data/bard_music/trendysaying.h @@ -2,268 +2,268 @@ #define GUARD_DATA_BARD_MUSIC_TRENDYSAYING_H const struct BardSound gBardSounds_TrendySaying[][6] = { { - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x2, 0x0, 0x0, 0x0, 0x0 }, - { 0x14, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 5 }, + { .songLengthId = 2 }, + { .songLengthId = 20 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 11 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1b, 0x0, 0x0, 0x0, 0x0 }, - { 0x1b, 0x0, 0x0, 0x0, 0x0 }, - { 0x17, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 27 }, + { .songLengthId = 27 }, + { .songLengthId = 23 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x26, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 38 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x12, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 44 }, + { .songLengthId = 18 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xd, 0x0, 0x0, 0x0, 0x0 }, - { 0x1d, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 13 }, + { .songLengthId = 29 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 5 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 17 }, + { .songLengthId = 3 }, + { .songLengthId = 26 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 11 }, + { .songLengthId = 17 }, + { .songLengthId = 14 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x0, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 0 }, + { .songLengthId = 44 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x1, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 1 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 5 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1d, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 29 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xa, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 10 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x3, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 3 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1d, 0x0, 0x0, 0x0, 0x0 }, - { 0x23, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 29 }, + { .songLengthId = 35 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x24, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 42 }, + { .songLengthId = 36 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 15 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1d, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 29 }, + { .songLengthId = 44 }, + { .songLengthId = 12 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 5 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 28 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2b, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 43 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 42 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND } }; diff --git a/src/data/bard_music/voices.h b/src/data/bard_music/voices.h index 868ebaecf..97f249ecb 100644 --- a/src/data/bard_music/voices.h +++ b/src/data/bard_music/voices.h @@ -2,508 +2,508 @@ #define GUARD_DATA_BARD_MUSIC_VOICES_H const struct BardSound gBardSounds_Voices[][6] = { { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, - NULL_BARD_SOUND + { .songLengthId = 12 }, + { .songLengthId = 48 }, + { .songLengthId = 51 }, + { .songLengthId = 12 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1b, 0x5, 0x8, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 27, .songLengthOffset = 0x5, .unused = 0x8 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - NULL_BARD_SOUND + { .songLengthId = 6 }, + { .songLengthId = 6 }, + { .songLengthId = 6 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x31, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 49 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x28, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 40 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x19, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 25 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1c, 0x0, 0x0, 0x0, 0x0 }, - { 0x31, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 28 }, + { .songLengthId = 49 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x23, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 35 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, - { 0x11, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 17 }, + { .songLengthId = 17 }, + { .songLengthId = 17 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xa, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 10 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x2, 0x0, 0x0, 0x0, 0x0 }, - { 0x24, 0x0, 0x0, 0x0, 0x0 }, - NULL_BARD_SOUND + { .songLengthId = 44 }, + { .songLengthId = 14 }, + { .songLengthId = 12 }, + { .songLengthId = 2 }, + { .songLengthId = 36 }, + NULL_BARD_SOUND, }, { - { 0x13, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 19 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 6 }, + { .songLengthId = 14 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x12, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 18 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 12 }, + { .songLengthId = 12 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1e, 0x0, 0x0, 0x0, 0x0 }, - { 0x1e, 0x0, 0x0, 0x0, 0x0 }, - { 0x1e, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 30 }, + { .songLengthId = 30 }, + { .songLengthId = 30 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x1, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 1 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x17, 0x0, 0x0, 0x0, 0x0 }, - { 0xb, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 23 }, + { .songLengthId = 11 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xd, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 13 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 6 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0x17, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 6 }, + { .songLengthId = 6 }, + { .songLengthId = 6 }, + { .songLengthId = 23 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x5, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 5 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 12 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 6 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0x6, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 6 }, + { .songLengthId = 6 }, + { .songLengthId = 6 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x13, 0x0, 0x0, 0x0, 0x0 }, - { 0xd, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 19 }, + { .songLengthId = 13 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0x7, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 7 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x27, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 39 }, + { .songLengthId = 39 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x18, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 26 }, + { .songLengthId = 24 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 26 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 42 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, - { 0xc, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 12 }, + { .songLengthId = 12 }, + { .songLengthId = 12 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x9, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 9 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x18, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 24 }, + { .songLengthId = 24 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x2a, 0x0, 0x0, 0x0, 0x0 }, - { 0x2c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 42 }, + { .songLengthId = 44 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0xe, 0x0, 0x0, 0x0, 0x0 }, - { 0x30, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 14 }, + { .songLengthId = 48 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x1c, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 28 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x27, 0x0, 0x0, 0x0, 0x0 }, - { 0x27, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 39 }, + { .songLengthId = 39 }, + { .songLengthId = 39 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0xf, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 15 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x4, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 4 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x18, 0x0, 0x0, 0x0, 0x0 }, - { 0x4, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 24 }, + { .songLengthId = 4 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0x6, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 6 }, + { .songLengthId = 6 }, + { .songLengthId = 6 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x4, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 4 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x7, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 7 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x22, 0x0, 0x0, 0x0, 0x0 }, - { 0xd, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 34 }, + { .songLengthId = 13 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x7, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, - { 0x33, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 7 }, + { .songLengthId = 51 }, + { .songLengthId = 51 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND }, { - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0x6, 0x0, 0x0, 0x0, 0x0 }, - { 0x6, 0x0, 0x0, 0x0, 0x0 }, + { .songLengthId = 6 }, + { .songLengthId = 6 }, + { .songLengthId = 6 }, + { .songLengthId = 6 }, + NULL_BARD_SOUND, NULL_BARD_SOUND, - NULL_BARD_SOUND } }; diff --git a/src/data/bard_music/word_pitch.h b/src/data/bard_music/word_pitch.h index 35527017c..7b4205da5 100644 --- a/src/data/bard_music/word_pitch.h +++ b/src/data/bard_music/word_pitch.h @@ -3,184 +3,52 @@ #define PITCH_END 0x1800 -static const s16 sPitch1_0[] = { - -0x300, PITCH_END -}; - -static const s16 sPitch1_1[] = { - 0x0900, PITCH_END -}; - -static const s16 sPitch1_2[] = { - 0x0100, PITCH_END -}; - -static const s16 sPitch1_3[] = { - 0x0400, PITCH_END -}; - -static const s16 sPitch1_4[] = { - 0x0b00, PITCH_END -}; - -static const s16 sPitch2_0[] = { - -0x300, -0x100, PITCH_END -}; - -static const s16 sPitch2_1[] = { - -0x300, 0x0200, PITCH_END -}; - -static const s16 sPitch2_2[] = { - 0x0200, 0x0400, PITCH_END -}; - -static const s16 sPitch2_3[] = { - 0x0600, 0x0800, PITCH_END -}; - -static const s16 sPitch2_4[] = { - 0x0900, 0x0800, PITCH_END -}; - -static const s16 sPitch3_0[] = { - -0x300, -0x100, -0x300, PITCH_END -}; - -static const s16 sPitch3_1[] = { - 0x0400, -0x300, 0x0400, PITCH_END -}; - -static const s16 sPitch3_2[] = { - 0x0900, 0x0800, 0x0600, PITCH_END -}; - -static const s16 sPitch3_3[] = { - 0x0100, 0x0200, 0x0400, PITCH_END -}; - -static const s16 sPitch3_4[] = { - 0x0600, 0x1000, 0x0d00, PITCH_END -}; - -static const s16 sPitch4_0[] = { - 0x0400, 0x0900, 0x0400, 0x0900, PITCH_END -}; - -static const s16 sPitch4_1[] = { - 0x0900, 0x0400, 0x0d00, 0x0400, PITCH_END -}; - -static const s16 sPitch4_2[] = { - 0x0100, 0x0200, 0x0400, 0x0600, PITCH_END -}; - -static const s16 sPitch4_3[] = { - 0x0800, 0x0600, 0x0400, 0x0200, PITCH_END -}; - -static const s16 sPitch4_4[] = { - 0x0f00, 0x0d00, 0x0b00, 0x0a00, PITCH_END -}; - -static const s16 sPitch5_0[] = { - -0x300, -0x100, 0x0100, 0x0200, 0x0400, PITCH_END -}; - -static const s16 sPitch5_1[] = { - 0x0900, 0x0800, 0x0600, 0x0400, 0x0200, PITCH_END -}; - -static const s16 sPitch5_2[] = { - 0x0100, 0x0400, 0x0900, 0x0400, 0x0100, PITCH_END -}; - -static const s16 sPitch5_3[] = { - 0x0900, 0x0400, 0x0900, 0x0400, -0x300, PITCH_END -}; - -static const s16 sPitch5_4[] = { - 0x0b00, 0x0800, 0x0400, 0x0400, 0x0600, PITCH_END -}; - -static const s16 sPitch6_0[] = { - -0x300, -0x100, 0x0100, 0x0200, 0x0400, 0x0600, PITCH_END -}; - -static const s16 sPitch6_1[] = { - 0x0800, 0x0600, 0x0400, 0x0200, 0x0100, -0x100, PITCH_END -}; - -static const s16 sPitch6_2[] = { - 0x0100, 0x0200, 0x0400, 0x0100, 0x0200, 0x1000, PITCH_END -}; - -static const s16 sPitch6_3[] = { - 0x0400, -0x300, 0x0900, 0x0400, 0x0900, 0x0400, PITCH_END -}; - -static const s16 sPitch6_4[] = { - 0x0800, 0x0900, 0x0800, 0x0900, 0x0800, 0x0900, PITCH_END -}; - -static const s16 sPitch7_0[] = { - 0x0200, 0x0100, 0x0200, 0x0100, 0x0200, 0x0400, 0x0200, PITCH_END -}; - -static const s16 sPitch7_1[] = { - 0x0100, 0x0100, -0x100, -0x100, -0x300, 0x0400, -0x300, PITCH_END -}; - -static const s16 sPitch7_2[] = { - 0x0800, 0x0900, 0x0b00, 0x0d00, 0x0e00, 0x0d00, 0x0b00, PITCH_END -}; - -static const s16 sPitch7_3[] = { - 0x0800, 0x0600, 0x0400, 0x0200, 0x0d00, 0x0b00, 0x0900, PITCH_END -}; - -static const s16 sPitch7_4[] = { - 0x0300, 0x0400, 0x0600, 0x0800, 0x0700, 0x0800, 0x0400, PITCH_END -}; +static const s16 sPitch1_0[] = { -0x300, PITCH_END }; +static const s16 sPitch1_1[] = { 0x0900, PITCH_END }; +static const s16 sPitch1_2[] = { 0x0100, PITCH_END }; +static const s16 sPitch1_3[] = { 0x0400, PITCH_END }; +static const s16 sPitch1_4[] = { 0x0b00, PITCH_END }; +static const s16 sPitch2_0[] = { -0x300, -0x100, PITCH_END }; +static const s16 sPitch2_1[] = { -0x300, 0x0200, PITCH_END }; +static const s16 sPitch2_2[] = { 0x0200, 0x0400, PITCH_END }; +static const s16 sPitch2_3[] = { 0x0600, 0x0800, PITCH_END }; +static const s16 sPitch2_4[] = { 0x0900, 0x0800, PITCH_END }; +static const s16 sPitch3_0[] = { -0x300, -0x100, -0x300, PITCH_END }; +static const s16 sPitch3_1[] = { 0x0400, -0x300, 0x0400, PITCH_END }; +static const s16 sPitch3_2[] = { 0x0900, 0x0800, 0x0600, PITCH_END }; +static const s16 sPitch3_3[] = { 0x0100, 0x0200, 0x0400, PITCH_END }; +static const s16 sPitch3_4[] = { 0x0600, 0x1000, 0x0d00, PITCH_END }; +static const s16 sPitch4_0[] = { 0x0400, 0x0900, 0x0400, 0x0900, PITCH_END }; +static const s16 sPitch4_1[] = { 0x0900, 0x0400, 0x0d00, 0x0400, PITCH_END }; +static const s16 sPitch4_2[] = { 0x0100, 0x0200, 0x0400, 0x0600, PITCH_END }; +static const s16 sPitch4_3[] = { 0x0800, 0x0600, 0x0400, 0x0200, PITCH_END }; +static const s16 sPitch4_4[] = { 0x0f00, 0x0d00, 0x0b00, 0x0a00, PITCH_END }; +static const s16 sPitch5_0[] = { -0x300, -0x100, 0x0100, 0x0200, 0x0400, PITCH_END }; +static const s16 sPitch5_1[] = { 0x0900, 0x0800, 0x0600, 0x0400, 0x0200, PITCH_END }; +static const s16 sPitch5_2[] = { 0x0100, 0x0400, 0x0900, 0x0400, 0x0100, PITCH_END }; +static const s16 sPitch5_3[] = { 0x0900, 0x0400, 0x0900, 0x0400, -0x300, PITCH_END }; +static const s16 sPitch5_4[] = { 0x0b00, 0x0800, 0x0400, 0x0400, 0x0600, PITCH_END }; +static const s16 sPitch6_0[] = { -0x300, -0x100, 0x0100, 0x0200, 0x0400, 0x0600, PITCH_END }; +static const s16 sPitch6_1[] = { 0x0800, 0x0600, 0x0400, 0x0200, 0x0100, -0x100, PITCH_END }; +static const s16 sPitch6_2[] = { 0x0100, 0x0200, 0x0400, 0x0100, 0x0200, 0x1000, PITCH_END }; +static const s16 sPitch6_3[] = { 0x0400, -0x300, 0x0900, 0x0400, 0x0900, 0x0400, PITCH_END }; +static const s16 sPitch6_4[] = { 0x0800, 0x0900, 0x0800, 0x0900, 0x0800, 0x0900, PITCH_END }; +static const s16 sPitch7_0[] = { 0x0200, 0x0100, 0x0200, 0x0100, 0x0200, 0x0400, 0x0200, PITCH_END }; +static const s16 sPitch7_1[] = { 0x0100, 0x0100, -0x100, -0x100, -0x300, 0x0400, -0x300, PITCH_END }; +static const s16 sPitch7_2[] = { 0x0800, 0x0900, 0x0b00, 0x0d00, 0x0e00, 0x0d00, 0x0b00, PITCH_END }; +static const s16 sPitch7_3[] = { 0x0800, 0x0600, 0x0400, 0x0200, 0x0d00, 0x0b00, 0x0900, PITCH_END }; +static const s16 sPitch7_4[] = { 0x0300, 0x0400, 0x0600, 0x0800, 0x0700, 0x0800, 0x0400, PITCH_END }; // Only sPitch7_# are used below // This table is always indexed with (x + 30), where x is some value 0 - 4 static const s16 *const sBardSoundPitchTables[] = { - sPitch1_0, - sPitch1_1, - sPitch1_2, - sPitch1_3, - sPitch1_4, - sPitch2_0, - sPitch2_1, - sPitch2_2, - sPitch2_3, - sPitch2_4, - sPitch3_0, - sPitch3_1, - sPitch3_2, - sPitch3_3, - sPitch3_4, - sPitch4_0, - sPitch4_1, - sPitch4_2, - sPitch4_3, - sPitch4_4, - sPitch5_0, - sPitch5_1, - sPitch5_2, - sPitch5_3, - sPitch5_4, - sPitch6_0, - sPitch6_1, - sPitch6_2, - sPitch6_3, - sPitch6_4, - sPitch7_0, - sPitch7_1, - sPitch7_2, - sPitch7_3, - sPitch7_4 + sPitch1_0, sPitch1_1, sPitch1_2, sPitch1_3, sPitch1_4, + sPitch2_0, sPitch2_1, sPitch2_2, sPitch2_3, sPitch2_4, + sPitch3_0, sPitch3_1, sPitch3_2, sPitch3_3, sPitch3_4, + sPitch4_0, sPitch4_1, sPitch4_2, sPitch4_3, sPitch4_4, + sPitch5_0, sPitch5_1, sPitch5_2, sPitch5_3, sPitch5_4, + sPitch6_0, sPitch6_1, sPitch6_2, sPitch6_3, sPitch6_4, + sPitch7_0, sPitch7_1, sPitch7_2, sPitch7_3, sPitch7_4 }; diff --git a/src/data/battle_moves.h b/src/data/battle_moves.h index 0c5467ba8..9f0027765 100644 --- a/src/data/battle_moves.h +++ b/src/data/battle_moves.h @@ -1868,7 +1868,9 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = [MOVE_RECOVER] = { - #if B_UPDATED_MOVE_DATA >= GEN_4 + #if B_UPDATED_MOVE_DATA >= GEN_9 + .pp = 5, + #elif B_UPDATED_MOVE_DATA >= GEN_4 .pp = 10, #else .pp = 20, @@ -2401,11 +2403,15 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = [MOVE_SOFT_BOILED] = { + #if B_UPDATED_MOVE_DATA >= GEN_9 + .pp = 5, + #else + .pp = 10, + #endif .effect = EFFECT_SOFTBOILED, .power = 0, .type = TYPE_NORMAL, .accuracy = 100, - .pp = 10, .secondaryEffectChance = 0, .target = MOVE_TARGET_USER, .priority = 0, @@ -2798,11 +2804,15 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = [MOVE_REST] = { + #if B_UPDATED_MOVE_DATA >= GEN_9 + .pp = 5, + #else + .pp = 10, + #endif .effect = EFFECT_REST, .power = 0, .type = TYPE_PSYCHIC, .accuracy = 0, - .pp = 10, .secondaryEffectChance = 0, .target = MOVE_TARGET_USER, .priority = 0, @@ -3759,11 +3769,15 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = [MOVE_MILK_DRINK] = { + #if B_UPDATED_MOVE_DATA >= GEN_9 + .pp = 5, + #else + .pp = 10, + #endif .effect = EFFECT_SOFTBOILED, .power = 0, .type = TYPE_NORMAL, .accuracy = 0, - .pp = 10, .secondaryEffectChance = 0, .target = MOVE_TARGET_USER, .priority = 0, @@ -5452,11 +5466,15 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = [MOVE_SLACK_OFF] = { + #if B_UPDATED_MOVE_DATA >= GEN_9 + .pp = 5, + #else + .pp = 10, + #endif .effect = EFFECT_RESTORE_HP, .power = 0, .type = TYPE_NORMAL, .accuracy = 100, - .pp = 10, .secondaryEffectChance = 0, .target = MOVE_TARGET_USER, .priority = 0, @@ -6403,11 +6421,15 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = [MOVE_ROOST] = { + #if B_UPDATED_MOVE_DATA >= GEN_9 + .pp = 5, + #else + .pp = 10, + #endif .effect = EFFECT_ROOST, .power = 0, .type = TYPE_FLYING, .accuracy = 0, - .pp = 10, .secondaryEffectChance = 0, .target = MOVE_TARGET_USER, .priority = 0, @@ -8339,7 +8361,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = #else .accuracy = 80, #endif - .effect = EFFECT_SLEEP, + .effect = EFFECT_DARK_VOID, .power = 0, .type = TYPE_DARK, .pp = 10, @@ -11009,11 +11031,15 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = [MOVE_SHORE_UP] = { + #if B_UPDATED_MOVE_DATA >= GEN_9 + .pp = 5, + #else + .pp = 10, + #endif .effect = EFFECT_SHORE_UP, .power = 0, .type = TYPE_GROUND, .accuracy = 0, - .pp = 10, .secondaryEffectChance = 0, .target = MOVE_TARGET_USER, .priority = 0, @@ -12849,8 +12875,12 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = [MOVE_GRASSY_GLIDE] = { + #if B_UPDATED_MOVE_DATA >= GEN_9 + .power = 60, + #else + .power = 70, + #endif .effect = EFFECT_GRASSY_GLIDE, - .power = 70, .type = TYPE_GRASS, .accuracy = 100, .pp = 20, @@ -13072,8 +13102,12 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = [MOVE_WICKED_BLOW] = { + #if B_UPDATED_MOVE_DATA >= GEN_9 + .power = 75, + #else + .power = 80, + #endif .effect = EFFECT_ALWAYS_CRIT, - .power = 80, .type = TYPE_DARK, .accuracy = 100, .pp = 5, @@ -13184,8 +13218,12 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = [MOVE_GLACIAL_LANCE] = { + #if B_UPDATED_MOVE_DATA >= GEN_9 + .power = 120, + #else + .power = 130, + #endif .effect = EFFECT_HIT, - .power = 130, .type = TYPE_ICE, .accuracy = 100, .pp = 5, @@ -13232,15 +13270,19 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = [MOVE_DIRE_CLAW] = { + #if B_UPDATED_MOVE_DATA >= GEN_9 + .power = 80, + #else + .power = 60, + #endif .effect = EFFECT_PLACEHOLDER, // EFFECT_DIRE_CLAW, - .power = 60, .type = TYPE_POISON, .accuracy = 100, .pp = 15, .secondaryEffectChance = 0, .target = MOVE_TARGET_SELECTED, .priority = 0, - .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED | FLAG_SHEER_FORCE_BOOST, .split = SPLIT_PHYSICAL, .zMovePower = 120, .zMoveEffect = Z_EFFECT_NONE, @@ -13248,15 +13290,15 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = [MOVE_PSYSHIELD_BASH] = { - .effect = EFFECT_PLACEHOLDER, // EFFECT_PSYSHIELD_BASH, + .effect = EFFECT_DEFENSE_UP_HIT, .power = 70, .type = TYPE_PSYCHIC, - .accuracy = 90, + .accuracy = 100, .pp = 10, - .secondaryEffectChance = 50, // TODO: Adjust this value. Currently it's set to Fiery Dance's. + .secondaryEffectChance = 100, .target = MOVE_TARGET_SELECTED, .priority = 0, - .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED | FLAG_SHEER_FORCE_BOOST, .split = SPLIT_PHYSICAL, .zMovePower = 140, .zMoveEffect = Z_EFFECT_NONE, @@ -13264,7 +13306,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = [MOVE_POWER_SHIFT] = { - .effect = EFFECT_PLACEHOLDER, // EFFECT_POWER_SHIFT, + .effect = EFFECT_POWER_TRICK, .power = 0, .type = TYPE_NORMAL, .accuracy = 0, @@ -13288,7 +13330,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = .secondaryEffectChance = 0, .target = MOVE_TARGET_USER, .priority = 0, - .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED | FLAG_SHEER_FORCE_BOOST, .split = SPLIT_PHYSICAL, .zMovePower = 120, .zMoveEffect = Z_EFFECT_NONE, @@ -13296,15 +13338,19 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = [MOVE_SPRINGTIDE_STORM] = { - .effect = EFFECT_PLACEHOLDER, // EFFECT_SPRINGTIDE_STORM, - .power = 95, + #if B_UPDATED_MOVE_DATA >= GEN_9 + .power = 100, + #else + .power = 95, + #endif + .effect = EFFECT_ATTACK_DOWN_HIT, .type = TYPE_FAIRY, .accuracy = 80, .pp = 5, .secondaryEffectChance = 30, .target = MOVE_TARGET_SELECTED, .priority = 0, - .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_SHEER_FORCE_BOOST, .split = SPLIT_SPECIAL, .zMovePower = 175, .zMoveEffect = Z_EFFECT_NONE, @@ -13312,7 +13358,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = [MOVE_MYSTICAL_POWER] = { - .effect = EFFECT_PLACEHOLDER, // EFFECT_MYSTICAL_POWER, + .effect = EFFECT_SPECIAL_ATTACK_UP_HIT, .power = 70, .type = TYPE_PSYCHIC, .accuracy = 90, @@ -13320,7 +13366,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = .secondaryEffectChance = 100, .target = MOVE_TARGET_SELECTED, .priority = 0, - .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED | FLAG_SHEER_FORCE_BOOST, .split = SPLIT_SPECIAL, .zMovePower = 140, .zMoveEffect = Z_EFFECT_NONE, @@ -13328,13 +13374,17 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = [MOVE_RAGING_FURY] = { - .effect = EFFECT_PLACEHOLDER, // EFFECT_RAGING_FURY, - .power = 90, + #if B_UPDATED_MOVE_DATA >= GEN_9 + .power = 120, + #else + .power = 90, + #endif + .effect = EFFECT_RAMPAGE, .type = TYPE_FIRE, - .accuracy = 85, + .accuracy = 100, .pp = 10, - .secondaryEffectChance = 100, - .target = MOVE_TARGET_SELECTED, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_RANDOM, .priority = 0, .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, .split = SPLIT_PHYSICAL, @@ -13344,8 +13394,12 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = [MOVE_WAVE_CRASH] = { - .effect = EFFECT_RECOIL_33, // TODO: Legends: Arceus mechanics. - .power = 75, + #if B_UPDATED_MOVE_DATA >= GEN_9 + .power = 120, + #else + .power = 75, + #endif + .effect = EFFECT_RECOIL_33, .type = TYPE_WATER, .accuracy = 100, .pp = 10, @@ -13360,12 +13414,16 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = [MOVE_CHLOROBLAST] = { - .effect = EFFECT_PLACEHOLDER, // EFFECT_CHLOROBLAST, - .power = 120, + #if B_UPDATED_MOVE_DATA >= GEN_9 + .power = 150, + #else + .power = 120, + #endif + .effect = EFFECT_RECOIL_50, .type = TYPE_GRASS, .accuracy = 95, .pp = 5, - .secondaryEffectChance = 100, + .secondaryEffectChance = 0, .target = MOVE_TARGET_SELECTED, .priority = 0, .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, @@ -13376,15 +13434,15 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = [MOVE_MOUNTAIN_GALE] = { - .effect = EFFECT_PLACEHOLDER, // EFFECT_ACTION_SPEED_DOWN_HIT, + .effect = EFFECT_FLINCH_HIT, .power = 100, .type = TYPE_ICE, .accuracy = 85, .pp = 5, - .secondaryEffectChance = 100, + .secondaryEffectChance = 30, .target = MOVE_TARGET_SELECTED, .priority = 0, - .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED | FLAG_SHEER_FORCE_BOOST, .split = SPLIT_PHYSICAL, .zMovePower = 180, .zMoveEffect = Z_EFFECT_NONE, @@ -13392,7 +13450,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = [MOVE_VICTORY_DANCE] = { - .effect = EFFECT_PLACEHOLDER, // EFFECT_VICTORY_DANCE, + .effect = EFFECT_VICTORY_DANCE, .power = 0, .type = TYPE_FIGHTING, .accuracy = 0, @@ -13408,15 +13466,19 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = [MOVE_HEADLONG_RUSH] = { - .effect = EFFECT_PLACEHOLDER, // EFFECT_HEADLONG_RUSH, - .power = 100, + #if B_UPDATED_MOVE_DATA >= GEN_9 + .power = 120, + #else + .power = 100, + #endif + .effect = EFFECT_CLOSE_COMBAT, .type = TYPE_GROUND, .accuracy = 100, .pp = 5, - .secondaryEffectChance = 100, + .secondaryEffectChance = 0, .target = MOVE_TARGET_SELECTED, .priority = 0, - .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED | FLAG_IRON_FIST_BOOST, .split = SPLIT_PHYSICAL, .zMovePower = 180, .zMoveEffect = Z_EFFECT_NONE, @@ -13432,7 +13494,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = .secondaryEffectChance = 0, .target = MOVE_TARGET_SELECTED, .priority = 0, - .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED | FLAG_SHEER_FORCE_BOOST, .split = SPLIT_PHYSICAL, .zMovePower = 120, .zMoveEffect = Z_EFFECT_NONE, @@ -13440,15 +13502,19 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = [MOVE_ESPER_WING] = { - .effect = EFFECT_PLACEHOLDER, // EFFECT_ESPER_WING, - .power = 75, + #if B_UPDATED_MOVE_DATA >= GEN_9 + .power = 80, + #else + .power = 75, + #endif + .effect = EFFECT_SPEED_UP_HIT, .type = TYPE_PSYCHIC, .accuracy = 90, .pp = 10, - .secondaryEffectChance = 0, + .secondaryEffectChance = 100, .target = MOVE_TARGET_SELECTED, .priority = 0, - .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED | FLAG_HIGH_CRIT | FLAG_SHEER_FORCE_BOOST, .split = SPLIT_SPECIAL, .zMovePower = 140, .zMoveEffect = Z_EFFECT_NONE, @@ -13456,15 +13522,19 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = [MOVE_BITTER_MALICE] = { - .effect = EFFECT_PLACEHOLDER, // EFFECT_ESPER_WING, - .power = 60, + #if B_UPDATED_MOVE_DATA >= GEN_9 + .power = 75, + #else + .power = 60, + #endif + .effect = EFFECT_ATTACK_DOWN_HIT, .type = TYPE_GHOST, .accuracy = 100, .pp = 15, - .secondaryEffectChance = 0, + .secondaryEffectChance = 100, .target = MOVE_TARGET_SELECTED, .priority = 0, - .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED | FLAG_SHEER_FORCE_BOOST, .split = SPLIT_SPECIAL, .zMovePower = 120, .zMoveEffect = Z_EFFECT_NONE, @@ -13472,7 +13542,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = [MOVE_SHELTER] = { - .effect = EFFECT_PLACEHOLDER, // EFFECT_SHELTER, + .effect = EFFECT_DEFENSE_UP_2, .power = 0, .type = TYPE_STEEL, .accuracy = 0, @@ -13480,7 +13550,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = .secondaryEffectChance = 100, .target = MOVE_TARGET_USER, .priority = 0, - .flags = 0, + .flags = FLAG_SNATCH_AFFECTED, .split = SPLIT_STATUS, .zMovePower = 100, .zMoveEffect = Z_EFFECT_NONE, @@ -13488,15 +13558,19 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = [MOVE_TRIPLE_ARROWS] = { + #if B_UPDATED_MOVE_DATA >= GEN_9 + .power = 90, + #else + .power = 50, + #endif .effect = EFFECT_PLACEHOLDER, // EFFECT_TRIPLE_ARROWS, - .power = 50, .type = TYPE_FIGHTING, .accuracy = 100, .pp = 15, .secondaryEffectChance = 100, .target = MOVE_TARGET_SELECTED, .priority = 0, - .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED | FLAG_SHEER_FORCE_BOOST, .split = SPLIT_PHYSICAL, .zMovePower = 100, .zMoveEffect = Z_EFFECT_NONE, @@ -13512,7 +13586,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = .secondaryEffectChance = 0, .target = MOVE_TARGET_SELECTED, .priority = 0, - .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED | FLAG_SHEER_FORCE_BOOST, .split = SPLIT_SPECIAL, .zMovePower = 120, .zMoveEffect = Z_EFFECT_NONE, @@ -13528,7 +13602,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = .secondaryEffectChance = 0, .target = MOVE_TARGET_SELECTED, .priority = 0, - .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED | FLAG_SHEER_FORCE_BOOST, .split = SPLIT_PHYSICAL, .zMovePower = 120, .zMoveEffect = Z_EFFECT_NONE, @@ -13536,15 +13610,20 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = [MOVE_BLEAKWIND_STORM] = { - .effect = EFFECT_PLACEHOLDER, // EFFECT_BLEAKWIND_STORM, - .power = 95, + #if B_UPDATED_MOVE_DATA >= GEN_9 + .power = 100, + .pp = 10, + #else + .power = 95, + .pp = 5, + #endif + .effect = EFFECT_SPEED_DOWN_HIT, .type = TYPE_FLYING, .accuracy = 80, - .pp = 5, - .secondaryEffectChance = 0, + .secondaryEffectChance = 30, .target = MOVE_TARGET_SELECTED, .priority = 0, - .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED | FLAG_SHEER_FORCE_BOOST, .split = SPLIT_SPECIAL, .zMovePower = 175, .zMoveEffect = Z_EFFECT_NONE, @@ -13552,15 +13631,20 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = [MOVE_WILDBOLT_STORM] = { - .effect = EFFECT_PLACEHOLDER, // EFFECT_WILDBOLT_STORM, - .power = 95, + #if B_UPDATED_MOVE_DATA >= GEN_9 + .power = 100, + .pp = 10, + #else + .power = 95, + .pp = 5, + #endif + .effect = EFFECT_PARALYZE_HIT, .type = TYPE_ELECTRIC, .accuracy = 80, - .pp = 5, - .secondaryEffectChance = 0, + .secondaryEffectChance = 20, .target = MOVE_TARGET_SELECTED, .priority = 0, - .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED | FLAG_SHEER_FORCE_BOOST, .split = SPLIT_SPECIAL, .zMovePower = 175, .zMoveEffect = Z_EFFECT_NONE, @@ -13568,15 +13652,20 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = [MOVE_SANDSEAR_STORM] = { - .effect = EFFECT_PLACEHOLDER, // EFFECT_SANDSEAR_STORM, - .power = 95, + #if B_UPDATED_MOVE_DATA >= GEN_9 + .power = 100, + .pp = 10, + #else + .power = 95, + .pp = 5, + #endif + .effect = EFFECT_BURN_HIT, .type = TYPE_GROUND, .accuracy = 80, - .pp = 5, - .secondaryEffectChance = 0, + .secondaryEffectChance = 20, .target = MOVE_TARGET_SELECTED, .priority = 0, - .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED | FLAG_SHEER_FORCE_BOOST, .split = SPLIT_SPECIAL, .zMovePower = 175, .zMoveEffect = Z_EFFECT_NONE, @@ -13614,6 +13703,790 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = .zMoveEffect = Z_EFFECT_NONE, }, + [MOVE_TERA_BLAST] = + { + .effect = EFFECT_PLACEHOLDER, // EFFECT_TERA_BLAST, + .power = 80, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, + .split = SPLIT_SPECIAL, + .zMovePower = 160, + .zMoveEffect = Z_EFFECT_NONE, + }, + + [MOVE_SILK_TRAP] = + { + .effect = EFFECT_PLACEHOLDER, // EFFECT_PROTECT with extra checks + .power = 0, + .type = TYPE_BUG, + .accuracy = 0, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_USER, + .priority = 4, + .flags = FLAG_PROTECTION_MOVE, + .split = SPLIT_STATUS, + .zMovePower = 0, + .zMoveEffect = Z_EFFECT_NONE + }, + + [MOVE_AXE_KICK] = + { + .effect = EFFECT_PLACEHOLDER, // EFFECT_RECOIL_IF_MISS + 30% chance to confuse + .power = 120, + .type = TYPE_FIGHTING, + .accuracy = 90, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED | FLAG_SHEER_FORCE_BOOST, + .split = SPLIT_PHYSICAL, + .zMovePower = 190, + .zMoveEffect = Z_EFFECT_NONE + }, + + [MOVE_LAST_RESPECTS] = + { + .effect = EFFECT_PLACEHOLDER, // EFFECT_LAST_RESPECTS + .power = 50, + .type = TYPE_GHOST, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, + .split = SPLIT_PHYSICAL, + .zMovePower = 100, + .zMoveEffect = Z_EFFECT_NONE + }, + + [MOVE_LUMINA_CRASH] = + { + .effect = EFFECT_SPECIAL_DEFENSE_DOWN_HIT_2, + .power = 80, + .type = TYPE_PSYCHIC, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 100, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED | FLAG_SHEER_FORCE_BOOST, + .split = SPLIT_SPECIAL, + .zMovePower = 160, + .zMoveEffect = Z_EFFECT_NONE + }, + + [MOVE_ORDER_UP] = + { + .effect = EFFECT_PLACEHOLDER, // EFFECT_ORDER_UP + .power = 80, + .type = TYPE_DRAGON, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED | FLAG_SHEER_FORCE_BOOST, + .split = SPLIT_PHYSICAL, + .zMovePower = 160, + .zMoveEffect = Z_EFFECT_NONE + }, + + [MOVE_JET_PUNCH] = + { + .effect = EFFECT_HIT, + .power = 60, + .type = TYPE_WATER, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 1, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED | FLAG_IRON_FIST_BOOST | FLAG_SHEER_FORCE_BOOST, + .split = SPLIT_PHYSICAL, + .zMovePower = 120, + .zMoveEffect = Z_EFFECT_NONE, + // The datamine master sheet mentions uncopiable by Metronome but that sounds odd? not yet implemented + }, + + [MOVE_SPICY_EXTRACT] = + { + .effect = EFFECT_PLACEHOLDER, // EFFECT_SPICY_EXTRACT + .power = 0, + .type = TYPE_GRASS, + .accuracy = 0, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGIC_COAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + .split = SPLIT_STATUS, + .zMovePower = 0, + .zMoveEffect = Z_EFFECT_NONE, + // The datamine master sheet mentions uncopiable by Metronome but that sounds odd? not yet implemented + }, + + [MOVE_SPIN_OUT] = + { + .effect = EFFECT_PLACEHOLDER, // EFFECT_SPIN_OUT + .power = 100, + .type = TYPE_STEEL, + .accuracy = 100, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, + .split = SPLIT_PHYSICAL, + .zMovePower = 180, + .zMoveEffect = Z_EFFECT_NONE + }, + + [MOVE_POPULATION_BOMB] = + { + .effect = EFFECT_PLACEHOLDER, // EFFECT_MULTI_HIT maybe? + .power = 20, + .type = TYPE_NORMAL, + .accuracy = 90, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, // | FLAG_SLICING_MOVE, + .split = SPLIT_PHYSICAL, + .zMovePower = 40, + .zMoveEffect = Z_EFFECT_NONE, + //Supposedly uncallable by Metronome? (if so, needs implementation) + }, + + [MOVE_ICE_SPINNER] = + { + .effect = EFFECT_DAMAGE_SET_TERRAIN, + .power = 80, + .type = TYPE_ICE, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, + .split = SPLIT_PHYSICAL, + .zMovePower = 160, + .zMoveEffect = Z_EFFECT_NONE, + .argument = 1, //remove terrain + }, + + [MOVE_GLAIVE_RUSH] = + { + .effect = EFFECT_PLACEHOLDER, // EFFECT_GLAIVE_RUSH + .power = 120, + .type = TYPE_DRAGON, + .accuracy = 100, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, + .split = SPLIT_PHYSICAL, + .zMovePower = 190, + .zMoveEffect = Z_EFFECT_NONE + }, + + [MOVE_REVIVAL_BLESSING] = + { + .effect = EFFECT_PLACEHOLDER, // EFFECT_REVIVAL_BLESSING + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 1, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_USER, + .priority = 0, + .flags = 0, + .split = SPLIT_STATUS, + .zMovePower = 0, + .zMoveEffect = Z_EFFECT_NONE, + // Uncallable by Metronome (to be implemented) + }, + + [MOVE_SALT_CURE] = + { + .effect = EFFECT_PLACEHOLDER, // EFFECT_SALT_CURE + .power = 40, + .type = TYPE_ROCK, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED | FLAG_SHEER_FORCE_BOOST, + .split = SPLIT_PHYSICAL, + .zMovePower = 80, + .zMoveEffect = Z_EFFECT_NONE, + // Supposedly uncallable by Metronome, but dubious + }, + + [MOVE_TRIPLE_DIVE] = + { + .effect = EFFECT_TRIPLE_KICK, + .power = 30, + .type = TYPE_WATER, + .accuracy = 95, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, + .split = SPLIT_PHYSICAL, + .zMovePower = 100, + .zMoveEffect = Z_EFFECT_NONE, + }, + + [MOVE_MORTAL_SPIN] = + { + .effect = EFFECT_PLACEHOLDER, // EFFECT_MORTAL_SPIN + .power = 30, + .type = TYPE_POISON, + .accuracy = 100, + .pp = 15, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_BOTH, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED | FLAG_SHEER_FORCE_BOOST, + .split = SPLIT_PHYSICAL, + .zMovePower = 60, + .zMoveEffect = Z_EFFECT_NONE + }, + + [MOVE_DOODLE] = + { + .effect = EFFECT_PLACEHOLDER, // EFFECT_DOODLE + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_FOES_AND_ALLY, // Supposedly unconfirmed? + .priority = 0, + .flags = 0, // TO VERIFY + .split = SPLIT_STATUS, + .zMovePower = 0, + .zMoveEffect = Z_EFFECT_NONE, + // Supposedly uncallable by Metronome (unimplemented) + }, + + [MOVE_FILLET_AWAY] = + { + .effect = EFFECT_PLACEHOLDER, // EFFECT_FILLET_AWAY + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_USER, + .priority = 0, + .flags = FLAG_SNATCH_AFFECTED, + .split = SPLIT_STATUS, + .zMovePower = 0, + .zMoveEffect = Z_EFFECT_RECOVER_HP, + // Supposedly uncallable by Metronome (unimplemented) + }, + + [MOVE_KOWTOW_CLEAVE] = + { + .effect = EFFECT_HIT, + .power = 85, + .type = TYPE_DARK, + .accuracy = 0, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, // | FLAG_SLICING_MOVE, + .split = SPLIT_PHYSICAL, + .zMovePower = 160, + .zMoveEffect = Z_EFFECT_NONE, + }, + + [MOVE_FLOWER_TRICK] = + { + .effect = EFFECT_ALWAYS_CRIT, + .power = 70, + .type = TYPE_GRASS, + .accuracy = 0, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, + .split = SPLIT_PHYSICAL, + .zMovePower = 140, + .zMoveEffect = Z_EFFECT_NONE, + }, + + [MOVE_TORCH_SONG] = + { + .effect = EFFECT_SP_ATTACK_UP_HIT, + .power = 80, + .type = TYPE_FIRE, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 100, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED | FLAG_SOUND | FLAG_SHEER_FORCE_BOOST, + .split = SPLIT_SPECIAL, + .zMovePower = 160, + .zMoveEffect = Z_EFFECT_NONE, + }, + + [MOVE_AQUA_STEP] = + { + .effect = EFFECT_SPEED_UP_HIT, + .power = 80, + .type = TYPE_WATER, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 100, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED | FLAG_DANCE | FLAG_SHEER_FORCE_BOOST, + .split = SPLIT_PHYSICAL, + .zMovePower = 160, + .zMoveEffect = Z_EFFECT_NONE, + }, + + [MOVE_RAGING_BULL] = + { + .effect = EFFECT_PLACEHOLDER, // EFFECT_RAGING_BULL + .power = 90, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, // TO VERIFY + .split = SPLIT_PHYSICAL, + .zMovePower = 175, + .zMoveEffect = Z_EFFECT_NONE, + // Uncallable by Metronome (to be implemented) + }, + + [MOVE_MAKE_IT_RAIN] = + { + .effect = EFFECT_PLACEHOLDER, // EFFECT_MAKE_IT_RAIN + .power = 120, + .type = TYPE_STEEL, + .accuracy = 100, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_BOTH, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, + .split = SPLIT_SPECIAL, + .zMovePower = 190, + .zMoveEffect = Z_EFFECT_NONE, + // Uncallable by Metronome (to be implemented) + }, + + [MOVE_RUINATION] = + { + .effect = EFFECT_SUPER_FANG, + .power = 1, + .type = TYPE_DARK, + .accuracy = 90, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, + .split = SPLIT_SPECIAL, + .zMovePower = 100, + .zMoveEffect = Z_EFFECT_NONE, + // Uncallable by Metronome (to be implemented) + }, + + [MOVE_COLLISION_COURSE] = + { + .effect = EFFECT_PLACEHOLDER, // EFFECT_COLLISION_COURSE + .power = 100, + .type = TYPE_FIGHTING, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, + .split = SPLIT_PHYSICAL, + .zMovePower = 180, + .zMoveEffect = Z_EFFECT_NONE, + // Uncallable by Metronome (to be implemented) + }, + + [MOVE_ELECTRO_DRIFT] = + { + .effect = EFFECT_PLACEHOLDER, // EFFECT_COLLISION_COURSE + .power = 100, + .type = TYPE_ELECTRIC, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, + .split = SPLIT_SPECIAL, + .zMovePower = 180, + .zMoveEffect = Z_EFFECT_NONE, + // Uncallable by Metronome (to be implemented) + }, + + [MOVE_SHED_TAIL] = + { + .effect = EFFECT_PLACEHOLDER, // EFFECT_SHED_TAIL + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_USER, + .priority = 0, + .flags = 0, + .split = SPLIT_STATUS, + .zMovePower = 0, + .zMoveEffect = Z_EFFECT_RESET_STATS, + // Uncallable by Metronome (to be implemented) + }, + + [MOVE_CHILLY_RECEPTION] = + { + .effect = EFFECT_PLACEHOLDER, // EFFECT_CHILLY_RECEPTION + .power = 0, + .type = TYPE_ICE, + .accuracy = 0, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_ALL_BATTLERS, + .priority = 0, + .flags = 0, + .split = SPLIT_STATUS, + .zMovePower = 0, + .zMoveEffect = Z_EFFECT_SPD_UP_1, + // Supposedly uncallable by Metronome? (to be implemented) + }, + + [MOVE_TIDY_UP] = + { + .effect = EFFECT_PLACEHOLDER, // EFFECT_TIDY_UP + .power = 0, + .type = TYPE_NORMAL, + .accuracy = 0, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_USER, + .priority = 0, + .flags = 0, + .split = SPLIT_STATUS, + .zMovePower = 0, + .zMoveEffect = Z_EFFECT_NONE, + // Supposedly uncallable by Metronome? (to be implemented) + }, + + [MOVE_SNOWSCAPE] = + { + .effect = EFFECT_HAIL, + .power = 0, + .type = TYPE_ICE, + .accuracy = 0, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_ALL_BATTLERS, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED, + .split = SPLIT_STATUS, + .zMovePower = 0, + .zMoveEffect = Z_EFFECT_SPD_UP_1, + // Currently an exact copy of Hail until we figure out what to do with it + }, + + [MOVE_POUNCE] = + { + .effect = EFFECT_SPEED_DOWN_HIT, + .power = 50, + .type = TYPE_BUG, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 100, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, + .split = SPLIT_PHYSICAL, + .zMovePower = 100, + .zMoveEffect = Z_EFFECT_NONE, + }, + + [MOVE_TRAILBLAZE] = + { + .effect = EFFECT_SPEED_UP_HIT, + .power = 50, + .type = TYPE_GRASS, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 100, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, + .split = SPLIT_PHYSICAL, + .zMovePower = 100, + .zMoveEffect = Z_EFFECT_NONE, + }, + + [MOVE_CHILLING_WATER] = + { + .effect = EFFECT_ATTACK_DOWN_HIT, + .power = 50, + .type = TYPE_WATER, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 100, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, + .split = SPLIT_SPECIAL, + .zMovePower = 100, + .zMoveEffect = Z_EFFECT_NONE, + }, + + [MOVE_HYPER_DRILL] = + { + .effect = EFFECT_HIT, + .power = 100, + .type = TYPE_NORMAL, + .accuracy = 100, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, + .split = SPLIT_PHYSICAL, + .zMovePower = 180, + .zMoveEffect = Z_EFFECT_NONE, + }, + + [MOVE_TWIN_BEAM] = + { + .effect = EFFECT_HIT, + .power = 40, + .type = TYPE_PSYCHIC, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_TWO_STRIKES, + .split = SPLIT_SPECIAL, + .zMovePower = 100, + .zMoveEffect = Z_EFFECT_NONE, + }, + + [MOVE_RAGE_FIST] = + { + .effect = EFFECT_PLACEHOLDER, // EFFECT_RAGE_FIST + .power = 50, + .type = TYPE_GHOST, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_IRON_FIST_BOOST | FLAG_KINGS_ROCK_AFFECTED, + .split = SPLIT_PHYSICAL, + .zMovePower = 100, + .zMoveEffect = Z_EFFECT_NONE, + }, + + [MOVE_ARMOR_CANNON] = + { + .effect = EFFECT_CLOSE_COMBAT, + .power = 120, + .type = TYPE_FIRE, + .accuracy = 100, + .pp = 5, + .secondaryEffectChance = 100, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, + .split = SPLIT_SPECIAL, + .zMovePower = 190, + .zMoveEffect = Z_EFFECT_NONE, + }, + + [MOVE_BITTER_BLADE] = + { + .effect = EFFECT_ABSORB, + .power = 90, + .type = TYPE_FIRE, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, // | FLAG_SLICING_MOVE, + .split = SPLIT_PHYSICAL, + .zMovePower = 160, + .zMoveEffect = Z_EFFECT_NONE, + }, + + [MOVE_DOUBLE_SHOCK] = + { + .effect = EFFECT_DOUBLE_SHOCK, + .power = 120, + .type = TYPE_ELECTRIC, + .accuracy = 100, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, + .split = SPLIT_PHYSICAL, + .zMovePower = 190, + .zMoveEffect = Z_EFFECT_NONE + }, + + [MOVE_GIGATON_HAMMER] = + { + .effect = EFFECT_PLACEHOLDER, // EFFECT_GIGATON_HAMMER + .power = 160, + .type = TYPE_STEEL, + .accuracy = 100, + .pp = 5, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, + .split = SPLIT_PHYSICAL, + .zMovePower = 200, + .zMoveEffect = Z_EFFECT_NONE, + }, + + [MOVE_COMEUPPANCE] = + { + .effect = EFFECT_METAL_BURST, + .power = 0, + .type = TYPE_DARK, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_DEPENDS, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED, + .split = SPLIT_PHYSICAL, + .zMoveEffect = Z_EFFECT_NONE, + }, + + [MOVE_AQUA_CUTTER] = + { + .effect = EFFECT_HIT, + .power = 70, + .type = TYPE_WATER, + .accuracy = 100, + .pp = 20, + .secondaryEffectChance = 0, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED | FLAG_HIGH_CRIT, // | FLAG_SLICING_MOVE, + .split = SPLIT_PHYSICAL, + .zMovePower = 140, + .zMoveEffect = Z_EFFECT_NONE, + }, + + [MOVE_BLAZING_TORQUE] = + { + .effect = EFFECT_BURN_HIT, + .power = 80, + .type = TYPE_FIRE, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 30, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_SHEER_FORCE_BOOST, + .split = SPLIT_PHYSICAL, + .zMovePower = 160, + .zMoveEffect = Z_EFFECT_NONE + }, + + [MOVE_WICKED_TORQUE] = + { + .effect = EFFECT_SLEEP_HIT, + .power = 80, + .type = TYPE_DARK, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 10, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_SHEER_FORCE_BOOST, + .split = SPLIT_PHYSICAL, + .zMovePower = 160, + .zMoveEffect = Z_EFFECT_NONE + }, + + [MOVE_NOXIOUS_TORQUE] = + { + .effect = EFFECT_POISON_HIT, + .power = 100, + .type = TYPE_POISON, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 30, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_SHEER_FORCE_BOOST, + .split = SPLIT_PHYSICAL, + .zMovePower = 160, + .zMoveEffect = Z_EFFECT_NONE + }, + + [MOVE_COMBAT_TORQUE] = + { + .effect = EFFECT_PARALYZE_HIT, + .power = 100, + .type = TYPE_FIGHTING, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 30, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_SHEER_FORCE_BOOST, + .split = SPLIT_PHYSICAL, + .zMovePower = 160, + .zMoveEffect = Z_EFFECT_NONE + }, + + [MOVE_MAGICAL_TORQUE] = + { + .effect = EFFECT_CONFUSE_HIT, + .power = 100, + .type = TYPE_FAIRY, + .accuracy = 100, + .pp = 10, + .secondaryEffectChance = 30, + .target = MOVE_TARGET_SELECTED, + .priority = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_SHEER_FORCE_BOOST, + .split = SPLIT_PHYSICAL, + .zMovePower = 160, + .zMoveEffect = Z_EFFECT_NONE + }, + // Z-Moves [MOVE_BREAKNECK_BLITZ] = { diff --git a/src/data/contest_moves.h b/src/data/contest_moves.h index 244f0ddb2..2de44b348 100644 --- a/src/data/contest_moves.h +++ b/src/data/contest_moves.h @@ -5966,6 +5966,102 @@ const struct ContestMove gContestMoves[MOVES_COUNT] = [MOVE_LUNAR_BLESSING] = {0}, // TODO [MOVE_TAKE_HEART] = {0}, // TODO + + [MOVE_TERA_BLAST] = {0}, // TODO + + [MOVE_SILK_TRAP] = {0}, // TODO + + [MOVE_AXE_KICK] = {0}, // TODO + + [MOVE_LAST_RESPECTS] = {0}, // TODO + + [MOVE_LUMINA_CRASH] = {0}, // TODO + + [MOVE_ORDER_UP] = {0}, // TODO + + [MOVE_JET_PUNCH] = {0}, // TODO + + [MOVE_SPICY_EXTRACT] = {0}, // TODO + + [MOVE_SPIN_OUT] = {0}, // TODO + + [MOVE_POPULATION_BOMB] = {0}, // TODO + + [MOVE_ICE_SPINNER] = {0}, // TODO + + [MOVE_GLAIVE_RUSH] = {0}, // TODO + + [MOVE_REVIVAL_BLESSING] = {0}, // TODO + + [MOVE_SALT_CURE] = {0}, // TODO + + [MOVE_TRIPLE_DIVE] = {0}, // TODO + + [MOVE_MORTAL_SPIN] = {0}, // TODO + + [MOVE_DOODLE] = {0}, // TODO + + [MOVE_FILLET_AWAY] = {0}, // TODO + + [MOVE_KOWTOW_CLEAVE] = {0}, // TODO + + [MOVE_FLOWER_TRICK] = {0}, // TODO + + [MOVE_TORCH_SONG] = {0}, // TODO + + [MOVE_AQUA_STEP] = {0}, // TODO + + [MOVE_RAGING_BULL] = {0}, // TODO + + [MOVE_MAKE_IT_RAIN] = {0}, // TODO + + [MOVE_RUINATION] = {0}, // TODO + + [MOVE_COLLISION_COURSE] = {0}, // TODO + + [MOVE_ELECTRO_DRIFT] = {0}, // TODO + + [MOVE_SHED_TAIL] = {0}, // TODO + + [MOVE_CHILLY_RECEPTION] = {0}, // TODO + + [MOVE_TIDY_UP] = {0}, // TODO + + [MOVE_SNOWSCAPE] = {0}, // TODO + + [MOVE_POUNCE] = {0}, // TODO + + [MOVE_TRAILBLAZE] = {0}, // TODO + + [MOVE_CHILLING_WATER] = {0}, // TODO + + [MOVE_HYPER_DRILL] = {0}, // TODO + + [MOVE_TWIN_BEAM] = {0}, // TODO + + [MOVE_RAGE_FIST] = {0}, // TODO + + [MOVE_ARMOR_CANNON] = {0}, // TODO + + [MOVE_BITTER_BLADE] = {0}, // TODO + + [MOVE_DOUBLE_SHOCK] = {0}, // TODO + + [MOVE_GIGATON_HAMMER] = {0}, // TODO + + [MOVE_COMEUPPANCE] = {0}, // TODO + + [MOVE_AQUA_CUTTER] = {0}, // TODO + + [MOVE_BLAZING_TORQUE] = {0}, // TODO + + [MOVE_WICKED_TORQUE] = {0}, // TODO + + [MOVE_NOXIOUS_TORQUE] = {0}, // TODO + + [MOVE_COMBAT_TORQUE] = {0}, // TODO + + [MOVE_MAGICAL_TORQUE] = {0}, // TODO }; const struct ContestEffect gContestEffects[] = diff --git a/src/data/object_events/object_event_graphics_info.h b/src/data/object_events/object_event_graphics_info.h index ea424090a..146bb8730 100755 --- a/src/data/object_events/object_event_graphics_info.h +++ b/src/data/object_events/object_event_graphics_info.h @@ -1,245 +1,4654 @@ -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanNormal = {TAG_NONE, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 16, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_BrendanMayNormal, sPicTable_BrendanNormal, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanMachBike = {TAG_NONE, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_BrendanMachBike, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanAcroBike = {TAG_NONE, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_AcroBike, sPicTable_BrendanAcroBike, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanSurfing = {TAG_NONE, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Surfing, sPicTable_BrendanSurfing, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanFieldMove = {TAG_NONE, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_FieldMove, sPicTable_BrendanFieldMove, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_QuintyPlump = {TAG_NONE, OBJ_EVENT_PAL_TAG_QUINTY_PLUMP, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_L, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_QuintyPlump, sPicTable_QuintyPlump, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_NinjaBoy = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_NinjaBoy, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Twin = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Twin, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy1 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Boy1, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl1 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Girl1, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy2 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Boy2, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl2 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Girl2, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LittleBoy = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_LittleBoy, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LittleGirl = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_LittleGirl, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy3 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Boy3, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl3 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Girl3, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RichBoy = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_RichBoy, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman1 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Woman1, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_FatMan = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_FatMan, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PokefanF = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_PokefanF, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man1 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Man1, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman2 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Woman2, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ExpertM = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_ExpertM, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ExpertF = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_ExpertF, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man2 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Man2, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman3 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Woman3, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PokefanM = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_PokefanM, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman4 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Woman4, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Cook = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Cook, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkReceptionist = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_LinkReceptionist, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_OldMan = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_OldMan, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_OldWoman = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_OldWoman, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Camper = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Camper, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Picnicker = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Picnicker, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man3 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Man3, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman5 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Woman5, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Youngster = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Youngster, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BugCatcher = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_BugCatcher, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PsychicM = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_PsychicM, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SchoolKidM = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_SchoolKidM, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Maniac = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Maniac, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HexManiac = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_HexManiac, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RayquazaStill = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 2048, 64, 64, 4, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_64x64, sOamTables_64x64, sAnimTable_Standard, sPicTable_RayquazaStill, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwimmerM = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_SwimmerM, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwimmerF = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_SwimmerF, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BlackBelt = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_BlackBelt, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Beauty = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Beauty, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scientist1 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Scientist1, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lass = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Lass, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Gentleman = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Gentleman, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sailor = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Sailor, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Fisherman = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Fisherman, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RunningTriathleteM = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_RunningTriathleteM, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RunningTriathleteF = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_RunningTriathleteF, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberF = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_TuberF, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberM = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_TuberM, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Hiker = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Hiker, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyclingTriathleteM = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_AcroBike, sPicTable_CyclingTriathleteM, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyclingTriathleteF = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_AcroBike, sPicTable_CyclingTriathleteF, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Nurse = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Nurse, sPicTable_Nurse, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ItemBall = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_ItemBall, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTree = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, NULL, sAnimTable_BerryTree, sPicTable_PechaBerryTree, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTreeEarlyStages = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_BerryTree, sPicTable_PechaBerryTree, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTreeLateStages = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_BerryTree, sPicTable_PechaBerryTree, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ProfBirch = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_ProfBirch, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man4 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Man4, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man5 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Man5, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ReporterM = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_ReporterM, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ReporterF = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_ReporterF, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Bard = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MauvilleOldMan1, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Hipster = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MauvilleOldMan1, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Trader = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MauvilleOldMan1, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Storyteller = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MauvilleOldMan2, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Giddy = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MauvilleOldMan2, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMauvilleOldMan1 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MauvilleOldMan2, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMauvilleOldMan2 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MauvilleOldMan2, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedNatuDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_UnusedNatuDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMagnemiteDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_UnusedMagnemiteDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedSquirtleDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_UnusedSquirtleDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedWooperDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_UnusedWooperDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedPikachuDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_UnusedPikachuDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedPorygon2Doll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_UnusedPorygon2Doll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CuttableTree = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_CuttableTree, sPicTable_CuttableTree, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MartEmployee = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MartEmployee, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RooftopSaleWoman = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_RooftopSaleWoman, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Teala = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Teala, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BreakableRock = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_BreakableRock, sPicTable_BreakableRock, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PushableBoulder = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_PushableBoulder, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MrBrineysBoat = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_MrBrineysBoat, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayNormal = {TAG_NONE, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 16, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_BrendanMayNormal, sPicTable_MayNormal, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayMachBike = {TAG_NONE, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_MayMachBike, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayAcroBike = {TAG_NONE, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_AcroBike, sPicTable_MayAcroBike, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MaySurfing = {TAG_NONE, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Surfing, sPicTable_MaySurfing, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayFieldMove = {TAG_NONE, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_FieldMove, sPicTable_MayFieldMove, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Truck = {TAG_NONE, OBJ_EVENT_PAL_TAG_TRUCK, OBJ_EVENT_PAL_TAG_NONE, 1152, 48, 48, 10, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_48x48, sAnimTable_Inanimate, sPicTable_Truck, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_VigorothCarryingBox = {TAG_NONE, OBJ_EVENT_PAL_TAG_VIGOROTH, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_VigorothCarryingBox, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_VigorothFacingAway = {TAG_NONE, OBJ_EVENT_PAL_TAG_VIGOROTH, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_VigorothFacingAway, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BirchsBag = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_BirchsBag, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_EnemyZigzagoon = {TAG_NONE, OBJ_EVENT_PAL_TAG_ZIGZAGOON, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_EnemyZigzagoon, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Poochyena = {TAG_NONE, OBJ_EVENT_PAL_TAG_POOCHYENA, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_Poochyena, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Artist = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Artist, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanNormal = {TAG_NONE, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_BrendanMayNormal, sPicTable_BrendanNormal, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanMachBike = {TAG_NONE, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_BrendanMachBike, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanAcroBike = {TAG_NONE, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_AcroBike, sPicTable_BrendanAcroBike, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanSurfing = {TAG_NONE, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Surfing, sPicTable_BrendanSurfing, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanFieldMove = {TAG_NONE, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_FieldMove, sPicTable_BrendanFieldMove, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayNormal = {TAG_NONE, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_BrendanMayNormal, sPicTable_MayNormal, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayMachBike = {TAG_NONE, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_MayMachBike, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayAcroBike = {TAG_NONE, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_BIKE_TIRE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_AcroBike, sPicTable_MayAcroBike, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMaySurfing = {TAG_NONE, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Surfing, sPicTable_MaySurfing, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayFieldMove = {TAG_NONE, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_FieldMove, sPicTable_MayFieldMove, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Cameraman = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Cameraman, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanUnderwater = {TAG_NONE, OBJ_EVENT_PAL_TAG_PLAYER_UNDERWATER, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_BrendanUnderwater, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayUnderwater = {TAG_NONE, OBJ_EVENT_PAL_TAG_PLAYER_UNDERWATER, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_MayUnderwater, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MovingBox = {TAG_NONE, OBJ_EVENT_PAL_TAG_MOVING_BOX, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 10, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_MovingBox, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CableCar = {TAG_NONE, OBJ_EVENT_PAL_TAG_CABLE_CAR, OBJ_EVENT_PAL_TAG_NONE, 2048, 64, 64, 10, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_64x64, sOamTables_64x64, sAnimTable_Inanimate, sPicTable_CableCar, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scientist2 = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Scientist2, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DevonEmployee = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_DevonEmployee, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AquaMemberM = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_AquaMemberM, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AquaMemberF = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_AquaMemberF, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MagmaMemberM = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MagmaMemberM, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MagmaMemberF = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MagmaMemberF, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sidney = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Sidney, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Phoebe = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Phoebe, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Glacia = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Glacia, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Drake = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Drake, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Roxanne = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Roxanne, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Brawly = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Brawly, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wattson = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Wattson, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Flannery = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Flannery, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Norman = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Norman, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Winona = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Winona, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Liza = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Liza, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Tate = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Tate, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wallace = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Wallace, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Steven = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Steven, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wally = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Wally, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireLittleBoy = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_RubySapphireLittleBoy, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanFishing = {TAG_NONE, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Fishing, sPicTable_BrendanFishing, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayFishing = {TAG_NONE, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Fishing, sPicTable_MayFishing, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HotSpringsOldWoman = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_HotSpringsOldWoman, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SSTidal = {TAG_NONE, OBJ_EVENT_PAL_TAG_SSTIDAL, OBJ_EVENT_PAL_TAG_NONE, 1920, 96, 40, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_8x8, sOamTables_96x40, sAnimTable_Standard, sPicTable_SSTidal, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SubmarineShadow = {TAG_NONE, OBJ_EVENT_PAL_TAG_SUBMARINE_SHADOW, OBJ_EVENT_PAL_TAG_NONE, 1408, 88, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_8x8, sOamTables_88x32, sAnimTable_Standard, sPicTable_SubmarineShadow, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PichuDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_PichuDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PikachuDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_PikachuDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MarillDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_MarillDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TogepiDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_TogepiDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyndaquilDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_CyndaquilDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ChikoritaDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_ChikoritaDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TotodileDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_TotodileDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_JigglypuffDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_JigglypuffDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MeowthDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_MeowthDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ClefairyDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_ClefairyDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DittoDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_DittoDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SmoochumDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_SmoochumDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TreeckoDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_TreeckoDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TorchicDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_TorchicDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MudkipDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_MudkipDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DuskullDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_DuskullDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_WynautDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_WynautDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BaltoyDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_BaltoyDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KecleonDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_KecleonDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AzurillDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_AzurillDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SkittyDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_SkittyDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwabluDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_SwabluDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GulpinDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_GulpinDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LotadDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_LotadDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SeedotDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_SeedotDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PikaCushion = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_PikaCushion, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RoundCushion = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_RoundCushion, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KissCushion = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_KissCushion, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ZigzagCushion = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_ZigzagCushion, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SpinCushion = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_SpinCushion, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DiamondCushion = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_DiamondCushion, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BallCushion = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_BallCushion, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GrassCushion = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_GrassCushion, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_FireCushion = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_FireCushion, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_WaterCushion = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_WaterCushion, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigSnorlaxDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigSnorlaxDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRhydonDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigRhydonDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigLaprasDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 2, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigLaprasDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigVenusaurDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigVenusaurDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigCharizardDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 3, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigCharizardDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigBlastoiseDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 2, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigBlastoiseDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigWailmerDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigWailmerDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegirockDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 2, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigRegirockDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegiceDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigRegiceDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegisteelDoll = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BigRegisteelDoll, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Latias = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_LatiasLatios, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Latios = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_LatiasLatios, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GameboyKid = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_GameboyKid, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ContestJudge = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_ContestJudge, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanWatering = {TAG_NONE, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_BrendanWatering, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayWatering = {TAG_NONE, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_MayWatering, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanDecorating = {TAG_NONE, OBJ_EVENT_PAL_TAG_BRENDAN, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 256, 16, 32, 10, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Inanimate, sPicTable_BrendanDecorating, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayDecorating = {TAG_NONE, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 256, 16, 32, 10, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Inanimate, sPicTable_MayDecorating, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Archie = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Archie, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Maxie = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Maxie, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreFront = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_KyogreFront, sAffineAnimTable_KyogreGroudon}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonFront = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_GroudonFront, sAffineAnimTable_KyogreGroudon}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreSide = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_KyogreSide, sAffineAnimTable_KyogreGroudon}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonSide = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_GroudonSide, sPicTable_GroudonSide, sAffineAnimTable_KyogreGroudon}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Fossil = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Inanimate, sPicTable_Fossil, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Regirock = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 3, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_Regi, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Regice = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 4, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_Regi, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Registeel = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_Regi, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Skitty = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Skitty, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kecleon = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Kecleon, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreAsleep = {TAG_NONE, OBJ_EVENT_PAL_TAG_KYOGRE, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_KyogreFront, sAffineAnimTable_KyogreGroudon}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonAsleep = {TAG_NONE, OBJ_EVENT_PAL_TAG_GROUDON, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_GroudonFront, sAffineAnimTable_KyogreGroudon}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Rayquaza = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 2048, 64, 64, 4, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gObjectEventBaseOam_64x64, sOamTables_64x64, sAnimTable_Rayquaza, sPicTable_Rayquaza, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Zigzagoon = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Zigzagoon, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Pikachu = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Pikachu, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Azumarill = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Azumarill, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wingull = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Wingull, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KecleonBridgeShadow = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 128, 16, 16, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Kecleon, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberMSwimming = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_2, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_TuberMSwimming, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Azurill = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x16, sOamTables_16x16, sAnimTable_Standard, sPicTable_Azurill, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Mom = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Mom, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkBrendan = {TAG_NONE, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_BrendanMayNormal, sPicTable_BrendanNormal, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkMay = {TAG_NONE, OBJ_EVENT_PAL_TAG_MAY, OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_BrendanMayNormal, sPicTable_MayNormal, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Juan = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Juan, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scott = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Scott, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MysteryEventDeliveryman = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_MysteryEventDeliveryman, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Statue = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Inanimate, sPicTable_Statue, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kirlia = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_S, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Kirlia, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Dusclops = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Dusclops, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnionRoomAttendant = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_UnionRoomAttendant, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Red = {TAG_NONE, OBJ_EVENT_PAL_TAG_RED_LEAF, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Red, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Leaf = {TAG_NONE, OBJ_EVENT_PAL_TAG_RED_LEAF, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Leaf, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sudowoodo = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Sudowoodo, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Mew = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Mew, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Deoxys = {TAG_NONE, OBJ_EVENT_PAL_TAG_DEOXYS, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_Deoxys, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BirthIslandStone = {TAG_NONE, OBJ_EVENT_PAL_TAG_BIRTH_ISLAND_STONE, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Inanimate, sPicTable_BirthIslandStone, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Anabel = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Anabel, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Tucker = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Tucker, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Greta = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Greta, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Spenser = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_1, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Spenser, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Noland = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Noland, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lucy = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_4, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Lucy, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Brandon = {TAG_NONE, OBJ_EVENT_PAL_TAG_NPC_3, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_Brandon, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireBrendan = {TAG_NONE, OBJ_EVENT_PAL_TAG_RS_BRENDAN, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_RubySapphireBrendan, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireMay = {TAG_NONE, OBJ_EVENT_PAL_TAG_RS_MAY, OBJ_EVENT_PAL_TAG_NONE, 256, 16, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_16x32, sOamTables_16x32, sAnimTable_Standard, sPicTable_RubySapphireMay, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lugia = {TAG_NONE, OBJ_EVENT_PAL_TAG_LUGIA, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_Standard, sPicTable_Lugia, gDummySpriteAffineAnimTable}; -const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HoOh = {TAG_NONE, OBJ_EVENT_PAL_TAG_HO_OH, OBJ_EVENT_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gObjectEventBaseOam_32x32, sOamTables_32x32, sAnimTable_HoOh, sPicTable_HoOh, gDummySpriteAffineAnimTable}; +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanNormal = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_BRENDAN, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, + .size = 512, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_PLAYER, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_BrendanMayNormal, + .images = sPicTable_BrendanNormal, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanMachBike = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_BRENDAN, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_PLAYER, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_BIKE_TIRE, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Standard, + .images = sPicTable_BrendanMachBike, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanAcroBike = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_BRENDAN, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_PLAYER, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_BIKE_TIRE, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_AcroBike, + .images = sPicTable_BrendanAcroBike, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanSurfing = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_BRENDAN, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_PLAYER, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = TRUE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Surfing, + .images = sPicTable_BrendanSurfing, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanFieldMove = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_BRENDAN, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_PLAYER, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_FieldMove, + .images = sPicTable_BrendanFieldMove, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_QuintyPlump = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_QUINTY_PLUMP, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_L, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_QuintyPlump, + .images = sPicTable_QuintyPlump, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_NinjaBoy = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Standard, + .images = sPicTable_NinjaBoy, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Twin = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Twin, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy1 = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Boy1, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl1 = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Girl1, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy2 = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Boy2, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl2 = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Girl2, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LittleBoy = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Standard, + .images = sPicTable_LittleBoy, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LittleGirl = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Standard, + .images = sPicTable_LittleGirl, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy3 = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Boy3, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl3 = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Girl3, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RichBoy = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_RichBoy, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman1 = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Woman1, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_FatMan = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_FatMan, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PokefanF = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_PokefanF, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man1 = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Man1, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman2 = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Woman2, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ExpertM = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_ExpertM, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ExpertF = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_ExpertF, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man2 = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Man2, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman3 = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Woman3, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PokefanM = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_PokefanM, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman4 = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Woman4, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Cook = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Cook, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkReceptionist = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_LinkReceptionist, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_OldMan = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_OldMan, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_OldWoman = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_OldWoman, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Camper = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Camper, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Picnicker = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Picnicker, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man3 = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Man3, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman5 = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Woman5, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Youngster = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Youngster, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BugCatcher = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_BugCatcher, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PsychicM = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_PsychicM, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SchoolKidM = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_SchoolKidM, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Maniac = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Maniac, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HexManiac = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_HexManiac, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RayquazaStill = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 2048, + .width = 64, + .height = 64, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = TRUE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_64x64, + .subspriteTables = sOamTables_64x64, + .anims = sAnimTable_Standard, + .images = sPicTable_RayquazaStill, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwimmerM = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_SwimmerM, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwimmerF = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_SwimmerF, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BlackBelt = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_BlackBelt, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Beauty = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Beauty, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scientist1 = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Scientist1, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lass = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Lass, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Gentleman = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Gentleman, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sailor = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Sailor, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Fisherman = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Fisherman, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RunningTriathleteM = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_RunningTriathleteM, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RunningTriathleteF = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_RunningTriathleteF, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberF = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Standard, + .images = sPicTable_TuberF, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberM = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Standard, + .images = sPicTable_TuberM, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Hiker = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Hiker, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyclingTriathleteM = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_BIKE_TIRE, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_AcroBike, + .images = sPicTable_CyclingTriathleteM, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyclingTriathleteF = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_BIKE_TIRE, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_AcroBike, + .images = sPicTable_CyclingTriathleteF, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Nurse = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Nurse, + .images = sPicTable_Nurse, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ItemBall = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_ItemBall, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTree = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = NULL, + .anims = sAnimTable_BerryTree, + .images = sPicTable_PechaBerryTree, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTreeEarlyStages = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_BerryTree, + .images = sPicTable_PechaBerryTree, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTreeLateStages = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_BerryTree, + .images = sPicTable_PechaBerryTree, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ProfBirch = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_ProfBirch, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man4 = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Man4, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man5 = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Man5, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ReporterM = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_ReporterM, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ReporterF = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_ReporterF, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Bard = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_MauvilleOldMan1, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Hipster = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_MauvilleOldMan1, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Trader = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_MauvilleOldMan1, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Storyteller = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_MauvilleOldMan2, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Giddy = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_MauvilleOldMan2, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMauvilleOldMan1 = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_MauvilleOldMan2, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMauvilleOldMan2 = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_MauvilleOldMan2, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedNatuDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_UnusedNatuDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMagnemiteDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_UnusedMagnemiteDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedSquirtleDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_UnusedSquirtleDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedWooperDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_UnusedWooperDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedPikachuDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_UnusedPikachuDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedPorygon2Doll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_UnusedPorygon2Doll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CuttableTree = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_CuttableTree, + .images = sPicTable_CuttableTree, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MartEmployee = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_MartEmployee, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RooftopSaleWoman = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_RooftopSaleWoman, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Teala = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Teala, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BreakableRock = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_BreakableRock, + .images = sPicTable_BreakableRock, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PushableBoulder = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_PushableBoulder, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MrBrineysBoat = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Standard, + .images = sPicTable_MrBrineysBoat, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayNormal = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_MAY, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, + .size = 512, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_PLAYER, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_BrendanMayNormal, + .images = sPicTable_MayNormal, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayMachBike = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_MAY, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_PLAYER, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_BIKE_TIRE, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Standard, + .images = sPicTable_MayMachBike, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayAcroBike = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_MAY, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_PLAYER, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_BIKE_TIRE, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_AcroBike, + .images = sPicTable_MayAcroBike, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MaySurfing = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_MAY, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_PLAYER, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = TRUE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Surfing, + .images = sPicTable_MaySurfing, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayFieldMove = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_MAY, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_PLAYER, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_FieldMove, + .images = sPicTable_MayFieldMove, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Truck = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_TRUCK, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 1152, + .width = 48, + .height = 48, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_M, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_48x48, + .anims = sAnimTable_Inanimate, + .images = sPicTable_Truck, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_VigorothCarryingBox = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_VIGOROTH, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Standard, + .images = sPicTable_VigorothCarryingBox, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_VigorothFacingAway = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_VIGOROTH, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Standard, + .images = sPicTable_VigorothFacingAway, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BirchsBag = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_BirchsBag, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_EnemyZigzagoon = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_ZIGZAGOON, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Standard, + .images = sPicTable_EnemyZigzagoon, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Poochyena = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_POOCHYENA, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Poochyena, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Artist = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Artist, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanNormal = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_BRENDAN, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_BrendanMayNormal, + .images = sPicTable_BrendanNormal, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanMachBike = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_BRENDAN, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_BIKE_TIRE, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Standard, + .images = sPicTable_BrendanMachBike, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanAcroBike = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_BRENDAN, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_BIKE_TIRE, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_AcroBike, + .images = sPicTable_BrendanAcroBike, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanSurfing = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_BRENDAN, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = TRUE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Surfing, + .images = sPicTable_BrendanSurfing, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanFieldMove = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_BRENDAN, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_FieldMove, + .images = sPicTable_BrendanFieldMove, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayNormal = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_MAY, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_BrendanMayNormal, + .images = sPicTable_MayNormal, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayMachBike = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_MAY, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_BIKE_TIRE, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Standard, + .images = sPicTable_MayMachBike, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayAcroBike = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_MAY, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_BIKE_TIRE, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_AcroBike, + .images = sPicTable_MayAcroBike, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMaySurfing = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_MAY, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = TRUE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Surfing, + .images = sPicTable_MaySurfing, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayFieldMove = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_MAY, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_FieldMove, + .images = sPicTable_MayFieldMove, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Cameraman = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Cameraman, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanUnderwater = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_PLAYER_UNDERWATER, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_PLAYER, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = TRUE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Standard, + .images = sPicTable_BrendanUnderwater, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayUnderwater = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_PLAYER_UNDERWATER, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = TRUE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Standard, + .images = sPicTable_MayUnderwater, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MovingBox = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_MOVING_BOX, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_MovingBox, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CableCar = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_CABLE_CAR, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 2048, + .width = 64, + .height = 64, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_M, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_64x64, + .subspriteTables = sOamTables_64x64, + .anims = sAnimTable_Inanimate, + .images = sPicTable_CableCar, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scientist2 = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Scientist2, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DevonEmployee = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_DevonEmployee, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AquaMemberM = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_AquaMemberM, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AquaMemberF = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_AquaMemberF, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MagmaMemberM = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_MagmaMemberM, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MagmaMemberF = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_MagmaMemberF, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sidney = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Sidney, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Phoebe = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Phoebe, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Glacia = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Glacia, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Drake = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Drake, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Roxanne = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Roxanne, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Brawly = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Brawly, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wattson = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Wattson, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Flannery = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Flannery, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Norman = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Norman, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Winona = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Winona, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Liza = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Liza, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Tate = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Tate, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wallace = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Wallace, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Steven = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Steven, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wally = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Wally, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireLittleBoy = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Standard, + .images = sPicTable_RubySapphireLittleBoy, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanFishing = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_BRENDAN, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_PLAYER, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Fishing, + .images = sPicTable_BrendanFishing, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayFishing = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_MAY, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_PLAYER, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Fishing, + .images = sPicTable_MayFishing, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HotSpringsOldWoman = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_HotSpringsOldWoman, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SSTidal = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_SSTIDAL, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 1920, + .width = 96, + .height = 40, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_8x8, + .subspriteTables = sOamTables_96x40, + .anims = sAnimTable_Standard, + .images = sPicTable_SSTidal, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SubmarineShadow = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_SUBMARINE_SHADOW, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 1408, + .width = 88, + .height = 32, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_8x8, + .subspriteTables = sOamTables_88x32, + .anims = sAnimTable_Standard, + .images = sPicTable_SubmarineShadow, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PichuDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_PichuDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PikachuDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_PikachuDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MarillDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_MarillDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TogepiDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_TogepiDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyndaquilDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_CyndaquilDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ChikoritaDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_ChikoritaDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TotodileDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_TotodileDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_JigglypuffDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_JigglypuffDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MeowthDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_MeowthDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ClefairyDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_ClefairyDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DittoDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_DittoDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SmoochumDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_SmoochumDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TreeckoDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_TreeckoDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TorchicDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_TorchicDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MudkipDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_MudkipDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DuskullDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_DuskullDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_WynautDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_WynautDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BaltoyDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_BaltoyDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KecleonDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_KecleonDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AzurillDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_AzurillDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SkittyDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_SkittyDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwabluDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_SwabluDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GulpinDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_GulpinDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LotadDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_LotadDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SeedotDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_SeedotDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PikaCushion = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_PikaCushion, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RoundCushion = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_RoundCushion, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KissCushion = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_KissCushion, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ZigzagCushion = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_ZigzagCushion, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SpinCushion = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_SpinCushion, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DiamondCushion = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_DiamondCushion, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BallCushion = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_BallCushion, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GrassCushion = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_GrassCushion, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_FireCushion = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_FireCushion, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_WaterCushion = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_WaterCushion, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigSnorlaxDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Inanimate, + .images = sPicTable_BigSnorlaxDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRhydonDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Inanimate, + .images = sPicTable_BigRhydonDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigLaprasDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Inanimate, + .images = sPicTable_BigLaprasDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigVenusaurDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Inanimate, + .images = sPicTable_BigVenusaurDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigCharizardDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_M, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Inanimate, + .images = sPicTable_BigCharizardDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigBlastoiseDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Inanimate, + .images = sPicTable_BigBlastoiseDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigWailmerDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Inanimate, + .images = sPicTable_BigWailmerDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegirockDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Inanimate, + .images = sPicTable_BigRegirockDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegiceDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Inanimate, + .images = sPicTable_BigRegiceDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegisteelDoll = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Inanimate, + .images = sPicTable_BigRegisteelDoll, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Latias = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Standard, + .images = sPicTable_LatiasLatios, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Latios = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Standard, + .images = sPicTable_LatiasLatios, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GameboyKid = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_GameboyKid, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ContestJudge = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_ContestJudge, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanWatering = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_BRENDAN, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_PLAYER, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Standard, + .images = sPicTable_BrendanWatering, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayWatering = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_MAY, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_PLAYER, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Standard, + .images = sPicTable_MayWatering, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanDecorating = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_BRENDAN, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_M, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Inanimate, + .images = sPicTable_BrendanDecorating, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayDecorating = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_MAY, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_M, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Inanimate, + .images = sPicTable_MayDecorating, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Archie = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Archie, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Maxie = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Maxie, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreFront = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Standard, + .images = sPicTable_KyogreFront, + .affineAnims = sAffineAnimTable_KyogreGroudon, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonFront = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Standard, + .images = sPicTable_GroudonFront, + .affineAnims = sAffineAnimTable_KyogreGroudon, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreSide = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Standard, + .images = sPicTable_KyogreSide, + .affineAnims = sAffineAnimTable_KyogreGroudon, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonSide = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_GroudonSide, + .images = sPicTable_GroudonSide, + .affineAnims = sAffineAnimTable_KyogreGroudon, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Fossil = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_S, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_NONE, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Inanimate, + .images = sPicTable_Fossil, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Regirock = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_M, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Regi, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Regice = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Regi, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Registeel = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Regi, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Skitty = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Standard, + .images = sPicTable_Skitty, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kecleon = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Standard, + .images = sPicTable_Kecleon, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreAsleep = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_KYOGRE, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Standard, + .images = sPicTable_KyogreFront, + .affineAnims = sAffineAnimTable_KyogreGroudon, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonAsleep = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_GROUDON, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Standard, + .images = sPicTable_GroudonFront, + .affineAnims = sAffineAnimTable_KyogreGroudon, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Rayquaza = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 2048, + .width = 64, + .height = 64, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = TRUE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_64x64, + .subspriteTables = sOamTables_64x64, + .anims = sAnimTable_Rayquaza, + .images = sPicTable_Rayquaza, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Zigzagoon = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Standard, + .images = sPicTable_Zigzagoon, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Pikachu = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Standard, + .images = sPicTable_Pikachu, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Azumarill = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Standard, + .images = sPicTable_Azumarill, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wingull = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Standard, + .images = sPicTable_Wingull, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KecleonBridgeShadow = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Standard, + .images = sPicTable_Kecleon, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberMSwimming = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_2, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_2, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Standard, + .images = sPicTable_TuberMSwimming, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Azurill = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 128, + .width = 16, + .height = 16, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x16, + .subspriteTables = sOamTables_16x16, + .anims = sAnimTable_Standard, + .images = sPicTable_Azurill, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Mom = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Mom, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkBrendan = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_MAY, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_BrendanMayNormal, + .images = sPicTable_BrendanNormal, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkMay = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_MAY, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_BRIDGE_REFLECTION, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_BrendanMayNormal, + .images = sPicTable_MayNormal, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Juan = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Juan, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scott = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Scott, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MysteryEventDeliveryman = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_MysteryEventDeliveryman, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Statue = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Inanimate, + .images = sPicTable_Statue, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kirlia = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_S, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Kirlia, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Dusclops = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Dusclops, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnionRoomAttendant = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_UnionRoomAttendant, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Red = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_RED_LEAF, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Red, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Leaf = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_RED_LEAF, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Leaf, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sudowoodo = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Sudowoodo, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Mew = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Mew, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Deoxys = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_DEOXYS, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Deoxys, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BirthIslandStone = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_BIRTH_ISLAND_STONE, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_M, + .inanimate = TRUE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Inanimate, + .images = sPicTable_BirthIslandStone, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Anabel = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Anabel, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Tucker = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Tucker, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Greta = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Greta, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Spenser = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_1, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_1, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Spenser, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Noland = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Noland, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lucy = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_4, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_4, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Lucy, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Brandon = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_NPC_3, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_3, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Brandon, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireBrendan = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_RS_BRENDAN, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_RubySapphireBrendan, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireMay = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_RS_MAY, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 256, + .width = 16, + .height = 32, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_16x32, + .subspriteTables = sOamTables_16x32, + .anims = sAnimTable_Standard, + .images = sPicTable_RubySapphireMay, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lugia = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_LUGIA, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_Standard, + .images = sPicTable_Lugia, + .affineAnims = gDummySpriteAffineAnimTable, +}; + +const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HoOh = { + .tileTag = TAG_NONE, + .paletteTag = OBJ_EVENT_PAL_TAG_HO_OH, + .reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE, + .size = 512, + .width = 32, + .height = 32, + .paletteSlot = PALSLOT_NPC_SPECIAL, + .shadowSize = SHADOW_SIZE_M, + .inanimate = FALSE, + .disableReflectionPaletteLoad = FALSE, + .tracks = TRACKS_FOOT, + .oam = &gObjectEventBaseOam_32x32, + .subspriteTables = sOamTables_32x32, + .anims = sAnimTable_HoOh, + .images = sPicTable_HoOh, + .affineAnims = gDummySpriteAffineAnimTable, +}; diff --git a/src/data/pokemon/level_up_learnsets.h b/src/data/pokemon/level_up_learnsets.h index bdcec3090..f4ad3b566 100644 --- a/src/data/pokemon/level_up_learnsets.h +++ b/src/data/pokemon/level_up_learnsets.h @@ -18102,9 +18102,9 @@ static const struct LevelUpMove sWyrdeerLevelUpLearnset[] = { LEVEL_UP_MOVE( 5, MOVE_CONFUSION), LEVEL_UP_MOVE( 9, MOVE_HYPNOSIS), LEVEL_UP_MOVE(15, MOVE_CALM_MIND), - //LEVEL_UP_MOVE(21, MOVE_PSYSHIELD_BASH), + LEVEL_UP_MOVE(21, MOVE_PSYSHIELD_BASH), LEVEL_UP_MOVE(29, MOVE_EXTRASENSORY), - //LEVEL_UP_MOVE(37, MOVE_ZEN_HEADBUTT), + LEVEL_UP_MOVE(37, MOVE_ZEN_HEADBUTT), LEVEL_UP_MOVE(47, MOVE_DOUBLE_EDGE), LEVEL_UP_END }; @@ -18114,36 +18114,36 @@ 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(18, MOVE_AIR_SLASH), + 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), - //LEVEL_UP_MOVE(34, MOVE_X_SCISSOR), - //LEVEL_UP_MOVE(43, MOVE_CLOSE_COMBAT), + LEVEL_UP_MOVE(29, MOVE_STONE_AXE), + LEVEL_UP_MOVE(34, MOVE_X_SCISSOR), + LEVEL_UP_MOVE(43, MOVE_CLOSE_COMBAT), LEVEL_UP_END }; static const struct LevelUpMove sUrsalunaLevelUpLearnset[] = { LEVEL_UP_MOVE( 1, MOVE_TACKLE), - //LEVEL_UP_MOVE( 6, MOVE_BABY_DOLL_EYES), - //LEVEL_UP_MOVE(11, MOVE_BULLDOZE), + LEVEL_UP_MOVE( 6, MOVE_BABY_DOLL_EYES), + LEVEL_UP_MOVE(11, MOVE_BULLDOZE), LEVEL_UP_MOVE(18, MOVE_SLASH), - //LEVEL_UP_MOVE(25, MOVE_PLAY_ROUGH), - //LEVEL_UP_MOVE(34, MOVE_HIGH_HORSEPOWER), + 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(47, MOVE_HEADLONG_RUSH), LEVEL_UP_END }; static const struct LevelUpMove sBasculegionLevelUpLearnset[] = { LEVEL_UP_MOVE( 1, MOVE_TACKLE), - //LEVEL_UP_MOVE( 6, MOVE_AQUA_JET), + LEVEL_UP_MOVE( 6, MOVE_AQUA_JET), LEVEL_UP_MOVE(11, MOVE_BITE), LEVEL_UP_MOVE(11, MOVE_HEX), - //LEVEL_UP_MOVE(18, MOVE_ZEN_HEADBUTT), + LEVEL_UP_MOVE(18, MOVE_ZEN_HEADBUTT), LEVEL_UP_MOVE(25, MOVE_CRUNCH), LEVEL_UP_MOVE(25, MOVE_SHADOW_BALL), - //LEVEL_UP_MOVE(34, MOVE_WAVE_CRASH), + LEVEL_UP_MOVE(34, MOVE_WAVE_CRASH), LEVEL_UP_MOVE(43, MOVE_DOUBLE_EDGE), LEVEL_UP_END }; @@ -18151,12 +18151,12 @@ static const struct LevelUpMove sBasculegionLevelUpLearnset[] = { static const struct LevelUpMove sSneaslerLevelUpLearnset[] = { LEVEL_UP_MOVE( 1, MOVE_QUICK_ATTACK), LEVEL_UP_MOVE( 6, MOVE_ROCK_SMASH), - //LEVEL_UP_MOVE(11, MOVE_DIRE_CLAW), + 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(25, MOVE_POISON_JAB), LEVEL_UP_MOVE(34, MOVE_SWORDS_DANCE), - //LEVEL_UP_MOVE(43, MOVE_CLOSE_COMBAT), + LEVEL_UP_MOVE(43, MOVE_CLOSE_COMBAT), LEVEL_UP_END }; @@ -18164,11 +18164,11 @@ static const struct LevelUpMove sOverqwilLevelUpLearnset[] = { LEVEL_UP_MOVE( 1, MOVE_POISON_STING), LEVEL_UP_MOVE( 5, MOVE_SPIKES), LEVEL_UP_MOVE( 9, MOVE_PIN_MISSILE), - //LEVEL_UP_MOVE(15, MOVE_BARB_BARRAGE), + LEVEL_UP_MOVE(15, MOVE_BARB_BARRAGE), LEVEL_UP_MOVE(21, MOVE_WATER_PULSE), - //LEVEL_UP_MOVE(26, MOVE_DARK_PULSE), - //LEVEL_UP_MOVE(29, MOVE_POISON_JAB), - //LEVEL_UP_MOVE(37, MOVE_AQUA_TAIL, + LEVEL_UP_MOVE(26, MOVE_DARK_PULSE), + LEVEL_UP_MOVE(29, MOVE_POISON_JAB), + LEVEL_UP_MOVE(37, MOVE_AQUA_TAIL), LEVEL_UP_MOVE(47, MOVE_DOUBLE_EDGE), LEVEL_UP_MOVE(57, MOVE_SELF_DESTRUCT), LEVEL_UP_END @@ -18178,12 +18178,12 @@ static const struct LevelUpMove sEnamorusLevelUpLearnset[] = { LEVEL_UP_MOVE( 1, MOVE_TACKLE), LEVEL_UP_MOVE( 7, MOVE_BITE), LEVEL_UP_MOVE(11, MOVE_TWISTER), - //LEVEL_UP_MOVE(14, MOVE_DRAINING_KISS), + LEVEL_UP_MOVE(14, MOVE_DRAINING_KISS), LEVEL_UP_MOVE(22, MOVE_IRON_DEFENSE), LEVEL_UP_MOVE(31, MOVE_EXTRASENSORY), LEVEL_UP_MOVE(41, MOVE_CRUNCH), - //LEVEL_UP_MOVE(47, MOVE_MOONBLAST), - //LEVEL_UP_MOVE( 1, MOVE_SPRINGTIDE_STORM), + LEVEL_UP_MOVE(47, MOVE_MOONBLAST), + LEVEL_UP_MOVE( 1, MOVE_SPRINGTIDE_STORM), LEVEL_UP_END }; #endif @@ -18948,11 +18948,11 @@ static const struct LevelUpMove sGrowlitheHisuianLevelUpLearnset[] = { LEVEL_UP_MOVE( 1, MOVE_TACKLE), LEVEL_UP_MOVE( 5, MOVE_EMBER), LEVEL_UP_MOVE( 9, MOVE_BITE), - //LEVEL_UP_MOVE(15, MOVE_FIRE_FANG), + LEVEL_UP_MOVE(15, MOVE_FIRE_FANG), LEVEL_UP_MOVE(21, MOVE_ROCK_SLIDE), LEVEL_UP_MOVE(29, MOVE_CRUNCH), LEVEL_UP_MOVE(37, MOVE_DOUBLE_EDGE), - //LEVEL_UP_MOVE(47, MOVE_FLARE_BLITZ), + LEVEL_UP_MOVE(47, MOVE_FLARE_BLITZ), LEVEL_UP_END }; @@ -18960,12 +18960,12 @@ static const struct LevelUpMove sArcanineHisuianLevelUpLearnset[] = { LEVEL_UP_MOVE( 1, MOVE_TACKLE), LEVEL_UP_MOVE( 5, MOVE_EMBER), LEVEL_UP_MOVE( 9, MOVE_BITE), - //LEVEL_UP_MOVE(15, MOVE_FIRE_FANG), + 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_MOVE(47, MOVE_FLARE_BLITZ), LEVEL_UP_END }; @@ -18974,7 +18974,7 @@ static const struct LevelUpMove sVoltorbHisuianLevelUpLearnset[] = { LEVEL_UP_MOVE( 5, MOVE_TACKLE), LEVEL_UP_MOVE( 9, MOVE_THUNDER_WAVE), LEVEL_UP_MOVE(15, MOVE_SPARK), - //LEVEL_UP_MOVE(21, MOVE_ENERGY_BALL), + LEVEL_UP_MOVE(21, MOVE_ENERGY_BALL), LEVEL_UP_MOVE(29, MOVE_THUNDERBOLT), LEVEL_UP_MOVE(37, MOVE_THUNDER), LEVEL_UP_MOVE(47, MOVE_SELF_DESTRUCT), @@ -18986,10 +18986,10 @@ static const struct LevelUpMove sElectrodeHisuianLevelUpLearnset[] = { LEVEL_UP_MOVE( 5, MOVE_TACKLE), LEVEL_UP_MOVE( 9, MOVE_THUNDER_WAVE), LEVEL_UP_MOVE(15, MOVE_SPARK), - //LEVEL_UP_MOVE(21, MOVE_ENERGY_BALL), + LEVEL_UP_MOVE(21, MOVE_ENERGY_BALL), LEVEL_UP_MOVE(29, MOVE_THUNDERBOLT), LEVEL_UP_MOVE(37, MOVE_THUNDER), - //LEVEL_UP_MOVE(47, MOVE_CHLOROBLAST), + LEVEL_UP_MOVE(47, MOVE_CHLOROBLAST), LEVEL_UP_MOVE(47, MOVE_SELF_DESTRUCT), LEVEL_UP_END }; @@ -19002,7 +19002,7 @@ static const struct LevelUpMove sTyphlosionHisuianLevelUpLearnset[] = { LEVEL_UP_MOVE(18, MOVE_FLAME_WHEEL), LEVEL_UP_MOVE(25, MOVE_SWIFT), LEVEL_UP_MOVE(34, MOVE_FLAMETHROWER), - //LEVEL_UP_MOVE(40, MOVE_INFERNAL_PARADE), + LEVEL_UP_MOVE(40, MOVE_INFERNAL_PARADE), LEVEL_UP_MOVE(43, MOVE_OVERHEAT), LEVEL_UP_MOVE(43, MOVE_SHADOW_BALL), LEVEL_UP_END @@ -19012,11 +19012,11 @@ static const struct LevelUpMove sQwilfishHisuianLevelUpLearnset[] = { LEVEL_UP_MOVE( 1, MOVE_POISON_STING), LEVEL_UP_MOVE( 5, MOVE_SPIKES), LEVEL_UP_MOVE( 9, MOVE_PIN_MISSILE), - //LEVEL_UP_MOVE(15, MOVE_BARB_BARRAGE), + LEVEL_UP_MOVE(15, MOVE_BARB_BARRAGE), LEVEL_UP_MOVE(21, MOVE_WATER_PULSE), - //LEVEL_UP_MOVE(26, MOVE_DARK_PULSE), - //LEVEL_UP_MOVE(29, MOVE_POISON_JAB), - //LEVEL_UP_MOVE(37, MOVE_AQUA_TAIL, + LEVEL_UP_MOVE(26, MOVE_DARK_PULSE), + LEVEL_UP_MOVE(29, MOVE_POISON_JAB), + LEVEL_UP_MOVE(37, MOVE_AQUA_TAIL), LEVEL_UP_MOVE(47, MOVE_DOUBLE_EDGE), LEVEL_UP_MOVE(57, MOVE_SELF_DESTRUCT), LEVEL_UP_END @@ -19027,9 +19027,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(25, MOVE_POISON_JAB), LEVEL_UP_MOVE(34, MOVE_SWORDS_DANCE), - //LEVEL_UP_MOVE(43, MOVE_CLOSE_COMBAT), + LEVEL_UP_MOVE(43, MOVE_CLOSE_COMBAT), LEVEL_UP_END }; @@ -19037,13 +19037,13 @@ static const struct LevelUpMove sSneaselHisuianLevelUpLearnset[] = { static const struct LevelUpMove sSamurottHisuianLevelUpLearnset[] = { LEVEL_UP_MOVE( 0, MOVE_NIGHT_SLASH), LEVEL_UP_MOVE( 1, MOVE_TACKLE), - //LEVEL_UP_MOVE( 6, MOVE_AQUA_JET), + LEVEL_UP_MOVE( 6, MOVE_AQUA_JET), LEVEL_UP_MOVE(11, MOVE_SWORDS_DANCE), LEVEL_UP_MOVE(18, MOVE_WATER_PULSE), - //LEVEL_UP_MOVE(21, MOVE_CEASELESS_EDGE), + LEVEL_UP_MOVE(21, MOVE_CEASELESS_EDGE), LEVEL_UP_MOVE(25, MOVE_SLASH), - //LEVEL_UP_MOVE(34, MOVE_AQUA_TAIL), - //LEVEL_UP_MOVE(40, MOVE_DARK_PULSE), + LEVEL_UP_MOVE(34, MOVE_AQUA_TAIL), + LEVEL_UP_MOVE(40, MOVE_DARK_PULSE), LEVEL_UP_MOVE(43, MOVE_HYDRO_PUMP), LEVEL_UP_END }; @@ -19051,41 +19051,41 @@ static const struct LevelUpMove sSamurottHisuianLevelUpLearnset[] = { static const struct LevelUpMove sLilligantHisuianLevelUpLearnset[] = { LEVEL_UP_MOVE( 0, MOVE_ROCK_SMASH), LEVEL_UP_MOVE( 1, MOVE_ABSORB), - //LEVEL_UP_MOVE( 5, MOVE_LEAFAGE), + LEVEL_UP_MOVE( 5, MOVE_LEAFAGE), LEVEL_UP_MOVE( 9, MOVE_STUN_SPORE), LEVEL_UP_MOVE(15, MOVE_POISON_POWDER), - //LEVEL_UP_MOVE(21, MOVE_ENERGY_BALL), + LEVEL_UP_MOVE(21, MOVE_ENERGY_BALL), LEVEL_UP_MOVE(29, MOVE_SLEEP_POWDER), - //LEVEL_UP_MOVE(34, MOVE_DRAIN_PUNCH), + LEVEL_UP_MOVE(34, MOVE_DRAIN_PUNCH), LEVEL_UP_MOVE(37, MOVE_LEAF_BLADE), LEVEL_UP_MOVE(37, MOVE_RECOVER), - //LEVEL_UP_MOVE(42, MOVE_VICTORY_DANCE), - //LEVEL_UP_MOVE(47, MOVE_LEAF_STORM), + LEVEL_UP_MOVE(42, MOVE_VICTORY_DANCE), + LEVEL_UP_MOVE(47, MOVE_LEAF_STORM), LEVEL_UP_MOVE(53, MOVE_PETAL_DANCE), LEVEL_UP_MOVE(57, MOVE_CLOSE_COMBAT), LEVEL_UP_END }; static const struct LevelUpMove sZoruaHisuianLevelUpLearnset[] = { - //LEVEL_UP_MOVE( 1, MOVE_SHADOW_SNEAK), - //LEVEL_UP_MOVE( 6, MOVE_SNARL), + LEVEL_UP_MOVE( 1, MOVE_SHADOW_SNEAK), + LEVEL_UP_MOVE( 6, MOVE_SNARL), LEVEL_UP_MOVE(11, MOVE_SWIFT), - //LEVEL_UP_MOVE(18, MOVE_BITTER_MALICE), + LEVEL_UP_MOVE(18, MOVE_BITTER_MALICE), LEVEL_UP_MOVE(25, MOVE_SLASH), - //LEVEL_UP_MOVE(34, MOVE_SHADOW_CLAW), - //LEVEL_UP_MOVE(43, MOVE_NASTY_PLOT), + LEVEL_UP_MOVE(34, MOVE_SHADOW_CLAW), + LEVEL_UP_MOVE(43, MOVE_NASTY_PLOT), LEVEL_UP_END }; static const struct LevelUpMove sZoroarkHisuianLevelUpLearnset[] = { - //LEVEL_UP_MOVE( 1, MOVE_SHADOW_SNEAK), - //LEVEL_UP_MOVE( 6, MOVE_SNARL), + LEVEL_UP_MOVE( 1, MOVE_SHADOW_SNEAK), + LEVEL_UP_MOVE( 6, MOVE_SNARL), LEVEL_UP_MOVE(11, MOVE_SWIFT), - //LEVEL_UP_MOVE(18, MOVE_BITTER_MALICE), + LEVEL_UP_MOVE(18, MOVE_BITTER_MALICE), LEVEL_UP_MOVE(25, MOVE_SLASH), - //LEVEL_UP_MOVE(34, MOVE_SHADOW_CLAW), + LEVEL_UP_MOVE(34, MOVE_SHADOW_CLAW), LEVEL_UP_MOVE(40, MOVE_SHADOW_BALL), - //LEVEL_UP_MOVE(43, MOVE_NASTY_PLOT), + LEVEL_UP_MOVE(43, MOVE_NASTY_PLOT), LEVEL_UP_MOVE(52, MOVE_EXTRASENSORY), LEVEL_UP_END }; @@ -19095,12 +19095,12 @@ static const struct LevelUpMove sBraviaryHisuianLevelUpLearnset[] = { LEVEL_UP_MOVE( 6, MOVE_AERIAL_ACE), LEVEL_UP_MOVE(11, MOVE_TWISTER), LEVEL_UP_MOVE(18, MOVE_SLASH), - //LEVEL_UP_MOVE(20, MOVE_AIR_SLASH), - //LEVEL_UP_MOVE(25, MOVE_ESPER_WING), + LEVEL_UP_MOVE(20, MOVE_AIR_SLASH), + LEVEL_UP_MOVE(25, MOVE_ESPER_WING), LEVEL_UP_MOVE(25, MOVE_ROOST), LEVEL_UP_MOVE(34, MOVE_DOUBLE_EDGE), - //LEVEL_UP_MOVE(43, MOVE_BRAVE_BIRD), - //LEVEL_UP_MOVE(52, MOVE_HURRICANE), + LEVEL_UP_MOVE(43, MOVE_BRAVE_BIRD), + LEVEL_UP_MOVE(52, MOVE_HURRICANE), LEVEL_UP_END }; #endif @@ -19108,24 +19108,24 @@ static const struct LevelUpMove sBraviaryHisuianLevelUpLearnset[] = { #if P_GEN_6_POKEMON == TRUE static const struct LevelUpMove sSliggooHisuianLevelUpLearnset[] = { LEVEL_UP_MOVE( 1, MOVE_BUBBLE), - //LEVEL_UP_MOVE( 6, MOVE_ACID_SPRAY), + LEVEL_UP_MOVE( 6, MOVE_ACID_SPRAY), LEVEL_UP_MOVE(11, MOVE_ACID_ARMOR), LEVEL_UP_MOVE(18, MOVE_WATER_PULSE), - //LEVEL_UP_MOVE(25, MOVE_DRAGON_PULSE), - //LEVEL_UP_MOVE(25, MOVE_IRON_HEAD), - //LEVEL_UP_MOVE(34, MOVE_SHELTER), + LEVEL_UP_MOVE(25, MOVE_DRAGON_PULSE), + LEVEL_UP_MOVE(25, MOVE_IRON_HEAD), + LEVEL_UP_MOVE(34, MOVE_SHELTER), LEVEL_UP_MOVE(43, MOVE_HYDRO_PUMP), LEVEL_UP_END }; static const struct LevelUpMove sGoodraHisuianLevelUpLearnset[] = { LEVEL_UP_MOVE( 1, MOVE_BUBBLE), - //LEVEL_UP_MOVE( 6, MOVE_ACID_SPRAY), + LEVEL_UP_MOVE( 6, MOVE_ACID_SPRAY), LEVEL_UP_MOVE(11, MOVE_ACID_ARMOR), LEVEL_UP_MOVE(18, MOVE_WATER_PULSE), - //LEVEL_UP_MOVE(25, MOVE_DRAGON_PULSE), - //LEVEL_UP_MOVE(25, MOVE_IRON_HEAD), - //LEVEL_UP_MOVE(34, MOVE_SHELTER), + LEVEL_UP_MOVE(25, MOVE_DRAGON_PULSE), + LEVEL_UP_MOVE(25, MOVE_IRON_HEAD), + LEVEL_UP_MOVE(34, MOVE_SHELTER), LEVEL_UP_MOVE(43, MOVE_HYDRO_PUMP), LEVEL_UP_END }; @@ -19134,13 +19134,13 @@ static const struct LevelUpMove sAvaluggHisuianLevelUpLearnset[] = { 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), + LEVEL_UP_MOVE( 9, MOVE_ICE_SHARD), LEVEL_UP_MOVE(15, MOVE_BITE), LEVEL_UP_MOVE(21, MOVE_IRON_DEFENSE), LEVEL_UP_MOVE(29, MOVE_CRUNCH), - //LEVEL_UP_MOVE(29, MOVE_EARTH_POWER), + LEVEL_UP_MOVE(29, MOVE_EARTH_POWER), LEVEL_UP_MOVE(37, MOVE_BLIZZARD), - //LEVEL_UP_MOVE(37, MOVE_MOUNTAIN_GALE), + LEVEL_UP_MOVE(37, MOVE_MOUNTAIN_GALE), LEVEL_UP_MOVE(47, MOVE_DOUBLE_EDGE), LEVEL_UP_END }; @@ -19150,16 +19150,16 @@ static const struct LevelUpMove sAvaluggHisuianLevelUpLearnset[] = { static const struct LevelUpMove sDecidueyeHisuianLevelUpLearnset[] = { LEVEL_UP_MOVE( 0, MOVE_ROCK_SMASH), LEVEL_UP_MOVE( 1, MOVE_GUST), - //LEVEL_UP_MOVE( 6, MOVE_LEAFAGE), + LEVEL_UP_MOVE( 6, MOVE_LEAFAGE), LEVEL_UP_MOVE(11, MOVE_ROOST), LEVEL_UP_MOVE(18, MOVE_AERIAL_ACE), LEVEL_UP_MOVE(21, MOVE_MAGICAL_LEAF), - //LEVEL_UP_MOVE(25, MOVE_AIR_SLASH), - //LEVEL_UP_MOVE(30, MOVE_AURA_SPHERE), + LEVEL_UP_MOVE(25, MOVE_AIR_SLASH), + LEVEL_UP_MOVE(30, MOVE_AURA_SPHERE), LEVEL_UP_MOVE(34, MOVE_LEAF_BLADE), - //LEVEL_UP_MOVE(34, MOVE_TRIPLE_ARROWS), - //LEVEL_UP_MOVE(40, MOVE_BRAVE_BIRD), - //LEVEL_UP_MOVE(43, MOVE_LEAF_STORM), + LEVEL_UP_MOVE(34, MOVE_TRIPLE_ARROWS), + LEVEL_UP_MOVE(40, MOVE_BRAVE_BIRD), + LEVEL_UP_MOVE(43, MOVE_LEAF_STORM), LEVEL_UP_END }; #endif diff --git a/src/data/pokemon/base_stats.h b/src/data/pokemon/species_info.h similarity index 97% rename from src/data/pokemon/base_stats.h rename to src/data/pokemon/species_info.h index a161fbf90..95ccf90aa 100644 --- a/src/data/pokemon/base_stats.h +++ b/src/data/pokemon/species_info.h @@ -16,7 +16,7 @@ .baseSpDefense = 40 #endif -#define PIKACHU_BASE_STATS(gender, flip) \ +#define PIKACHU_SPECIES_INFO(gender, flip) \ { \ .baseHP = 35, \ .baseAttack = 55, \ @@ -28,7 +28,7 @@ .catchRate = 190, \ .expYield = 112, \ .evYield_Speed = 2, \ - .itemRare = ITEM_LIGHT_BALL, \ + .itemRare = ITEM_LIGHT_BALL, \ .genderRatio = gender, \ .eggCycles = 10, \ .friendship = 70, \ @@ -40,10 +40,10 @@ .noFlip = flip, \ } -#define COSPLAY_PIKACHU_BASE_STATS(flip) PIKACHU_BASE_STATS(MON_FEMALE, flip) -#define CAP_PIKACHU_BASE_STATS(flip) PIKACHU_BASE_STATS(MON_MALE, flip) +#define COSPLAY_PIKACHU_SPECIES_INFO(flip) PIKACHU_SPECIES_INFO(MON_FEMALE, flip) +#define CAP_PIKACHU_SPECIES_INFO(flip) PIKACHU_SPECIES_INFO(MON_MALE, flip) -#define PICHU_BASE_STATS(flip) \ +#define PICHU_SPECIES_INFO(flip) \ { \ .baseHP = 20, \ .baseAttack = 40, \ @@ -67,7 +67,7 @@ .noFlip = flip, \ } -#define UNOWN_BASE_STATS(flip) \ +#define UNOWN_SPECIES_INFO(flip) \ { \ .baseHP = 48, \ .baseAttack = 72, \ @@ -92,7 +92,7 @@ .noFlip = flip, \ } -#define CASTFORM_BASE_STATS(type, color) \ +#define CASTFORM_SPECIES_INFO(type, color) \ { \ .baseHP = 70, \ .baseAttack = 70, \ @@ -105,8 +105,8 @@ .catchRate = 45, \ .expYield = 147, \ .evYield_HP = 1, \ - .itemCommon = ITEM_MYSTIC_WATER, \ - .itemRare = ITEM_MYSTIC_WATER, \ + .itemCommon = ITEM_MYSTIC_WATER, \ + .itemRare = ITEM_MYSTIC_WATER, \ .genderRatio = PERCENT_FEMALE(50), \ .eggCycles = 25, \ .friendship = 70, \ @@ -118,7 +118,7 @@ .noFlip = FALSE, \ } -#define BURMY_BASE_STATS(color) \ +#define BURMY_SPECIES_INFO(color) \ { \ .baseHP = 40, \ .baseAttack = 29, \ @@ -142,7 +142,7 @@ .noFlip = FALSE, \ } -#define CHERRIM_BASE_STATS(color) \ +#define CHERRIM_SPECIES_INFO(color) \ { \ .baseHP = 70, \ .baseAttack = 60, \ @@ -155,7 +155,7 @@ .catchRate = 75, \ .expYield = 158, \ .evYield_SpAttack = 2, \ - .itemRare = ITEM_MIRACLE_SEED, \ + .itemRare = ITEM_MIRACLE_SEED, \ .genderRatio = PERCENT_FEMALE(50), \ .eggCycles = 20, \ .friendship = 70, \ @@ -167,7 +167,7 @@ .noFlip = FALSE, \ } -#define SHELLOS_BASE_STATS(color) \ +#define SHELLOS_SPECIES_INFO(color) \ { \ .baseHP = 76, \ .baseAttack = 48, \ @@ -191,7 +191,7 @@ .noFlip = FALSE, \ } -#define GASTRODON_BASE_STATS(color) \ +#define GASTRODON_SPECIES_INFO(color) \ { \ .baseHP = 111, \ .baseAttack = 83, \ @@ -215,7 +215,7 @@ .noFlip = FALSE, \ } -#define ROTOM_FORM_BASE_STATS(type, flip) \ +#define ROTOM_FORM_SPECIES_INFO(type, flip) \ { \ .baseHP = 50, \ .baseAttack = 65, \ @@ -240,7 +240,7 @@ .noFlip = flip, \ } -#define ARCEUS_BASE_STATS(type) \ +#define ARCEUS_SPECIES_INFO(type) \ { \ .baseHP = 120, \ .baseAttack = 120, \ @@ -265,7 +265,7 @@ .flags = SPECIES_FLAG_MYTHICAL, \ } -#define DEERLING_BASE_STATS(color) \ +#define DEERLING_SPECIES_INFO(color) \ { \ .baseHP = 60, \ .baseAttack = 60, \ @@ -289,7 +289,7 @@ .noFlip = FALSE, \ } -#define SAWSBUCK_BASE_STATS \ +#define SAWSBUCK_SPECIES_INFO \ { \ .baseHP = 80, \ .baseAttack = 100, \ @@ -313,7 +313,7 @@ .noFlip = FALSE, \ } -#define GENESECT_BASE_STATS \ +#define GENESECT_SPECIES_INFO \ { \ .baseHP = 71, \ .baseAttack = 120, \ @@ -340,7 +340,7 @@ .flags = SPECIES_FLAG_MYTHICAL, \ } -#define VIVILLON_BASE_STATS(color) \ +#define VIVILLON_SPECIES_INFO(color) \ { \ .baseHP = 80, \ .baseAttack = 52, \ @@ -366,7 +366,7 @@ .noFlip = FALSE, \ } -#define FLABEBE_BASE_STATS \ +#define FLABEBE_SPECIES_INFO \ { \ .baseHP = 44, \ .baseAttack = 38, \ @@ -390,7 +390,7 @@ .noFlip = FALSE, \ } -#define FLOETTE_BASE_STATS \ +#define FLOETTE_SPECIES_INFO \ { \ .baseHP = 54, \ .baseAttack = 45, \ @@ -414,7 +414,7 @@ .noFlip = FALSE, \ } -#define FLORGES_BASE_STATS \ +#define FLORGES_SPECIES_INFO \ { \ .baseHP = 78, \ .baseAttack = 65, \ @@ -438,7 +438,7 @@ .noFlip = FALSE, \ } -#define FURFROU_BASE_STATS(flip) \ +#define FURFROU_SPECIES_INFO(flip) \ { \ .baseHP = 75, \ .baseAttack = 80, \ @@ -462,7 +462,7 @@ .noFlip = flip, \ } -#define PUMKPABOO_MISC_STATS \ +#define PUMKPABOO_MISC_INFO \ .type1 = TYPE_GHOST, \ .type2 = TYPE_GRASS, \ .catchRate = 120, \ @@ -478,7 +478,7 @@ .bodyColor = BODY_COLOR_BROWN, \ .noFlip = FALSE -#define GOURGEIST_MISC_STATS \ +#define GOURGEIST_MISC_INFO \ .type1 = TYPE_GHOST, \ .type2 = TYPE_GRASS, \ .catchRate = 60, \ @@ -494,7 +494,7 @@ .bodyColor = BODY_COLOR_BROWN, \ .noFlip = FALSE -#define XERNEAS_BASE_STATS \ +#define XERNEAS_SPECIES_INFO \ { \ .baseHP = 126, \ .baseAttack = 131, \ @@ -519,7 +519,7 @@ .flags = SPECIES_FLAG_LEGENDARY, \ } -#define ZYGARDE_50_BASE_STATS(ability) \ +#define ZYGARDE_50_SPECIES_INFO(ability) \ { \ .baseHP = 108, \ .baseAttack = 100, \ @@ -544,7 +544,7 @@ .flags = SPECIES_FLAG_LEGENDARY, \ } -#define ZYGARDE_10_BASE_STATS(ability) \ +#define ZYGARDE_10_SPECIES_INFO(ability) \ { \ .baseHP = 54, \ .baseAttack = 100, \ @@ -569,7 +569,7 @@ .flags = SPECIES_FLAG_LEGENDARY, \ } -#define ORICORIO_BASE_STATS(type, color) \ +#define ORICORIO_SPECIES_INFO(type, color) \ { \ .baseHP = 75, \ .baseAttack = 70, \ @@ -582,7 +582,7 @@ .catchRate = 45, \ .expYield = 167, \ .evYield_SpAttack = 2, \ - .itemRare = ITEM_HONEY, \ + .itemRare = ITEM_HONEY, \ .genderRatio = PERCENT_FEMALE(75), \ .eggCycles = 20, \ .friendship = 70, \ @@ -594,31 +594,31 @@ .noFlip = FALSE, \ } -#define ROCKRUFF_BASE_STATS(ability1, ability2, hiddenAbility)\ - { \ - .baseHP = 45, \ - .baseAttack = 65, \ - .baseDefense = 40, \ - .baseSpeed = 60, \ - .baseSpAttack = 30, \ - .baseSpDefense = 40, \ - .type1 = TYPE_ROCK, \ - .type2 = TYPE_ROCK, \ - .catchRate = 190, \ - .expYield = 56, \ - .evYield_Attack = 1, \ - .genderRatio = PERCENT_FEMALE(50), \ - .eggCycles = 15, \ - .friendship = 70, \ - .growthRate = GROWTH_MEDIUM_FAST, \ - .eggGroup1 = EGG_GROUP_FIELD, \ - .eggGroup2 = EGG_GROUP_FIELD, \ - .abilities = {ability1, ability2, hiddenAbility}, \ - .bodyColor = BODY_COLOR_BROWN, \ - .noFlip = FALSE, \ +#define ROCKRUFF_SPECIES_INFO(ability1, ability2, hiddenAbility)\ + { \ + .baseHP = 45, \ + .baseAttack = 65, \ + .baseDefense = 40, \ + .baseSpeed = 60, \ + .baseSpAttack = 30, \ + .baseSpDefense = 40, \ + .type1 = TYPE_ROCK, \ + .type2 = TYPE_ROCK, \ + .catchRate = 190, \ + .expYield = 56, \ + .evYield_Attack = 1, \ + .genderRatio = PERCENT_FEMALE(50), \ + .eggCycles = 15, \ + .friendship = 70, \ + .growthRate = GROWTH_MEDIUM_FAST, \ + .eggGroup1 = EGG_GROUP_FIELD, \ + .eggGroup2 = EGG_GROUP_FIELD, \ + .abilities = {ability1, ability2, hiddenAbility}, \ + .bodyColor = BODY_COLOR_BROWN, \ + .noFlip = FALSE, \ } -#define SILVALLY_BASE_STATS(type) \ +#define SILVALLY_SPECIES_INFO(type) \ { \ .baseHP = 95, \ .baseAttack = 95, \ @@ -659,38 +659,38 @@ .baseSpAttack = 100, \ .baseSpDefense = 60 -#define MINIOR_MISC_STATS(color) \ - .type1 = TYPE_ROCK, \ - .type2 = TYPE_FLYING, \ - .catchRate = 30, \ - .expYield = 154, \ - .evYield_Defense = 1, \ - .evYield_SpDefense = 1, \ - .itemRare = ITEM_STAR_PIECE, \ - .genderRatio = MON_GENDERLESS, \ - .eggCycles = 25, \ - .friendship = 70, \ - .growthRate = GROWTH_MEDIUM_SLOW, \ - .eggGroup1 = EGG_GROUP_MINERAL, \ - .eggGroup2 = EGG_GROUP_MINERAL, \ - .abilities = {ABILITY_SHIELDS_DOWN, ABILITY_NONE},\ - .bodyColor = color, \ +#define MINIOR_MISC_INFO(color) \ + .type1 = TYPE_ROCK, \ + .type2 = TYPE_FLYING, \ + .catchRate = 30, \ + .expYield = 154, \ + .evYield_Defense = 1, \ + .evYield_SpDefense = 1, \ + .itemRare = ITEM_STAR_PIECE, \ + .genderRatio = MON_GENDERLESS, \ + .eggCycles = 25, \ + .friendship = 70, \ + .growthRate = GROWTH_MEDIUM_SLOW, \ + .eggGroup1 = EGG_GROUP_MINERAL, \ + .eggGroup2 = EGG_GROUP_MINERAL, \ + .abilities = {ABILITY_SHIELDS_DOWN, ABILITY_NONE}, \ + .bodyColor = color, \ .noFlip = TRUE -#define MINIOR_METEOR_BASE_STATS \ +#define MINIOR_METEOR_SPECIES_INFO \ { \ MINIOR_METEOR_ATTRIBUTES, \ - MINIOR_MISC_STATS(BODY_COLOR_BROWN),\ + MINIOR_MISC_INFO(BODY_COLOR_BROWN), \ } -#define MINIOR_CORE_BASE_STATS(color)\ - { \ - MINIOR_CORE_ATTRIBUTES, \ - MINIOR_MISC_STATS(color), \ +#define MINIOR_CORE_SPECIES_INFO(color) \ + { \ + MINIOR_CORE_ATTRIBUTES, \ + MINIOR_MISC_INFO(color), \ } -#define MIMIKYU_BASE_STATS \ +#define MIMIKYU_SPECIES_INFO \ { \ .baseHP = 55, \ .baseAttack = 90, \ @@ -703,7 +703,7 @@ .catchRate = 45, \ .expYield = 167, \ .evYield_SpDefense = 2, \ - .itemRare = ITEM_CHESTO_BERRY, \ + .itemRare = ITEM_CHESTO_BERRY, \ .genderRatio = PERCENT_FEMALE(50), \ .eggCycles = 20, \ .friendship = 70, \ @@ -715,7 +715,7 @@ .noFlip = FALSE, \ } -#define MAGEARNA_BASE_STATS(color) \ +#define MAGEARNA_SPECIES_INFO(color) \ { \ .baseHP = 80, \ .baseAttack = 95, \ @@ -740,7 +740,7 @@ .flags = SPECIES_FLAG_MYTHICAL, \ } -#define CRAMORANT_BASE_STATS \ +#define CRAMORANT_SPECIES_INFO \ { \ .baseHP = 70, \ .baseAttack = 85, \ @@ -764,7 +764,7 @@ .noFlip = FALSE, \ } -#define TOXTRICITY_BASE_STATS(ability2) \ +#define TOXTRICITY_SPECIES_INFO(ability2) \ { \ .baseHP = 75, \ .baseAttack = 98, \ @@ -788,7 +788,7 @@ .noFlip = FALSE, \ } -#define SINISTEA_BASE_STATS \ +#define SINISTEA_SPECIES_INFO \ { \ .baseHP = 40, \ .baseAttack = 45, \ @@ -812,7 +812,7 @@ .noFlip = FALSE, \ } -#define POLTEAGEIST_BASE_STATS \ +#define POLTEAGEIST_SPECIES_INFO \ { \ .baseHP = 60, \ .baseAttack = 65, \ @@ -836,7 +836,7 @@ .noFlip = FALSE, \ } -#define ALCREMIE_BASE_STATS(color) \ +#define ALCREMIE_SPECIES_INFO(color) \ { \ .baseHP = 65, \ .baseAttack = 60, \ @@ -860,7 +860,7 @@ .noFlip = FALSE, \ } -#define MORPEKO_BASE_STATS \ +#define MORPEKO_SPECIES_INFO \ { \ .baseHP = 58, \ .baseAttack = 95, \ @@ -884,7 +884,7 @@ .noFlip = FALSE, \ } -#define ZARUDE_BASE_STATS \ +#define ZARUDE_SPECIES_INFO \ { \ .baseHP = 105, \ .baseAttack = 120, \ @@ -909,7 +909,7 @@ .flags = SPECIES_FLAG_MYTHICAL, \ } -const struct BaseStats gBaseStats[] = +const struct SpeciesInfo gSpeciesInfo[] = { [SPECIES_NONE] = {0}, @@ -1515,7 +1515,7 @@ const struct BaseStats gBaseStats[] = .noFlip = FALSE, }, - [SPECIES_PIKACHU] = PIKACHU_BASE_STATS(PERCENT_FEMALE(50), FLIP), + [SPECIES_PIKACHU] = PIKACHU_SPECIES_INFO(PERCENT_FEMALE(50), FLIP), [SPECIES_RAICHU] = { @@ -5215,7 +5215,7 @@ const struct BaseStats gBaseStats[] = .noFlip = FALSE, }, - [SPECIES_PICHU] = PICHU_BASE_STATS(FLIP), + [SPECIES_PICHU] = PICHU_SPECIES_INFO(FLIP), [SPECIES_CLEFFA] = { @@ -5941,7 +5941,7 @@ const struct BaseStats gBaseStats[] = .noFlip = FALSE, }, - [SPECIES_UNOWN] = UNOWN_BASE_STATS(FLIP), + [SPECIES_UNOWN] = UNOWN_SPECIES_INFO(FLIP), [SPECIES_WOBBUFFET] = { @@ -9751,7 +9751,7 @@ const struct BaseStats gBaseStats[] = .noFlip = FALSE, }, - [SPECIES_CASTFORM] = CASTFORM_BASE_STATS(TYPE_NORMAL, BODY_COLOR_GRAY), + [SPECIES_CASTFORM] = CASTFORM_SPECIES_INFO(TYPE_NORMAL, BODY_COLOR_GRAY), [SPECIES_KECLEON] = { @@ -11261,7 +11261,7 @@ const struct BaseStats gBaseStats[] = .noFlip = FALSE, }, - [SPECIES_BURMY] = BURMY_BASE_STATS(BODY_COLOR_GREEN), + [SPECIES_BURMY] = BURMY_SPECIES_INFO(BODY_COLOR_GREEN), [SPECIES_WORMADAM] = { @@ -11463,11 +11463,11 @@ const struct BaseStats gBaseStats[] = .noFlip = FALSE, }, - [SPECIES_CHERRIM] = CHERRIM_BASE_STATS(BODY_COLOR_PURPLE), + [SPECIES_CHERRIM] = CHERRIM_SPECIES_INFO(BODY_COLOR_PURPLE), - [SPECIES_SHELLOS] = SHELLOS_BASE_STATS(BODY_COLOR_PURPLE), + [SPECIES_SHELLOS] = SHELLOS_SPECIES_INFO(BODY_COLOR_PURPLE), - [SPECIES_GASTRODON] = GASTRODON_BASE_STATS(BODY_COLOR_PURPLE), + [SPECIES_GASTRODON] = GASTRODON_SPECIES_INFO(BODY_COLOR_PURPLE), [SPECIES_AMBIPOM] = { @@ -15502,9 +15502,9 @@ const struct BaseStats gBaseStats[] = .noFlip = FALSE, }, - [SPECIES_DEERLING] = DEERLING_BASE_STATS(BODY_COLOR_PINK), + [SPECIES_DEERLING] = DEERLING_SPECIES_INFO(BODY_COLOR_PINK), - [SPECIES_SAWSBUCK] = SAWSBUCK_BASE_STATS, + [SPECIES_SAWSBUCK] = SAWSBUCK_SPECIES_INFO, [SPECIES_EMOLGA] = { @@ -17047,7 +17047,7 @@ const struct BaseStats gBaseStats[] = .flags = SPECIES_FLAG_MYTHICAL, }, - [SPECIES_GENESECT] = GENESECT_BASE_STATS, + [SPECIES_GENESECT] = GENESECT_SPECIES_INFO, #endif #if P_GEN_6_POKEMON == TRUE @@ -17435,7 +17435,7 @@ const struct BaseStats gBaseStats[] = .noFlip = FALSE, }, - [SPECIES_VIVILLON] = VIVILLON_BASE_STATS(BODY_COLOR_WHITE), + [SPECIES_VIVILLON] = VIVILLON_SPECIES_INFO(BODY_COLOR_WHITE), [SPECIES_LITLEO] = { @@ -17486,11 +17486,11 @@ const struct BaseStats gBaseStats[] = .flags = SPECIES_FLAG_GENDER_DIFFERENCE, }, - [SPECIES_FLABEBE] = FLABEBE_BASE_STATS, + [SPECIES_FLABEBE] = FLABEBE_SPECIES_INFO, - [SPECIES_FLOETTE] = FLOETTE_BASE_STATS, + [SPECIES_FLOETTE] = FLOETTE_SPECIES_INFO, - [SPECIES_FLORGES] = FLORGES_BASE_STATS, + [SPECIES_FLORGES] = FLORGES_SPECIES_INFO, [SPECIES_SKIDDO] = { @@ -17590,7 +17590,7 @@ const struct BaseStats gBaseStats[] = .noFlip = FALSE, }, - [SPECIES_FURFROU] = FURFROU_BASE_STATS(FLIP), + [SPECIES_FURFROU] = FURFROU_SPECIES_INFO(FLIP), [SPECIES_ESPURR] = { @@ -18407,7 +18407,7 @@ const struct BaseStats gBaseStats[] = .baseSpeed = 51, .baseSpAttack = 44, .baseSpDefense = 55, - PUMKPABOO_MISC_STATS, + PUMKPABOO_MISC_INFO, }, [SPECIES_GOURGEIST] = @@ -18418,7 +18418,7 @@ const struct BaseStats gBaseStats[] = .baseSpeed = 84, .baseSpAttack = 58, .baseSpDefense = 75, - GOURGEIST_MISC_STATS, + GOURGEIST_MISC_INFO, }, [SPECIES_BERGMITE] = @@ -18533,7 +18533,7 @@ const struct BaseStats gBaseStats[] = .noFlip = FALSE, }, - [SPECIES_XERNEAS] = XERNEAS_BASE_STATS, + [SPECIES_XERNEAS] = XERNEAS_SPECIES_INFO, [SPECIES_YVELTAL] = { @@ -18560,7 +18560,7 @@ const struct BaseStats gBaseStats[] = .flags = SPECIES_FLAG_LEGENDARY, }, - [SPECIES_ZYGARDE] = ZYGARDE_50_BASE_STATS(ABILITY_AURA_BREAK), + [SPECIES_ZYGARDE] = ZYGARDE_50_SPECIES_INFO(ABILITY_AURA_BREAK), [SPECIES_DIANCIE] = { @@ -19104,7 +19104,7 @@ const struct BaseStats gBaseStats[] = .noFlip = FALSE, }, - [SPECIES_ORICORIO] = ORICORIO_BASE_STATS(TYPE_FIRE, BODY_COLOR_RED), + [SPECIES_ORICORIO] = ORICORIO_SPECIES_INFO(TYPE_FIRE, BODY_COLOR_RED), [SPECIES_CUTIEFLY] = { @@ -19156,7 +19156,7 @@ const struct BaseStats gBaseStats[] = .noFlip = FALSE, }, - [SPECIES_ROCKRUFF] = ROCKRUFF_BASE_STATS(ABILITY_KEEN_EYE, ABILITY_VITAL_SPIRIT, ABILITY_STEADFAST), + [SPECIES_ROCKRUFF] = ROCKRUFF_SPECIES_INFO(ABILITY_KEEN_EYE, ABILITY_VITAL_SPIRIT, ABILITY_STEADFAST), [SPECIES_LYCANROC] = { @@ -19851,9 +19851,9 @@ const struct BaseStats gBaseStats[] = .flags = SPECIES_FLAG_LEGENDARY, }, - [SPECIES_SILVALLY] = SILVALLY_BASE_STATS(TYPE_NORMAL), + [SPECIES_SILVALLY] = SILVALLY_SPECIES_INFO(TYPE_NORMAL), - [SPECIES_MINIOR] = MINIOR_METEOR_BASE_STATS, + [SPECIES_MINIOR] = MINIOR_METEOR_SPECIES_INFO, [SPECIES_KOMALA] = { @@ -19929,7 +19929,7 @@ const struct BaseStats gBaseStats[] = .noFlip = FALSE, }, - [SPECIES_MIMIKYU] = MIMIKYU_BASE_STATS, + [SPECIES_MIMIKYU] = MIMIKYU_SPECIES_INFO, [SPECIES_BRUXISH] = { @@ -20485,7 +20485,7 @@ const struct BaseStats gBaseStats[] = .flags = SPECIES_FLAG_LEGENDARY, }, - [SPECIES_MAGEARNA] = MAGEARNA_BASE_STATS(BODY_COLOR_GRAY), + [SPECIES_MAGEARNA] = MAGEARNA_SPECIES_INFO(BODY_COLOR_GRAY), [SPECIES_MARSHADOW] = { @@ -21535,7 +21535,7 @@ const struct BaseStats gBaseStats[] = .noFlip = FALSE, }, - [SPECIES_CRAMORANT] = CRAMORANT_BASE_STATS, + [SPECIES_CRAMORANT] = CRAMORANT_SPECIES_INFO, [SPECIES_ARROKUDA] = { @@ -21609,7 +21609,7 @@ const struct BaseStats gBaseStats[] = .noFlip = FALSE, }, - [SPECIES_TOXTRICITY] = TOXTRICITY_BASE_STATS(ABILITY_PLUS), + [SPECIES_TOXTRICITY] = TOXTRICITY_SPECIES_INFO(ABILITY_PLUS), [SPECIES_SIZZLIPEDE] = { @@ -21707,9 +21707,9 @@ const struct BaseStats gBaseStats[] = .noFlip = FALSE, }, - [SPECIES_SINISTEA] = SINISTEA_BASE_STATS, + [SPECIES_SINISTEA] = SINISTEA_SPECIES_INFO, - [SPECIES_POLTEAGEIST] = POLTEAGEIST_BASE_STATS, + [SPECIES_POLTEAGEIST] = POLTEAGEIST_SPECIES_INFO, [SPECIES_HATENNA] = { @@ -22024,7 +22024,7 @@ const struct BaseStats gBaseStats[] = .noFlip = FALSE, }, - [SPECIES_ALCREMIE] = ALCREMIE_BASE_STATS(BODY_COLOR_WHITE), + [SPECIES_ALCREMIE] = ALCREMIE_SPECIES_INFO(BODY_COLOR_WHITE), [SPECIES_FALINKS] = { @@ -22196,7 +22196,7 @@ const struct BaseStats gBaseStats[] = .noFlip = FALSE, }, - [SPECIES_MORPEKO] = MORPEKO_BASE_STATS, + [SPECIES_MORPEKO] = MORPEKO_SPECIES_INFO, [SPECIES_CUFANT] = { @@ -22565,7 +22565,7 @@ const struct BaseStats gBaseStats[] = .flags = SPECIES_FLAG_LEGENDARY, }, - [SPECIES_ZARUDE] = ZARUDE_BASE_STATS, + [SPECIES_ZARUDE] = ZARUDE_SPECIES_INFO, [SPECIES_REGIELEKI] = { @@ -25497,55 +25497,55 @@ const struct BaseStats gBaseStats[] = }, #endif - [SPECIES_PIKACHU_COSPLAY] = COSPLAY_PIKACHU_BASE_STATS(FLIP), - [SPECIES_PIKACHU_ROCK_STAR] = COSPLAY_PIKACHU_BASE_STATS(FLIP), - [SPECIES_PIKACHU_BELLE] = COSPLAY_PIKACHU_BASE_STATS(NO_FLIP), - [SPECIES_PIKACHU_POP_STAR] = COSPLAY_PIKACHU_BASE_STATS(NO_FLIP), - [SPECIES_PIKACHU_PH_D] = COSPLAY_PIKACHU_BASE_STATS(FLIP), - [SPECIES_PIKACHU_LIBRE] = COSPLAY_PIKACHU_BASE_STATS(FLIP), + [SPECIES_PIKACHU_COSPLAY] = COSPLAY_PIKACHU_SPECIES_INFO(FLIP), + [SPECIES_PIKACHU_ROCK_STAR] = COSPLAY_PIKACHU_SPECIES_INFO(FLIP), + [SPECIES_PIKACHU_BELLE] = COSPLAY_PIKACHU_SPECIES_INFO(NO_FLIP), + [SPECIES_PIKACHU_POP_STAR] = COSPLAY_PIKACHU_SPECIES_INFO(NO_FLIP), + [SPECIES_PIKACHU_PH_D] = COSPLAY_PIKACHU_SPECIES_INFO(FLIP), + [SPECIES_PIKACHU_LIBRE] = COSPLAY_PIKACHU_SPECIES_INFO(FLIP), - [SPECIES_PIKACHU_ORIGINAL_CAP] = CAP_PIKACHU_BASE_STATS(NO_FLIP), - [SPECIES_PIKACHU_HOENN_CAP] = CAP_PIKACHU_BASE_STATS(FLIP), - [SPECIES_PIKACHU_SINNOH_CAP] = CAP_PIKACHU_BASE_STATS(FLIP), - [SPECIES_PIKACHU_UNOVA_CAP] = CAP_PIKACHU_BASE_STATS(FLIP), - [SPECIES_PIKACHU_KALOS_CAP] = CAP_PIKACHU_BASE_STATS(FLIP), - [SPECIES_PIKACHU_ALOLA_CAP] = CAP_PIKACHU_BASE_STATS(FLIP), - [SPECIES_PIKACHU_PARTNER_CAP] = CAP_PIKACHU_BASE_STATS(NO_FLIP), - [SPECIES_PIKACHU_WORLD_CAP] = CAP_PIKACHU_BASE_STATS(FLIP), + [SPECIES_PIKACHU_ORIGINAL_CAP] = CAP_PIKACHU_SPECIES_INFO(NO_FLIP), + [SPECIES_PIKACHU_HOENN_CAP] = CAP_PIKACHU_SPECIES_INFO(FLIP), + [SPECIES_PIKACHU_SINNOH_CAP] = CAP_PIKACHU_SPECIES_INFO(FLIP), + [SPECIES_PIKACHU_UNOVA_CAP] = CAP_PIKACHU_SPECIES_INFO(FLIP), + [SPECIES_PIKACHU_KALOS_CAP] = CAP_PIKACHU_SPECIES_INFO(FLIP), + [SPECIES_PIKACHU_ALOLA_CAP] = CAP_PIKACHU_SPECIES_INFO(FLIP), + [SPECIES_PIKACHU_PARTNER_CAP] = CAP_PIKACHU_SPECIES_INFO(NO_FLIP), + [SPECIES_PIKACHU_WORLD_CAP] = CAP_PIKACHU_SPECIES_INFO(FLIP), - [SPECIES_PICHU_SPIKY_EARED] = PICHU_BASE_STATS(NO_FLIP), + [SPECIES_PICHU_SPIKY_EARED] = PICHU_SPECIES_INFO(NO_FLIP), - [SPECIES_UNOWN_B] = UNOWN_BASE_STATS(NO_FLIP), - [SPECIES_UNOWN_C] = UNOWN_BASE_STATS(NO_FLIP), - [SPECIES_UNOWN_D] = UNOWN_BASE_STATS(NO_FLIP), - [SPECIES_UNOWN_E] = UNOWN_BASE_STATS(NO_FLIP), - [SPECIES_UNOWN_F] = UNOWN_BASE_STATS(NO_FLIP), - [SPECIES_UNOWN_G] = UNOWN_BASE_STATS(NO_FLIP), - [SPECIES_UNOWN_H] = UNOWN_BASE_STATS(NO_FLIP), - [SPECIES_UNOWN_I] = UNOWN_BASE_STATS(FLIP), - [SPECIES_UNOWN_J] = UNOWN_BASE_STATS(NO_FLIP), - [SPECIES_UNOWN_K] = UNOWN_BASE_STATS(NO_FLIP), - [SPECIES_UNOWN_L] = UNOWN_BASE_STATS(NO_FLIP), - [SPECIES_UNOWN_M] = UNOWN_BASE_STATS(FLIP), - [SPECIES_UNOWN_N] = UNOWN_BASE_STATS(NO_FLIP), - [SPECIES_UNOWN_O] = UNOWN_BASE_STATS(FLIP), - [SPECIES_UNOWN_P] = UNOWN_BASE_STATS(NO_FLIP), - [SPECIES_UNOWN_Q] = UNOWN_BASE_STATS(NO_FLIP), - [SPECIES_UNOWN_R] = UNOWN_BASE_STATS(NO_FLIP), - [SPECIES_UNOWN_S] = UNOWN_BASE_STATS(NO_FLIP), - [SPECIES_UNOWN_T] = UNOWN_BASE_STATS(FLIP), - [SPECIES_UNOWN_U] = UNOWN_BASE_STATS(FLIP), - [SPECIES_UNOWN_V] = UNOWN_BASE_STATS(NO_FLIP), - [SPECIES_UNOWN_W] = UNOWN_BASE_STATS(FLIP), - [SPECIES_UNOWN_X] = UNOWN_BASE_STATS(FLIP), - [SPECIES_UNOWN_Y] = UNOWN_BASE_STATS(FLIP), - [SPECIES_UNOWN_Z] = UNOWN_BASE_STATS(NO_FLIP), - [SPECIES_UNOWN_EMARK] = UNOWN_BASE_STATS(FLIP), - [SPECIES_UNOWN_QMARK] = UNOWN_BASE_STATS(NO_FLIP), + [SPECIES_UNOWN_B] = UNOWN_SPECIES_INFO(NO_FLIP), + [SPECIES_UNOWN_C] = UNOWN_SPECIES_INFO(NO_FLIP), + [SPECIES_UNOWN_D] = UNOWN_SPECIES_INFO(NO_FLIP), + [SPECIES_UNOWN_E] = UNOWN_SPECIES_INFO(NO_FLIP), + [SPECIES_UNOWN_F] = UNOWN_SPECIES_INFO(NO_FLIP), + [SPECIES_UNOWN_G] = UNOWN_SPECIES_INFO(NO_FLIP), + [SPECIES_UNOWN_H] = UNOWN_SPECIES_INFO(NO_FLIP), + [SPECIES_UNOWN_I] = UNOWN_SPECIES_INFO(FLIP), + [SPECIES_UNOWN_J] = UNOWN_SPECIES_INFO(NO_FLIP), + [SPECIES_UNOWN_K] = UNOWN_SPECIES_INFO(NO_FLIP), + [SPECIES_UNOWN_L] = UNOWN_SPECIES_INFO(NO_FLIP), + [SPECIES_UNOWN_M] = UNOWN_SPECIES_INFO(FLIP), + [SPECIES_UNOWN_N] = UNOWN_SPECIES_INFO(NO_FLIP), + [SPECIES_UNOWN_O] = UNOWN_SPECIES_INFO(FLIP), + [SPECIES_UNOWN_P] = UNOWN_SPECIES_INFO(NO_FLIP), + [SPECIES_UNOWN_Q] = UNOWN_SPECIES_INFO(NO_FLIP), + [SPECIES_UNOWN_R] = UNOWN_SPECIES_INFO(NO_FLIP), + [SPECIES_UNOWN_S] = UNOWN_SPECIES_INFO(NO_FLIP), + [SPECIES_UNOWN_T] = UNOWN_SPECIES_INFO(FLIP), + [SPECIES_UNOWN_U] = UNOWN_SPECIES_INFO(FLIP), + [SPECIES_UNOWN_V] = UNOWN_SPECIES_INFO(NO_FLIP), + [SPECIES_UNOWN_W] = UNOWN_SPECIES_INFO(FLIP), + [SPECIES_UNOWN_X] = UNOWN_SPECIES_INFO(FLIP), + [SPECIES_UNOWN_Y] = UNOWN_SPECIES_INFO(FLIP), + [SPECIES_UNOWN_Z] = UNOWN_SPECIES_INFO(NO_FLIP), + [SPECIES_UNOWN_EMARK] = UNOWN_SPECIES_INFO(FLIP), + [SPECIES_UNOWN_QMARK] = UNOWN_SPECIES_INFO(NO_FLIP), - [SPECIES_CASTFORM_SUNNY] = CASTFORM_BASE_STATS(TYPE_FIRE, BODY_COLOR_RED), - [SPECIES_CASTFORM_RAINY] = CASTFORM_BASE_STATS(TYPE_WATER, BODY_COLOR_BLUE), - [SPECIES_CASTFORM_SNOWY] = CASTFORM_BASE_STATS(TYPE_ICE, BODY_COLOR_WHITE), + [SPECIES_CASTFORM_SUNNY] = CASTFORM_SPECIES_INFO(TYPE_FIRE, BODY_COLOR_RED), + [SPECIES_CASTFORM_RAINY] = CASTFORM_SPECIES_INFO(TYPE_WATER, BODY_COLOR_BLUE), + [SPECIES_CASTFORM_SNOWY] = CASTFORM_SPECIES_INFO(TYPE_ICE, BODY_COLOR_WHITE), [SPECIES_DEOXYS_ATTACK] = { @@ -25622,8 +25622,8 @@ const struct BaseStats gBaseStats[] = }, #if P_GEN_4_POKEMON == TRUE - [SPECIES_BURMY_SANDY_CLOAK] = BURMY_BASE_STATS(BODY_COLOR_BROWN), - [SPECIES_BURMY_TRASH_CLOAK] = BURMY_BASE_STATS(BODY_COLOR_RED), + [SPECIES_BURMY_SANDY_CLOAK] = BURMY_SPECIES_INFO(BODY_COLOR_BROWN), + [SPECIES_BURMY_TRASH_CLOAK] = BURMY_SPECIES_INFO(BODY_COLOR_RED), [SPECIES_WORMADAM_SANDY_CLOAK] = { @@ -25676,17 +25676,17 @@ const struct BaseStats gBaseStats[] = .noFlip = FALSE, }, - [SPECIES_CHERRIM_SUNSHINE] = CHERRIM_BASE_STATS(BODY_COLOR_PINK), + [SPECIES_CHERRIM_SUNSHINE] = CHERRIM_SPECIES_INFO(BODY_COLOR_PINK), - [SPECIES_SHELLOS_EAST_SEA] = SHELLOS_BASE_STATS(BODY_COLOR_BLUE), + [SPECIES_SHELLOS_EAST_SEA] = SHELLOS_SPECIES_INFO(BODY_COLOR_BLUE), - [SPECIES_GASTRODON_EAST_SEA] = GASTRODON_BASE_STATS(BODY_COLOR_BLUE), + [SPECIES_GASTRODON_EAST_SEA] = GASTRODON_SPECIES_INFO(BODY_COLOR_BLUE), - [SPECIES_ROTOM_HEAT] = ROTOM_FORM_BASE_STATS(TYPE_FIRE, FLIP), - [SPECIES_ROTOM_WASH] = ROTOM_FORM_BASE_STATS(TYPE_WATER, NO_FLIP), - [SPECIES_ROTOM_FROST] = ROTOM_FORM_BASE_STATS(TYPE_ICE, FLIP), - [SPECIES_ROTOM_FAN] = ROTOM_FORM_BASE_STATS(TYPE_FLYING, FLIP), - [SPECIES_ROTOM_MOW] = ROTOM_FORM_BASE_STATS(TYPE_GRASS, FLIP), + [SPECIES_ROTOM_HEAT] = ROTOM_FORM_SPECIES_INFO(TYPE_FIRE, FLIP), + [SPECIES_ROTOM_WASH] = ROTOM_FORM_SPECIES_INFO(TYPE_WATER, NO_FLIP), + [SPECIES_ROTOM_FROST] = ROTOM_FORM_SPECIES_INFO(TYPE_ICE, FLIP), + [SPECIES_ROTOM_FAN] = ROTOM_FORM_SPECIES_INFO(TYPE_FLYING, FLIP), + [SPECIES_ROTOM_MOW] = ROTOM_FORM_SPECIES_INFO(TYPE_GRASS, FLIP), [SPECIES_DIALGA_ORIGIN] = { @@ -25788,23 +25788,23 @@ const struct BaseStats gBaseStats[] = .noFlip = TRUE, }, - [SPECIES_ARCEUS_FIGHTING] = ARCEUS_BASE_STATS(TYPE_FIGHTING), - [SPECIES_ARCEUS_FLYING] = ARCEUS_BASE_STATS(TYPE_FLYING), - [SPECIES_ARCEUS_POISON] = ARCEUS_BASE_STATS(TYPE_POISON), - [SPECIES_ARCEUS_GROUND] = ARCEUS_BASE_STATS(TYPE_GROUND), - [SPECIES_ARCEUS_ROCK] = ARCEUS_BASE_STATS(TYPE_ROCK), - [SPECIES_ARCEUS_BUG] = ARCEUS_BASE_STATS(TYPE_BUG), - [SPECIES_ARCEUS_GHOST] = ARCEUS_BASE_STATS(TYPE_GHOST), - [SPECIES_ARCEUS_STEEL] = ARCEUS_BASE_STATS(TYPE_STEEL), - [SPECIES_ARCEUS_FIRE] = ARCEUS_BASE_STATS(TYPE_FIRE), - [SPECIES_ARCEUS_WATER] = ARCEUS_BASE_STATS(TYPE_WATER), - [SPECIES_ARCEUS_GRASS] = ARCEUS_BASE_STATS(TYPE_GRASS), - [SPECIES_ARCEUS_ELECTRIC] = ARCEUS_BASE_STATS(TYPE_ELECTRIC), - [SPECIES_ARCEUS_PSYCHIC] = ARCEUS_BASE_STATS(TYPE_PSYCHIC), - [SPECIES_ARCEUS_ICE] = ARCEUS_BASE_STATS(TYPE_ICE), - [SPECIES_ARCEUS_DRAGON] = ARCEUS_BASE_STATS(TYPE_DRAGON), - [SPECIES_ARCEUS_DARK] = ARCEUS_BASE_STATS(TYPE_DARK), - [SPECIES_ARCEUS_FAIRY] = ARCEUS_BASE_STATS(TYPE_FAIRY), + [SPECIES_ARCEUS_FIGHTING] = ARCEUS_SPECIES_INFO(TYPE_FIGHTING), + [SPECIES_ARCEUS_FLYING] = ARCEUS_SPECIES_INFO(TYPE_FLYING), + [SPECIES_ARCEUS_POISON] = ARCEUS_SPECIES_INFO(TYPE_POISON), + [SPECIES_ARCEUS_GROUND] = ARCEUS_SPECIES_INFO(TYPE_GROUND), + [SPECIES_ARCEUS_ROCK] = ARCEUS_SPECIES_INFO(TYPE_ROCK), + [SPECIES_ARCEUS_BUG] = ARCEUS_SPECIES_INFO(TYPE_BUG), + [SPECIES_ARCEUS_GHOST] = ARCEUS_SPECIES_INFO(TYPE_GHOST), + [SPECIES_ARCEUS_STEEL] = ARCEUS_SPECIES_INFO(TYPE_STEEL), + [SPECIES_ARCEUS_FIRE] = ARCEUS_SPECIES_INFO(TYPE_FIRE), + [SPECIES_ARCEUS_WATER] = ARCEUS_SPECIES_INFO(TYPE_WATER), + [SPECIES_ARCEUS_GRASS] = ARCEUS_SPECIES_INFO(TYPE_GRASS), + [SPECIES_ARCEUS_ELECTRIC] = ARCEUS_SPECIES_INFO(TYPE_ELECTRIC), + [SPECIES_ARCEUS_PSYCHIC] = ARCEUS_SPECIES_INFO(TYPE_PSYCHIC), + [SPECIES_ARCEUS_ICE] = ARCEUS_SPECIES_INFO(TYPE_ICE), + [SPECIES_ARCEUS_DRAGON] = ARCEUS_SPECIES_INFO(TYPE_DRAGON), + [SPECIES_ARCEUS_DARK] = ARCEUS_SPECIES_INFO(TYPE_DARK), + [SPECIES_ARCEUS_FAIRY] = ARCEUS_SPECIES_INFO(TYPE_FAIRY), #endif #if P_GEN_5_POKEMON == TRUE @@ -25907,13 +25907,13 @@ const struct BaseStats gBaseStats[] = .flags = SPECIES_FLAG_GALARIAN_FORM, }, - [SPECIES_DEERLING_SUMMER] = DEERLING_BASE_STATS(BODY_COLOR_GREEN), - [SPECIES_DEERLING_AUTUMN] = DEERLING_BASE_STATS(BODY_COLOR_RED), - [SPECIES_DEERLING_WINTER] = DEERLING_BASE_STATS(BODY_COLOR_BROWN), + [SPECIES_DEERLING_SUMMER] = DEERLING_SPECIES_INFO(BODY_COLOR_GREEN), + [SPECIES_DEERLING_AUTUMN] = DEERLING_SPECIES_INFO(BODY_COLOR_RED), + [SPECIES_DEERLING_WINTER] = DEERLING_SPECIES_INFO(BODY_COLOR_BROWN), - [SPECIES_SAWSBUCK_SUMMER] = SAWSBUCK_BASE_STATS, - [SPECIES_SAWSBUCK_AUTUMN] = SAWSBUCK_BASE_STATS, - [SPECIES_SAWSBUCK_WINTER] = SAWSBUCK_BASE_STATS, + [SPECIES_SAWSBUCK_SUMMER] = SAWSBUCK_SPECIES_INFO, + [SPECIES_SAWSBUCK_AUTUMN] = SAWSBUCK_SPECIES_INFO, + [SPECIES_SAWSBUCK_WINTER] = SAWSBUCK_SPECIES_INFO, [SPECIES_TORNADUS_THERIAN] = { @@ -26094,10 +26094,10 @@ const struct BaseStats gBaseStats[] = .flags = SPECIES_FLAG_MYTHICAL, }, - [SPECIES_GENESECT_DOUSE_DRIVE] = GENESECT_BASE_STATS, - [SPECIES_GENESECT_SHOCK_DRIVE] = GENESECT_BASE_STATS, - [SPECIES_GENESECT_BURN_DRIVE] = GENESECT_BASE_STATS, - [SPECIES_GENESECT_CHILL_DRIVE] = GENESECT_BASE_STATS, + [SPECIES_GENESECT_DOUSE_DRIVE] = GENESECT_SPECIES_INFO, + [SPECIES_GENESECT_SHOCK_DRIVE] = GENESECT_SPECIES_INFO, + [SPECIES_GENESECT_BURN_DRIVE] = GENESECT_SPECIES_INFO, + [SPECIES_GENESECT_CHILL_DRIVE] = GENESECT_SPECIES_INFO, #endif #if P_GEN_6_POKEMON == TRUE @@ -26149,35 +26149,35 @@ const struct BaseStats gBaseStats[] = .noFlip = TRUE, }, - [SPECIES_VIVILLON_POLAR] = VIVILLON_BASE_STATS(BODY_COLOR_BLUE), - [SPECIES_VIVILLON_TUNDRA] = VIVILLON_BASE_STATS(BODY_COLOR_BLUE), - [SPECIES_VIVILLON_CONTINENTAL] = VIVILLON_BASE_STATS(BODY_COLOR_YELLOW), - [SPECIES_VIVILLON_GARDEN] = VIVILLON_BASE_STATS(BODY_COLOR_GREEN), - [SPECIES_VIVILLON_ELEGANT] = VIVILLON_BASE_STATS(BODY_COLOR_PURPLE), - [SPECIES_VIVILLON_MEADOW] = VIVILLON_BASE_STATS(BODY_COLOR_PINK), - [SPECIES_VIVILLON_MODERN] = VIVILLON_BASE_STATS(BODY_COLOR_RED), - [SPECIES_VIVILLON_MARINE] = VIVILLON_BASE_STATS(BODY_COLOR_BLUE), - [SPECIES_VIVILLON_ARCHIPELAGO] = VIVILLON_BASE_STATS(BODY_COLOR_BROWN), - [SPECIES_VIVILLON_HIGH_PLAINS] = VIVILLON_BASE_STATS(BODY_COLOR_BROWN), - [SPECIES_VIVILLON_SANDSTORM] = VIVILLON_BASE_STATS(BODY_COLOR_BROWN), - [SPECIES_VIVILLON_RIVER] = VIVILLON_BASE_STATS(BODY_COLOR_BROWN), - [SPECIES_VIVILLON_MONSOON] = VIVILLON_BASE_STATS(BODY_COLOR_GRAY), - [SPECIES_VIVILLON_SAVANNA] = VIVILLON_BASE_STATS(BODY_COLOR_GREEN), - [SPECIES_VIVILLON_SUN] = VIVILLON_BASE_STATS(BODY_COLOR_RED), - [SPECIES_VIVILLON_OCEAN] = VIVILLON_BASE_STATS(BODY_COLOR_RED), - [SPECIES_VIVILLON_JUNGLE] = VIVILLON_BASE_STATS(BODY_COLOR_GREEN), - [SPECIES_VIVILLON_FANCY] = VIVILLON_BASE_STATS(BODY_COLOR_PINK), - [SPECIES_VIVILLON_POKE_BALL] = VIVILLON_BASE_STATS(BODY_COLOR_RED), + [SPECIES_VIVILLON_POLAR] = VIVILLON_SPECIES_INFO(BODY_COLOR_BLUE), + [SPECIES_VIVILLON_TUNDRA] = VIVILLON_SPECIES_INFO(BODY_COLOR_BLUE), + [SPECIES_VIVILLON_CONTINENTAL] = VIVILLON_SPECIES_INFO(BODY_COLOR_YELLOW), + [SPECIES_VIVILLON_GARDEN] = VIVILLON_SPECIES_INFO(BODY_COLOR_GREEN), + [SPECIES_VIVILLON_ELEGANT] = VIVILLON_SPECIES_INFO(BODY_COLOR_PURPLE), + [SPECIES_VIVILLON_MEADOW] = VIVILLON_SPECIES_INFO(BODY_COLOR_PINK), + [SPECIES_VIVILLON_MODERN] = VIVILLON_SPECIES_INFO(BODY_COLOR_RED), + [SPECIES_VIVILLON_MARINE] = VIVILLON_SPECIES_INFO(BODY_COLOR_BLUE), + [SPECIES_VIVILLON_ARCHIPELAGO] = VIVILLON_SPECIES_INFO(BODY_COLOR_BROWN), + [SPECIES_VIVILLON_HIGH_PLAINS] = VIVILLON_SPECIES_INFO(BODY_COLOR_BROWN), + [SPECIES_VIVILLON_SANDSTORM] = VIVILLON_SPECIES_INFO(BODY_COLOR_BROWN), + [SPECIES_VIVILLON_RIVER] = VIVILLON_SPECIES_INFO(BODY_COLOR_BROWN), + [SPECIES_VIVILLON_MONSOON] = VIVILLON_SPECIES_INFO(BODY_COLOR_GRAY), + [SPECIES_VIVILLON_SAVANNA] = VIVILLON_SPECIES_INFO(BODY_COLOR_GREEN), + [SPECIES_VIVILLON_SUN] = VIVILLON_SPECIES_INFO(BODY_COLOR_RED), + [SPECIES_VIVILLON_OCEAN] = VIVILLON_SPECIES_INFO(BODY_COLOR_RED), + [SPECIES_VIVILLON_JUNGLE] = VIVILLON_SPECIES_INFO(BODY_COLOR_GREEN), + [SPECIES_VIVILLON_FANCY] = VIVILLON_SPECIES_INFO(BODY_COLOR_PINK), + [SPECIES_VIVILLON_POKE_BALL] = VIVILLON_SPECIES_INFO(BODY_COLOR_RED), - [SPECIES_FLABEBE_YELLOW_FLOWER] = FLABEBE_BASE_STATS, - [SPECIES_FLABEBE_ORANGE_FLOWER] = FLABEBE_BASE_STATS, - [SPECIES_FLABEBE_BLUE_FLOWER] = FLABEBE_BASE_STATS, - [SPECIES_FLABEBE_WHITE_FLOWER] = FLABEBE_BASE_STATS, + [SPECIES_FLABEBE_YELLOW_FLOWER] = FLABEBE_SPECIES_INFO, + [SPECIES_FLABEBE_ORANGE_FLOWER] = FLABEBE_SPECIES_INFO, + [SPECIES_FLABEBE_BLUE_FLOWER] = FLABEBE_SPECIES_INFO, + [SPECIES_FLABEBE_WHITE_FLOWER] = FLABEBE_SPECIES_INFO, - [SPECIES_FLOETTE_YELLOW_FLOWER] = FLOETTE_BASE_STATS, - [SPECIES_FLOETTE_ORANGE_FLOWER] = FLOETTE_BASE_STATS, - [SPECIES_FLOETTE_BLUE_FLOWER] = FLOETTE_BASE_STATS, - [SPECIES_FLOETTE_WHITE_FLOWER] = FLOETTE_BASE_STATS, + [SPECIES_FLOETTE_YELLOW_FLOWER] = FLOETTE_SPECIES_INFO, + [SPECIES_FLOETTE_ORANGE_FLOWER] = FLOETTE_SPECIES_INFO, + [SPECIES_FLOETTE_BLUE_FLOWER] = FLOETTE_SPECIES_INFO, + [SPECIES_FLOETTE_WHITE_FLOWER] = FLOETTE_SPECIES_INFO, [SPECIES_FLOETTE_ETERNAL_FLOWER] = { @@ -26203,20 +26203,20 @@ const struct BaseStats gBaseStats[] = .noFlip = FALSE, }, - [SPECIES_FLORGES_YELLOW_FLOWER] = FLORGES_BASE_STATS, - [SPECIES_FLORGES_ORANGE_FLOWER] = FLORGES_BASE_STATS, - [SPECIES_FLORGES_BLUE_FLOWER] = FLORGES_BASE_STATS, - [SPECIES_FLORGES_WHITE_FLOWER] = FLORGES_BASE_STATS, + [SPECIES_FLORGES_YELLOW_FLOWER] = FLORGES_SPECIES_INFO, + [SPECIES_FLORGES_ORANGE_FLOWER] = FLORGES_SPECIES_INFO, + [SPECIES_FLORGES_BLUE_FLOWER] = FLORGES_SPECIES_INFO, + [SPECIES_FLORGES_WHITE_FLOWER] = FLORGES_SPECIES_INFO, - [SPECIES_FURFROU_HEART_TRIM] = FURFROU_BASE_STATS(FLIP), - [SPECIES_FURFROU_STAR_TRIM] = FURFROU_BASE_STATS(FLIP), - [SPECIES_FURFROU_DIAMOND_TRIM] = FURFROU_BASE_STATS(FLIP), - [SPECIES_FURFROU_DEBUTANTE_TRIM] = FURFROU_BASE_STATS(NO_FLIP), - [SPECIES_FURFROU_MATRON_TRIM] = FURFROU_BASE_STATS(FLIP), - [SPECIES_FURFROU_DANDY_TRIM] = FURFROU_BASE_STATS(FLIP), - [SPECIES_FURFROU_LA_REINE_TRIM] = FURFROU_BASE_STATS(FLIP), - [SPECIES_FURFROU_KABUKI_TRIM] = FURFROU_BASE_STATS(FLIP), - [SPECIES_FURFROU_PHARAOH_TRIM] = FURFROU_BASE_STATS(FLIP), + [SPECIES_FURFROU_HEART_TRIM] = FURFROU_SPECIES_INFO(FLIP), + [SPECIES_FURFROU_STAR_TRIM] = FURFROU_SPECIES_INFO(FLIP), + [SPECIES_FURFROU_DIAMOND_TRIM] = FURFROU_SPECIES_INFO(FLIP), + [SPECIES_FURFROU_DEBUTANTE_TRIM] = FURFROU_SPECIES_INFO(NO_FLIP), + [SPECIES_FURFROU_MATRON_TRIM] = FURFROU_SPECIES_INFO(FLIP), + [SPECIES_FURFROU_DANDY_TRIM] = FURFROU_SPECIES_INFO(FLIP), + [SPECIES_FURFROU_LA_REINE_TRIM] = FURFROU_SPECIES_INFO(FLIP), + [SPECIES_FURFROU_KABUKI_TRIM] = FURFROU_SPECIES_INFO(FLIP), + [SPECIES_FURFROU_PHARAOH_TRIM] = FURFROU_SPECIES_INFO(FLIP), [SPECIES_MEOWSTIC_FEMALE] = { @@ -26280,7 +26280,7 @@ const struct BaseStats gBaseStats[] = .baseSpeed = 56, .baseSpAttack = 44, .baseSpDefense = 55, - PUMKPABOO_MISC_STATS, + PUMKPABOO_MISC_INFO, }, [SPECIES_PUMPKABOO_LARGE] = @@ -26291,7 +26291,7 @@ const struct BaseStats gBaseStats[] = .baseSpeed = 46, .baseSpAttack = 44, .baseSpDefense = 55, - PUMKPABOO_MISC_STATS, + PUMKPABOO_MISC_INFO, }, [SPECIES_PUMPKABOO_SUPER] = @@ -26304,7 +26304,7 @@ const struct BaseStats gBaseStats[] = .baseSpDefense = 55, .itemCommon = ITEM_MIRACLE_SEED, .itemRare = ITEM_MIRACLE_SEED, - PUMKPABOO_MISC_STATS, + PUMKPABOO_MISC_INFO, }, [SPECIES_GOURGEIST_SMALL] = @@ -26315,7 +26315,7 @@ const struct BaseStats gBaseStats[] = .baseSpeed = 99, .baseSpAttack = 58, .baseSpDefense = 75, - GOURGEIST_MISC_STATS, + GOURGEIST_MISC_INFO, }, [SPECIES_GOURGEIST_LARGE] = @@ -26326,7 +26326,7 @@ const struct BaseStats gBaseStats[] = .baseSpeed = 69, .baseSpAttack = 58, .baseSpDefense = 75, - GOURGEIST_MISC_STATS, + GOURGEIST_MISC_INFO, }, [SPECIES_GOURGEIST_SUPER] = @@ -26339,14 +26339,14 @@ const struct BaseStats gBaseStats[] = .baseSpDefense = 75, .itemCommon = ITEM_MIRACLE_SEED, .itemRare = ITEM_MIRACLE_SEED, - GOURGEIST_MISC_STATS, + GOURGEIST_MISC_INFO, }, - [SPECIES_XERNEAS_ACTIVE] = XERNEAS_BASE_STATS, + [SPECIES_XERNEAS_ACTIVE] = XERNEAS_SPECIES_INFO, - [SPECIES_ZYGARDE_10] = ZYGARDE_10_BASE_STATS(ABILITY_AURA_BREAK), - [SPECIES_ZYGARDE_10_POWER_CONSTRUCT] = ZYGARDE_50_BASE_STATS(ABILITY_POWER_CONSTRUCT), - [SPECIES_ZYGARDE_50_POWER_CONSTRUCT] = ZYGARDE_50_BASE_STATS(ABILITY_POWER_CONSTRUCT), + [SPECIES_ZYGARDE_10] = ZYGARDE_10_SPECIES_INFO(ABILITY_AURA_BREAK), + [SPECIES_ZYGARDE_10_POWER_CONSTRUCT] = ZYGARDE_50_SPECIES_INFO(ABILITY_POWER_CONSTRUCT), + [SPECIES_ZYGARDE_50_POWER_CONSTRUCT] = ZYGARDE_50_SPECIES_INFO(ABILITY_POWER_CONSTRUCT), [SPECIES_ZYGARDE_COMPLETE] = { @@ -26400,11 +26400,11 @@ const struct BaseStats gBaseStats[] = #endif #if P_GEN_7_POKEMON == TRUE - [SPECIES_ORICORIO_POM_POM] = ORICORIO_BASE_STATS(TYPE_ELECTRIC, BODY_COLOR_YELLOW), - [SPECIES_ORICORIO_PAU] = ORICORIO_BASE_STATS(TYPE_PSYCHIC, BODY_COLOR_PINK), - [SPECIES_ORICORIO_SENSU] = ORICORIO_BASE_STATS(TYPE_GHOST, BODY_COLOR_PURPLE), + [SPECIES_ORICORIO_POM_POM] = ORICORIO_SPECIES_INFO(TYPE_ELECTRIC, BODY_COLOR_YELLOW), + [SPECIES_ORICORIO_PAU] = ORICORIO_SPECIES_INFO(TYPE_PSYCHIC, BODY_COLOR_PINK), + [SPECIES_ORICORIO_SENSU] = ORICORIO_SPECIES_INFO(TYPE_GHOST, BODY_COLOR_PURPLE), - [SPECIES_ROCKRUFF_OWN_TEMPO] = ROCKRUFF_BASE_STATS(ABILITY_OWN_TEMPO, ABILITY_NONE, ABILITY_NONE), + [SPECIES_ROCKRUFF_OWN_TEMPO] = ROCKRUFF_SPECIES_INFO(ABILITY_OWN_TEMPO, ABILITY_NONE, ABILITY_NONE), [SPECIES_LYCANROC_MIDNIGHT] = { @@ -26478,40 +26478,40 @@ const struct BaseStats gBaseStats[] = .noFlip = FALSE, }, - [SPECIES_SILVALLY_FIGHTING] = SILVALLY_BASE_STATS(TYPE_FIGHTING), - [SPECIES_SILVALLY_FLYING] = SILVALLY_BASE_STATS(TYPE_FLYING), - [SPECIES_SILVALLY_POISON] = SILVALLY_BASE_STATS(TYPE_POISON), - [SPECIES_SILVALLY_GROUND] = SILVALLY_BASE_STATS(TYPE_GROUND), - [SPECIES_SILVALLY_ROCK] = SILVALLY_BASE_STATS(TYPE_ROCK), - [SPECIES_SILVALLY_BUG] = SILVALLY_BASE_STATS(TYPE_BUG), - [SPECIES_SILVALLY_GHOST] = SILVALLY_BASE_STATS(TYPE_GHOST), - [SPECIES_SILVALLY_STEEL] = SILVALLY_BASE_STATS(TYPE_STEEL), - [SPECIES_SILVALLY_FIRE] = SILVALLY_BASE_STATS(TYPE_FIRE), - [SPECIES_SILVALLY_WATER] = SILVALLY_BASE_STATS(TYPE_WATER), - [SPECIES_SILVALLY_GRASS] = SILVALLY_BASE_STATS(TYPE_GRASS), - [SPECIES_SILVALLY_ELECTRIC] = SILVALLY_BASE_STATS(TYPE_ELECTRIC), - [SPECIES_SILVALLY_PSYCHIC] = SILVALLY_BASE_STATS(TYPE_PSYCHIC), - [SPECIES_SILVALLY_ICE] = SILVALLY_BASE_STATS(TYPE_ICE), - [SPECIES_SILVALLY_DRAGON] = SILVALLY_BASE_STATS(TYPE_DRAGON), - [SPECIES_SILVALLY_DARK] = SILVALLY_BASE_STATS(TYPE_DARK), - [SPECIES_SILVALLY_FAIRY] = SILVALLY_BASE_STATS(TYPE_FAIRY), + [SPECIES_SILVALLY_FIGHTING] = SILVALLY_SPECIES_INFO(TYPE_FIGHTING), + [SPECIES_SILVALLY_FLYING] = SILVALLY_SPECIES_INFO(TYPE_FLYING), + [SPECIES_SILVALLY_POISON] = SILVALLY_SPECIES_INFO(TYPE_POISON), + [SPECIES_SILVALLY_GROUND] = SILVALLY_SPECIES_INFO(TYPE_GROUND), + [SPECIES_SILVALLY_ROCK] = SILVALLY_SPECIES_INFO(TYPE_ROCK), + [SPECIES_SILVALLY_BUG] = SILVALLY_SPECIES_INFO(TYPE_BUG), + [SPECIES_SILVALLY_GHOST] = SILVALLY_SPECIES_INFO(TYPE_GHOST), + [SPECIES_SILVALLY_STEEL] = SILVALLY_SPECIES_INFO(TYPE_STEEL), + [SPECIES_SILVALLY_FIRE] = SILVALLY_SPECIES_INFO(TYPE_FIRE), + [SPECIES_SILVALLY_WATER] = SILVALLY_SPECIES_INFO(TYPE_WATER), + [SPECIES_SILVALLY_GRASS] = SILVALLY_SPECIES_INFO(TYPE_GRASS), + [SPECIES_SILVALLY_ELECTRIC] = SILVALLY_SPECIES_INFO(TYPE_ELECTRIC), + [SPECIES_SILVALLY_PSYCHIC] = SILVALLY_SPECIES_INFO(TYPE_PSYCHIC), + [SPECIES_SILVALLY_ICE] = SILVALLY_SPECIES_INFO(TYPE_ICE), + [SPECIES_SILVALLY_DRAGON] = SILVALLY_SPECIES_INFO(TYPE_DRAGON), + [SPECIES_SILVALLY_DARK] = SILVALLY_SPECIES_INFO(TYPE_DARK), + [SPECIES_SILVALLY_FAIRY] = SILVALLY_SPECIES_INFO(TYPE_FAIRY), - [SPECIES_MINIOR_METEOR_ORANGE] = MINIOR_METEOR_BASE_STATS, - [SPECIES_MINIOR_METEOR_YELLOW] = MINIOR_METEOR_BASE_STATS, - [SPECIES_MINIOR_METEOR_GREEN] = MINIOR_METEOR_BASE_STATS, - [SPECIES_MINIOR_METEOR_BLUE] = MINIOR_METEOR_BASE_STATS, - [SPECIES_MINIOR_METEOR_INDIGO] = MINIOR_METEOR_BASE_STATS, - [SPECIES_MINIOR_METEOR_VIOLET] = MINIOR_METEOR_BASE_STATS, + [SPECIES_MINIOR_METEOR_ORANGE] = MINIOR_METEOR_SPECIES_INFO, + [SPECIES_MINIOR_METEOR_YELLOW] = MINIOR_METEOR_SPECIES_INFO, + [SPECIES_MINIOR_METEOR_GREEN] = MINIOR_METEOR_SPECIES_INFO, + [SPECIES_MINIOR_METEOR_BLUE] = MINIOR_METEOR_SPECIES_INFO, + [SPECIES_MINIOR_METEOR_INDIGO] = MINIOR_METEOR_SPECIES_INFO, + [SPECIES_MINIOR_METEOR_VIOLET] = MINIOR_METEOR_SPECIES_INFO, - [SPECIES_MINIOR_CORE_RED] = MINIOR_CORE_BASE_STATS(BODY_COLOR_RED), - [SPECIES_MINIOR_CORE_ORANGE] = MINIOR_CORE_BASE_STATS(BODY_COLOR_RED), - [SPECIES_MINIOR_CORE_YELLOW] = MINIOR_CORE_BASE_STATS(BODY_COLOR_YELLOW), - [SPECIES_MINIOR_CORE_GREEN] = MINIOR_CORE_BASE_STATS(BODY_COLOR_GREEN), - [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_MINIOR_CORE_RED] = MINIOR_CORE_SPECIES_INFO(BODY_COLOR_RED), + [SPECIES_MINIOR_CORE_ORANGE] = MINIOR_CORE_SPECIES_INFO(BODY_COLOR_RED), + [SPECIES_MINIOR_CORE_YELLOW] = MINIOR_CORE_SPECIES_INFO(BODY_COLOR_YELLOW), + [SPECIES_MINIOR_CORE_GREEN] = MINIOR_CORE_SPECIES_INFO(BODY_COLOR_GREEN), + [SPECIES_MINIOR_CORE_BLUE] = MINIOR_CORE_SPECIES_INFO(BODY_COLOR_BLUE), + [SPECIES_MINIOR_CORE_INDIGO] = MINIOR_CORE_SPECIES_INFO(BODY_COLOR_BLUE), + [SPECIES_MINIOR_CORE_VIOLET] = MINIOR_CORE_SPECIES_INFO(BODY_COLOR_PURPLE), - [SPECIES_MIMIKYU_BUSTED] = MIMIKYU_BASE_STATS, + [SPECIES_MIMIKYU_BUSTED] = MIMIKYU_SPECIES_INFO, [SPECIES_NECROZMA_DUSK_MANE] = { @@ -26590,27 +26590,27 @@ const struct BaseStats gBaseStats[] = .flags = SPECIES_FLAG_LEGENDARY, }, - [SPECIES_MAGEARNA_ORIGINAL_COLOR] = MAGEARNA_BASE_STATS(BODY_COLOR_RED), + [SPECIES_MAGEARNA_ORIGINAL_COLOR] = MAGEARNA_SPECIES_INFO(BODY_COLOR_RED), #endif #if P_GEN_8_POKEMON == TRUE - [SPECIES_CRAMORANT_GULPING] = CRAMORANT_BASE_STATS, - [SPECIES_CRAMORANT_GORGING] = CRAMORANT_BASE_STATS, + [SPECIES_CRAMORANT_GULPING] = CRAMORANT_SPECIES_INFO, + [SPECIES_CRAMORANT_GORGING] = CRAMORANT_SPECIES_INFO, - [SPECIES_TOXTRICITY_LOW_KEY] = TOXTRICITY_BASE_STATS(ABILITY_MINUS), + [SPECIES_TOXTRICITY_LOW_KEY] = TOXTRICITY_SPECIES_INFO(ABILITY_MINUS), - [SPECIES_SINISTEA_ANTIQUE] = SINISTEA_BASE_STATS, + [SPECIES_SINISTEA_ANTIQUE] = SINISTEA_SPECIES_INFO, - [SPECIES_POLTEAGEIST_ANTIQUE] = POLTEAGEIST_BASE_STATS, + [SPECIES_POLTEAGEIST_ANTIQUE] = POLTEAGEIST_SPECIES_INFO, - [SPECIES_ALCREMIE_RUBY_CREAM] = ALCREMIE_BASE_STATS(BODY_COLOR_PINK), - [SPECIES_ALCREMIE_MATCHA_CREAM] = ALCREMIE_BASE_STATS(BODY_COLOR_GREEN), - [SPECIES_ALCREMIE_MINT_CREAM] = ALCREMIE_BASE_STATS(BODY_COLOR_BLUE), - [SPECIES_ALCREMIE_LEMON_CREAM] = ALCREMIE_BASE_STATS(BODY_COLOR_YELLOW), - [SPECIES_ALCREMIE_SALTED_CREAM] = ALCREMIE_BASE_STATS(BODY_COLOR_WHITE), - [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_ALCREMIE_RUBY_CREAM] = ALCREMIE_SPECIES_INFO(BODY_COLOR_PINK), + [SPECIES_ALCREMIE_MATCHA_CREAM] = ALCREMIE_SPECIES_INFO(BODY_COLOR_GREEN), + [SPECIES_ALCREMIE_MINT_CREAM] = ALCREMIE_SPECIES_INFO(BODY_COLOR_BLUE), + [SPECIES_ALCREMIE_LEMON_CREAM] = ALCREMIE_SPECIES_INFO(BODY_COLOR_YELLOW), + [SPECIES_ALCREMIE_SALTED_CREAM] = ALCREMIE_SPECIES_INFO(BODY_COLOR_WHITE), + [SPECIES_ALCREMIE_RUBY_SWIRL] = ALCREMIE_SPECIES_INFO(BODY_COLOR_YELLOW), + [SPECIES_ALCREMIE_CARAMEL_SWIRL] = ALCREMIE_SPECIES_INFO(BODY_COLOR_BROWN), + [SPECIES_ALCREMIE_RAINBOW_SWIRL] = ALCREMIE_SPECIES_INFO(BODY_COLOR_YELLOW), [SPECIES_EISCUE_NOICE_FACE] = { @@ -26660,7 +26660,7 @@ const struct BaseStats gBaseStats[] = .noFlip = FALSE, }, - [SPECIES_MORPEKO_HANGRY] = MORPEKO_BASE_STATS, + [SPECIES_MORPEKO_HANGRY] = MORPEKO_SPECIES_INFO, [SPECIES_ZACIAN_CROWNED_SWORD] = { @@ -26762,7 +26762,7 @@ const struct BaseStats gBaseStats[] = .flags = SPECIES_FLAG_LEGENDARY, }, - [SPECIES_ZARUDE_DADA] = ZARUDE_BASE_STATS, + [SPECIES_ZARUDE_DADA] = ZARUDE_SPECIES_INFO, [SPECIES_CALYREX_ICE_RIDER] = { diff --git a/src/data/pokemon_graphics/front_pic_anims.h b/src/data/pokemon_graphics/front_pic_anims.h index b152a0d6d..b493b4357 100644 --- a/src/data/pokemon_graphics/front_pic_anims.h +++ b/src/data/pokemon_graphics/front_pic_anims.h @@ -1,4 +1,4 @@ -static const union AnimCmd sAnim_NONE_1[] = +static const union AnimCmd sAnim_None_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -6,7 +6,7 @@ ANIMCMD_END, }; -static const union AnimCmd sAnim_BULBASAUR_1[] = +static const union AnimCmd sAnim_Bulbasaur_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -14,7 +14,7 @@ static const union AnimCmd sAnim_BULBASAUR_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_IVYSAUR_1[] = +static const union AnimCmd sAnim_Ivysaur_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_FRAME(1, 36), @@ -22,7 +22,7 @@ static const union AnimCmd sAnim_IVYSAUR_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_VENUSAUR_1[] = +static const union AnimCmd sAnim_Venusaur_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 25), @@ -30,7 +30,7 @@ static const union AnimCmd sAnim_VENUSAUR_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CHARMANDER_1[] = +static const union AnimCmd sAnim_Charmander_1[] = { ANIMCMD_FRAME(0, 2), ANIMCMD_FRAME(1, 46), @@ -38,7 +38,7 @@ static const union AnimCmd sAnim_CHARMANDER_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CHARMELEON_1[] = +static const union AnimCmd sAnim_Charmeleon_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 25), @@ -46,14 +46,14 @@ static const union AnimCmd sAnim_CHARMELEON_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CHARIZARD_1[] = +static const union AnimCmd sAnim_Charizard_1[] = { ANIMCMD_FRAME(1, 20), ANIMCMD_FRAME(0, 10), ANIMCMD_END, }; -static const union AnimCmd sAnim_SQUIRTLE_1[] = +static const union AnimCmd sAnim_Squirtle_1[] = { ANIMCMD_FRAME(1, 50), ANIMCMD_FRAME(1, 50), @@ -61,7 +61,7 @@ static const union AnimCmd sAnim_SQUIRTLE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_WARTORTLE_1[] = +static const union AnimCmd sAnim_Wartortle_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 20), @@ -69,7 +69,7 @@ static const union AnimCmd sAnim_WARTORTLE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BLASTOISE_1[] = +static const union AnimCmd sAnim_Blastoise_1[] = { ANIMCMD_FRAME(0, 50), ANIMCMD_FRAME(1, 25), @@ -79,7 +79,7 @@ static const union AnimCmd sAnim_BLASTOISE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CATERPIE_1[] = +static const union AnimCmd sAnim_Caterpie_1[] = { ANIMCMD_FRAME(1, 15), ANIMCMD_FRAME(0, 15), @@ -92,14 +92,14 @@ static const union AnimCmd sAnim_CATERPIE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_METAPOD_1[] = +static const union AnimCmd sAnim_Metapod_1[] = { ANIMCMD_FRAME(1, 45), ANIMCMD_FRAME(0, 5), ANIMCMD_END, }; -static const union AnimCmd sAnim_BUTTERFREE_1[] = +static const union AnimCmd sAnim_Butterfree_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 5), @@ -117,7 +117,7 @@ static const union AnimCmd sAnim_BUTTERFREE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_WEEDLE_1[] = +static const union AnimCmd sAnim_Weedle_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 15), @@ -129,7 +129,7 @@ static const union AnimCmd sAnim_WEEDLE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_KAKUNA_1[] = +static const union AnimCmd sAnim_Kakuna_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 5), @@ -145,7 +145,7 @@ static const union AnimCmd sAnim_KAKUNA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BEEDRILL_1[] = +static const union AnimCmd sAnim_Beedrill_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 35), @@ -155,7 +155,7 @@ static const union AnimCmd sAnim_BEEDRILL_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PIDGEY_1[] = +static const union AnimCmd sAnim_Pidgey_1[] = { ANIMCMD_FRAME(1, 5), ANIMCMD_FRAME(0, 5), @@ -172,7 +172,7 @@ static const union AnimCmd sAnim_PIDGEY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PIDGEOTTO_1[] = +static const union AnimCmd sAnim_Pidgeotto_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 10), @@ -182,7 +182,7 @@ static const union AnimCmd sAnim_PIDGEOTTO_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PIDGEOT_1[] = +static const union AnimCmd sAnim_Pidgeot_1[] = { ANIMCMD_FRAME(1, 20), ANIMCMD_FRAME(0, 10), @@ -191,8 +191,7 @@ static const union AnimCmd sAnim_PIDGEOT_1[] = ANIMCMD_END, }; - -static const union AnimCmd sAnim_RATTATA_1[] = +static const union AnimCmd sAnim_Rattata_1[] = { ANIMCMD_FRAME(0, 3), ANIMCMD_FRAME(1, 50), @@ -201,7 +200,7 @@ static const union AnimCmd sAnim_RATTATA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_RATICATE_1[] = +static const union AnimCmd sAnim_Raticate_1[] = { ANIMCMD_FRAME(1, 5), ANIMCMD_FRAME(0, 5), @@ -218,7 +217,7 @@ static const union AnimCmd sAnim_RATICATE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SPEAROW_1[] = +static const union AnimCmd sAnim_Spearow_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 5), @@ -239,7 +238,7 @@ static const union AnimCmd sAnim_SPEAROW_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_FEAROW_1[] = +static const union AnimCmd sAnim_Fearow_1[] = { ANIMCMD_FRAME(1, 7), ANIMCMD_FRAME(0, 7), @@ -252,7 +251,7 @@ static const union AnimCmd sAnim_FEAROW_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_EKANS_1[] = +static const union AnimCmd sAnim_Ekans_1[] = { ANIMCMD_FRAME(1, 8), ANIMCMD_FRAME(0, 8), @@ -263,7 +262,7 @@ static const union AnimCmd sAnim_EKANS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ARBOK_1[] = +static const union AnimCmd sAnim_Arbok_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 35), @@ -271,7 +270,7 @@ static const union AnimCmd sAnim_ARBOK_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PIKACHU_1[] = +static const union AnimCmd sAnim_Pikachu_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 20), @@ -281,7 +280,7 @@ static const union AnimCmd sAnim_PIKACHU_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PIKACHU_2[] = +static const union AnimCmd sAnim_Pikachu_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -290,7 +289,7 @@ static const union AnimCmd sAnim_PIKACHU_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_RAICHU_1[] = +static const union AnimCmd sAnim_Raichu_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 20), @@ -300,7 +299,7 @@ static const union AnimCmd sAnim_RAICHU_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_RAICHU_2[] = +static const union AnimCmd sAnim_Raichu_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -309,7 +308,7 @@ static const union AnimCmd sAnim_RAICHU_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SANDSHREW_1[] = +static const union AnimCmd sAnim_Sandshrew_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -319,7 +318,7 @@ static const union AnimCmd sAnim_SANDSHREW_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SANDSHREW_2[] = +static const union AnimCmd sAnim_Sandshrew_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -328,7 +327,7 @@ static const union AnimCmd sAnim_SANDSHREW_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SANDSLASH_1[] = +static const union AnimCmd sAnim_Sandslash_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -338,7 +337,7 @@ static const union AnimCmd sAnim_SANDSLASH_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SANDSLASH_2[] = +static const union AnimCmd sAnim_Sandslash_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -347,7 +346,7 @@ static const union AnimCmd sAnim_SANDSLASH_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_NIDORAN_F_1[] = +static const union AnimCmd sAnim_NidoranF_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 5), @@ -361,21 +360,21 @@ static const union AnimCmd sAnim_NIDORAN_F_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_NIDORINA_1[] = +static const union AnimCmd sAnim_Nidorina_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 10), ANIMCMD_END, }; -static const union AnimCmd sAnim_NIDOQUEEN_1[] = +static const union AnimCmd sAnim_Nidoqueen_1[] = { ANIMCMD_FRAME(1, 45), ANIMCMD_FRAME(0, 5), ANIMCMD_END, }; -static const union AnimCmd sAnim_NIDORAN_M_1[] = +static const union AnimCmd sAnim_NidoranM_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -383,7 +382,7 @@ static const union AnimCmd sAnim_NIDORAN_M_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_NIDORINO_1[] = +static const union AnimCmd sAnim_Nidorino_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -391,7 +390,7 @@ static const union AnimCmd sAnim_NIDORINO_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_NIDOKING_1[] = +static const union AnimCmd sAnim_Nidoking_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 15), @@ -400,7 +399,7 @@ static const union AnimCmd sAnim_NIDOKING_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CLEFAIRY_1[] = +static const union AnimCmd sAnim_Clefairy_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -408,7 +407,7 @@ static const union AnimCmd sAnim_CLEFAIRY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CLEFABLE_1[] = +static const union AnimCmd sAnim_Clefable_1[] = { ANIMCMD_FRAME(1, 27), ANIMCMD_FRAME(0, 27), @@ -419,7 +418,7 @@ static const union AnimCmd sAnim_CLEFABLE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_VULPIX_1[] = +static const union AnimCmd sAnim_Vulpix_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 20), @@ -429,7 +428,7 @@ static const union AnimCmd sAnim_VULPIX_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_VULPIX_2[] = +static const union AnimCmd sAnim_Vulpix_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -438,7 +437,7 @@ static const union AnimCmd sAnim_VULPIX_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_NINETALES_1[] = +static const union AnimCmd sAnim_Ninetales_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 20), @@ -448,7 +447,7 @@ static const union AnimCmd sAnim_NINETALES_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_NINETALES_2[] = +static const union AnimCmd sAnim_Ninetales_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -457,7 +456,7 @@ static const union AnimCmd sAnim_NINETALES_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_JIGGLYPUFF_1[] = +static const union AnimCmd sAnim_Jigglypuff_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 20), @@ -467,7 +466,7 @@ static const union AnimCmd sAnim_JIGGLYPUFF_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_JIGGLYPUFF_2[] = +static const union AnimCmd sAnim_Jigglypuff_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -476,7 +475,7 @@ static const union AnimCmd sAnim_JIGGLYPUFF_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_WIGGLYTUFF_1[] = +static const union AnimCmd sAnim_Wigglytuff_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 20), @@ -486,7 +485,7 @@ static const union AnimCmd sAnim_WIGGLYTUFF_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_WIGGLYTUFF_2[] = +static const union AnimCmd sAnim_Wigglytuff_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -495,7 +494,7 @@ static const union AnimCmd sAnim_WIGGLYTUFF_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ZUBAT_1[] = +static const union AnimCmd sAnim_Zubat_1[] = { ANIMCMD_FRAME(0, 3), ANIMCMD_FRAME(1, 3), @@ -513,7 +512,7 @@ static const union AnimCmd sAnim_ZUBAT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GOLBAT_1[] = +static const union AnimCmd sAnim_Golbat_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 5), @@ -537,7 +536,7 @@ static const union AnimCmd sAnim_GOLBAT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ODDISH_1[] = +static const union AnimCmd sAnim_Oddish_1[] = { ANIMCMD_FRAME(0, 11), ANIMCMD_FRAME(1, 11), @@ -549,7 +548,7 @@ static const union AnimCmd sAnim_ODDISH_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GLOOM_1[] = +static const union AnimCmd sAnim_Gloom_1[] = { ANIMCMD_FRAME(0, 21), ANIMCMD_FRAME(1, 45), @@ -558,7 +557,7 @@ static const union AnimCmd sAnim_GLOOM_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_VILEPLUME_1[] = +static const union AnimCmd sAnim_Vileplume_1[] = { ANIMCMD_FRAME(0, 50), ANIMCMD_FRAME(1, 25), @@ -568,7 +567,7 @@ static const union AnimCmd sAnim_VILEPLUME_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PARAS_1[] = +static const union AnimCmd sAnim_Paras_1[] = { ANIMCMD_FRAME(1, 5), ANIMCMD_FRAME(0, 5), @@ -589,7 +588,7 @@ static const union AnimCmd sAnim_PARAS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PARASECT_1[] = +static const union AnimCmd sAnim_Parasect_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -600,7 +599,7 @@ static const union AnimCmd sAnim_PARASECT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_VENONAT_1[] = +static const union AnimCmd sAnim_Venonat_1[] = { ANIMCMD_FRAME(1, 5), ANIMCMD_FRAME(0, 5), @@ -611,7 +610,7 @@ static const union AnimCmd sAnim_VENONAT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_VENOMOTH_1[] = +static const union AnimCmd sAnim_Venomoth_1[] = { ANIMCMD_FRAME(1, 4), ANIMCMD_FRAME(0, 4), @@ -638,7 +637,7 @@ static const union AnimCmd sAnim_VENOMOTH_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DIGLETT_1[] = +static const union AnimCmd sAnim_Diglett_1[] = { ANIMCMD_FRAME(0, 25), ANIMCMD_FRAME(1, 35), @@ -646,7 +645,7 @@ static const union AnimCmd sAnim_DIGLETT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DUGTRIO_1[] = +static const union AnimCmd sAnim_Dugtrio_1[] = { ANIMCMD_FRAME(1, 35), ANIMCMD_FRAME(0, 10), @@ -661,7 +660,7 @@ static const union AnimCmd sAnim_DUGTRIO_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MEOWTH_1[] = +static const union AnimCmd sAnim_Meowth_1[] = { ANIMCMD_FRAME(1, 8), ANIMCMD_FRAME(0, 8), @@ -672,14 +671,14 @@ static const union AnimCmd sAnim_MEOWTH_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PERSIAN_1[] = +static const union AnimCmd sAnim_Persian_1[] = { ANIMCMD_FRAME(1, 50), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_PSYDUCK_1[] = +static const union AnimCmd sAnim_Psyduck_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 20), @@ -689,7 +688,7 @@ static const union AnimCmd sAnim_PSYDUCK_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PSYDUCK_2[] = +static const union AnimCmd sAnim_Psyduck_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -698,7 +697,7 @@ static const union AnimCmd sAnim_PSYDUCK_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GOLDUCK_1[] = +static const union AnimCmd sAnim_Golduck_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 20), @@ -708,7 +707,7 @@ static const union AnimCmd sAnim_GOLDUCK_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GOLDUCK_2[] = +static const union AnimCmd sAnim_Golduck_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -717,7 +716,7 @@ static const union AnimCmd sAnim_GOLDUCK_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MANKEY_1[] = +static const union AnimCmd sAnim_Mankey_1[] = { ANIMCMD_FRAME(1, 5), ANIMCMD_FRAME(0, 5), @@ -728,7 +727,7 @@ static const union AnimCmd sAnim_MANKEY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PRIMEAPE_1[] = +static const union AnimCmd sAnim_Primeape_1[] = { ANIMCMD_FRAME(1, 15), ANIMCMD_FRAME(0, 15), @@ -739,7 +738,7 @@ static const union AnimCmd sAnim_PRIMEAPE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GROWLITHE_1[] = +static const union AnimCmd sAnim_Growlithe_1[] = { ANIMCMD_FRAME(1, 8), ANIMCMD_FRAME(0, 8), @@ -750,7 +749,7 @@ static const union AnimCmd sAnim_GROWLITHE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ARCANINE_1[] = +static const union AnimCmd sAnim_Arcanine_1[] = { ANIMCMD_FRAME(1, 8), ANIMCMD_FRAME(0, 8), @@ -758,9 +757,10 @@ static const union AnimCmd sAnim_ARCANINE_1[] = ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 10), - ANIMCMD_END,}; + ANIMCMD_END, +}; -static const union AnimCmd sAnim_POLIWAG_1[] = +static const union AnimCmd sAnim_Poliwag_1[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(1, 10), @@ -768,7 +768,7 @@ static const union AnimCmd sAnim_POLIWAG_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_POLIWHIRL_1[] = +static const union AnimCmd sAnim_Poliwhirl_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 25), @@ -778,14 +778,14 @@ static const union AnimCmd sAnim_POLIWHIRL_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_POLIWRATH_1[] = +static const union AnimCmd sAnim_Poliwrath_1[] = { ANIMCMD_FRAME(1, 45), ANIMCMD_FRAME(0, 10), ANIMCMD_END, }; -static const union AnimCmd sAnim_ABRA_1[] = +static const union AnimCmd sAnim_Abra_1[] = { ANIMCMD_FRAME(0, 7), ANIMCMD_FRAME(1, 21), @@ -795,7 +795,7 @@ static const union AnimCmd sAnim_ABRA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_KADABRA_1[] = +static const union AnimCmd sAnim_Kadabra_1[] = { ANIMCMD_FRAME(0, 12), ANIMCMD_FRAME(1, 45), @@ -803,7 +803,7 @@ static const union AnimCmd sAnim_KADABRA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ALAKAZAM_1[] = +static const union AnimCmd sAnim_Alakazam_1[] = { ANIMCMD_FRAME(0, 9), ANIMCMD_FRAME(1, 54), @@ -811,7 +811,7 @@ static const union AnimCmd sAnim_ALAKAZAM_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MACHOP_1[] = +static const union AnimCmd sAnim_Machop_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -823,7 +823,7 @@ static const union AnimCmd sAnim_MACHOP_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MACHOKE_1[] = +static const union AnimCmd sAnim_Machoke_1[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(1, 44), @@ -831,7 +831,7 @@ static const union AnimCmd sAnim_MACHOKE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MACHAMP_1[] = +static const union AnimCmd sAnim_Machamp_1[] = { ANIMCMD_FRAME(0, 11), ANIMCMD_FRAME(1, 11), @@ -843,7 +843,7 @@ static const union AnimCmd sAnim_MACHAMP_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BELLSPROUT_1[] = +static const union AnimCmd sAnim_Bellsprout_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 25), @@ -851,7 +851,7 @@ static const union AnimCmd sAnim_BELLSPROUT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_WEEPINBELL_1[] = +static const union AnimCmd sAnim_Weepinbell_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 25), @@ -863,7 +863,7 @@ static const union AnimCmd sAnim_WEEPINBELL_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_VICTREEBEL_1[] = +static const union AnimCmd sAnim_Victreebel_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -875,7 +875,7 @@ static const union AnimCmd sAnim_VICTREEBEL_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_TENTACOOL_1[] = +static const union AnimCmd sAnim_Tentacool_1[] = { ANIMCMD_FRAME(0, 8), ANIMCMD_FRAME(1, 15), @@ -885,7 +885,7 @@ static const union AnimCmd sAnim_TENTACOOL_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_TENTACRUEL_1[] = +static const union AnimCmd sAnim_Tentacruel_1[] = { ANIMCMD_FRAME(0, 19), ANIMCMD_FRAME(1, 35), @@ -895,7 +895,7 @@ static const union AnimCmd sAnim_TENTACRUEL_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GEODUDE_1[] = +static const union AnimCmd sAnim_Geodude_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 36), @@ -903,7 +903,7 @@ static const union AnimCmd sAnim_GEODUDE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GRAVELER_1[] = +static const union AnimCmd sAnim_Graveler_1[] = { ANIMCMD_FRAME(0, 16), ANIMCMD_FRAME(1, 16), @@ -913,7 +913,7 @@ static const union AnimCmd sAnim_GRAVELER_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GOLEM_1[] = +static const union AnimCmd sAnim_Golem_1[] = { ANIMCMD_FRAME(0, 8), ANIMCMD_FRAME(1, 31), @@ -923,14 +923,14 @@ static const union AnimCmd sAnim_GOLEM_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PONYTA_1[] = +static const union AnimCmd sAnim_Ponyta_1[] = { ANIMCMD_FRAME(1, 45), ANIMCMD_FRAME(0, 5), ANIMCMD_END, }; -static const union AnimCmd sAnim_RAPIDASH_1[] = +static const union AnimCmd sAnim_Rapidash_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 40), @@ -938,7 +938,7 @@ static const union AnimCmd sAnim_RAPIDASH_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SLOWPOKE_1[] = +static const union AnimCmd sAnim_Slowpoke_1[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(1, 50), @@ -946,7 +946,7 @@ static const union AnimCmd sAnim_SLOWPOKE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SLOWBRO_1[] = +static const union AnimCmd sAnim_Slowbro_1[] = { ANIMCMD_FRAME(1, 50), ANIMCMD_FRAME(1, 45), @@ -954,7 +954,7 @@ static const union AnimCmd sAnim_SLOWBRO_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MAGNEMITE_1[] = +static const union AnimCmd sAnim_Magnemite_1[] = { ANIMCMD_FRAME(0, 28), ANIMCMD_FRAME(1, 28), @@ -964,7 +964,7 @@ static const union AnimCmd sAnim_MAGNEMITE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MAGNETON_1[] = +static const union AnimCmd sAnim_Magneton_1[] = { ANIMCMD_FRAME(0, 14), ANIMCMD_FRAME(1, 14), @@ -976,7 +976,7 @@ static const union AnimCmd sAnim_MAGNETON_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_FARFETCHD_1[] = +static const union AnimCmd sAnim_Farfetchd_1[] = { ANIMCMD_FRAME(1, 5), ANIMCMD_FRAME(0, 5), @@ -993,7 +993,7 @@ static const union AnimCmd sAnim_FARFETCHD_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DODUO_1[] = +static const union AnimCmd sAnim_Doduo_1[] = { ANIMCMD_FRAME(0, 18), ANIMCMD_FRAME(1, 18), @@ -1003,7 +1003,7 @@ static const union AnimCmd sAnim_DODUO_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DODRIO_1[] = +static const union AnimCmd sAnim_Dodrio_1[] = { ANIMCMD_FRAME(0, 12), ANIMCMD_FRAME(1, 12), @@ -1017,14 +1017,14 @@ static const union AnimCmd sAnim_DODRIO_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SEEL_1[] = +static const union AnimCmd sAnim_Seel_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_DEWGONG_1[] = +static const union AnimCmd sAnim_Dewgong_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -1032,7 +1032,7 @@ static const union AnimCmd sAnim_DEWGONG_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GRIMER_1[] = +static const union AnimCmd sAnim_Grimer_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -1042,7 +1042,7 @@ static const union AnimCmd sAnim_GRIMER_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GRIMER_2[] = +static const union AnimCmd sAnim_Grimer_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -1051,7 +1051,7 @@ static const union AnimCmd sAnim_GRIMER_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MUK_1[] = +static const union AnimCmd sAnim_Muk_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -1061,7 +1061,7 @@ static const union AnimCmd sAnim_MUK_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MUK_2[] = +static const union AnimCmd sAnim_Muk_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -1070,7 +1070,7 @@ static const union AnimCmd sAnim_MUK_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SHELLDER_1[] = +static const union AnimCmd sAnim_Shellder_1[] = { ANIMCMD_FRAME(1, 5), ANIMCMD_FRAME(0, 5), @@ -1079,7 +1079,7 @@ static const union AnimCmd sAnim_SHELLDER_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CLOYSTER_1[] = +static const union AnimCmd sAnim_Cloyster_1[] = { ANIMCMD_FRAME(1, 5), ANIMCMD_FRAME(0, 5), @@ -1100,7 +1100,7 @@ static const union AnimCmd sAnim_CLOYSTER_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GASTLY_1[] = +static const union AnimCmd sAnim_Gastly_1[] = { ANIMCMD_FRAME(1, 50), ANIMCMD_FRAME(1, 30), @@ -1108,7 +1108,7 @@ static const union AnimCmd sAnim_GASTLY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_HAUNTER_1[] = +static const union AnimCmd sAnim_Haunter_1[] = { ANIMCMD_FRAME(1, 8), ANIMCMD_FRAME(0, 15), @@ -1118,7 +1118,7 @@ static const union AnimCmd sAnim_HAUNTER_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GENGAR_1[] = +static const union AnimCmd sAnim_Gengar_1[] = { ANIMCMD_FRAME(1, 50), ANIMCMD_FRAME(1, 40), @@ -1126,7 +1126,7 @@ static const union AnimCmd sAnim_GENGAR_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ONIX_1[] = +static const union AnimCmd sAnim_Onix_1[] = { ANIMCMD_FRAME(1, 50), ANIMCMD_FRAME(1, 30), @@ -1134,7 +1134,7 @@ static const union AnimCmd sAnim_ONIX_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DROWZEE_1[] = +static const union AnimCmd sAnim_Drowzee_1[] = { ANIMCMD_FRAME(1, 12), ANIMCMD_FRAME(0, 12), @@ -1145,7 +1145,7 @@ static const union AnimCmd sAnim_DROWZEE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_HYPNO_1[] = +static const union AnimCmd sAnim_Hypno_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -1157,7 +1157,7 @@ static const union AnimCmd sAnim_HYPNO_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_KRABBY_1[] = +static const union AnimCmd sAnim_Krabby_1[] = { ANIMCMD_FRAME(1, 8), ANIMCMD_FRAME(0, 8), @@ -1168,7 +1168,7 @@ static const union AnimCmd sAnim_KRABBY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_KINGLER_1[] = +static const union AnimCmd sAnim_Kingler_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 15), @@ -1182,7 +1182,7 @@ static const union AnimCmd sAnim_KINGLER_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_VOLTORB_1[] = +static const union AnimCmd sAnim_Voltorb_1[] = { ANIMCMD_FRAME(0, 4), ANIMCMD_FRAME(1, 25), @@ -1192,7 +1192,7 @@ static const union AnimCmd sAnim_VOLTORB_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ELECTRODE_1[] = +static const union AnimCmd sAnim_Electrode_1[] = { ANIMCMD_FRAME(0, 8), ANIMCMD_FRAME(1, 30), @@ -1202,7 +1202,7 @@ static const union AnimCmd sAnim_ELECTRODE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_EXEGGCUTE_1[] = +static const union AnimCmd sAnim_Exeggcute_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -1216,14 +1216,14 @@ static const union AnimCmd sAnim_EXEGGCUTE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_EXEGGUTOR_1[] = +static const union AnimCmd sAnim_Exeggutor_1[] = { ANIMCMD_FRAME(1, 35), ANIMCMD_FRAME(0, 10), - ANIMCMD_END,}; + ANIMCMD_END, +}; - -static const union AnimCmd sAnim_CUBONE_1[] = +static const union AnimCmd sAnim_Cubone_1[] = { ANIMCMD_FRAME(1, 14), ANIMCMD_FRAME(0, 14), @@ -1234,7 +1234,7 @@ static const union AnimCmd sAnim_CUBONE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MAROWAK_1[] = +static const union AnimCmd sAnim_Marowak_1[] = { ANIMCMD_FRAME(1, 14), ANIMCMD_FRAME(0, 14), @@ -1245,14 +1245,14 @@ static const union AnimCmd sAnim_MAROWAK_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_HITMONLEE_1[] = +static const union AnimCmd sAnim_Hitmonlee_1[] = { ANIMCMD_FRAME(1, 15), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_HITMONCHAN_1[] = +static const union AnimCmd sAnim_Hitmonchan_1[] = { ANIMCMD_FRAME(1, 5), ANIMCMD_FRAME(0, 5), @@ -1265,7 +1265,7 @@ static const union AnimCmd sAnim_HITMONCHAN_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_LICKITUNG_1[] = +static const union AnimCmd sAnim_Lickitung_1[] = { ANIMCMD_FRAME(0, 28), ANIMCMD_FRAME(1, 32), @@ -1273,7 +1273,7 @@ static const union AnimCmd sAnim_LICKITUNG_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_KOFFING_1[] = +static const union AnimCmd sAnim_Koffing_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -1283,7 +1283,7 @@ static const union AnimCmd sAnim_KOFFING_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_KOFFING_2[] = +static const union AnimCmd sAnim_Koffing_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -1292,7 +1292,7 @@ static const union AnimCmd sAnim_KOFFING_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_WEEZING_1[] = +static const union AnimCmd sAnim_Weezing_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -1302,7 +1302,7 @@ static const union AnimCmd sAnim_WEEZING_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_WEEZING_2[] = +static const union AnimCmd sAnim_Weezing_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -1311,7 +1311,7 @@ static const union AnimCmd sAnim_WEEZING_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_RHYHORN_1[] = +static const union AnimCmd sAnim_Rhyhorn_1[] = { ANIMCMD_FRAME(0, 11), ANIMCMD_FRAME(1, 10), @@ -1321,7 +1321,7 @@ static const union AnimCmd sAnim_RHYHORN_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_RHYHORN_2[] = +static const union AnimCmd sAnim_Rhyhorn_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -1330,7 +1330,7 @@ static const union AnimCmd sAnim_RHYHORN_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_RHYDON_1[] = +static const union AnimCmd sAnim_Rhydon_1[] = { ANIMCMD_FRAME(0, 11), ANIMCMD_FRAME(1, 10), @@ -1340,7 +1340,7 @@ static const union AnimCmd sAnim_RHYDON_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_RHYDON_2[] = +static const union AnimCmd sAnim_Rhydon_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -1349,7 +1349,7 @@ static const union AnimCmd sAnim_RHYDON_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CHANSEY_1[] = +static const union AnimCmd sAnim_Chansey_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -1357,7 +1357,7 @@ static const union AnimCmd sAnim_CHANSEY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_TANGELA_1[] = +static const union AnimCmd sAnim_Tangela_1[] = { ANIMCMD_FRAME(1, 9), ANIMCMD_FRAME(0, 9), @@ -1372,7 +1372,7 @@ static const union AnimCmd sAnim_TANGELA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_KANGASKHAN_1[] = +static const union AnimCmd sAnim_Kangaskhan_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -1381,7 +1381,7 @@ static const union AnimCmd sAnim_KANGASKHAN_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_HORSEA_1[] = +static const union AnimCmd sAnim_Horsea_1[] = { ANIMCMD_FRAME(0, 11), ANIMCMD_FRAME(1, 10), @@ -1391,7 +1391,7 @@ static const union AnimCmd sAnim_HORSEA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_HORSEA_2[] = +static const union AnimCmd sAnim_Horsea_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -1400,7 +1400,7 @@ static const union AnimCmd sAnim_HORSEA_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SEADRA_1[] = +static const union AnimCmd sAnim_Seadra_1[] = { ANIMCMD_FRAME(0, 11), ANIMCMD_FRAME(1, 10), @@ -1410,7 +1410,7 @@ static const union AnimCmd sAnim_SEADRA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SEADRA_2[] = +static const union AnimCmd sAnim_Seadra_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -1419,7 +1419,7 @@ static const union AnimCmd sAnim_SEADRA_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GOLDEEN_1[] = +static const union AnimCmd sAnim_Goldeen_1[] = { ANIMCMD_FRAME(0, 16), ANIMCMD_FRAME(1, 16), @@ -1433,7 +1433,7 @@ static const union AnimCmd sAnim_GOLDEEN_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SEAKING_1[] = +static const union AnimCmd sAnim_Seaking_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 20), @@ -1443,7 +1443,7 @@ static const union AnimCmd sAnim_SEAKING_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_STARYU_1[] = +static const union AnimCmd sAnim_Staryu_1[] = { ANIMCMD_FRAME(0, 11), ANIMCMD_FRAME(1, 10), @@ -1453,7 +1453,7 @@ static const union AnimCmd sAnim_STARYU_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_STARYU_2[] = +static const union AnimCmd sAnim_Staryu_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -1462,7 +1462,7 @@ static const union AnimCmd sAnim_STARYU_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_STARMIE_1[] = +static const union AnimCmd sAnim_Starmie_1[] = { ANIMCMD_FRAME(0, 11), ANIMCMD_FRAME(1, 10), @@ -1472,7 +1472,7 @@ static const union AnimCmd sAnim_STARMIE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_STARMIE_2[] = +static const union AnimCmd sAnim_Starmie_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -1481,7 +1481,7 @@ static const union AnimCmd sAnim_STARMIE_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MR_MIME_1[] = +static const union AnimCmd sAnim_MrMime_1[] = { ANIMCMD_FRAME(1, 15), ANIMCMD_FRAME(0, 15), @@ -1492,7 +1492,7 @@ static const union AnimCmd sAnim_MR_MIME_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SCYTHER_1[] = +static const union AnimCmd sAnim_Scyther_1[] = { ANIMCMD_FRAME(1, 5), ANIMCMD_FRAME(0, 5), @@ -1505,7 +1505,7 @@ static const union AnimCmd sAnim_SCYTHER_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_JYNX_1[] = +static const union AnimCmd sAnim_Jynx_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 10), @@ -1515,7 +1515,7 @@ static const union AnimCmd sAnim_JYNX_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ELECTABUZZ_1[] = +static const union AnimCmd sAnim_Electabuzz_1[] = { ANIMCMD_FRAME(0, 22), ANIMCMD_FRAME(1, 22), @@ -1525,14 +1525,14 @@ static const union AnimCmd sAnim_ELECTABUZZ_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MAGMAR_1[] = +static const union AnimCmd sAnim_Magmar_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 10), ANIMCMD_END, }; -static const union AnimCmd sAnim_PINSIR_1[] = +static const union AnimCmd sAnim_Pinsir_1[] = { ANIMCMD_FRAME(0, 11), ANIMCMD_FRAME(1, 10), @@ -1542,7 +1542,7 @@ static const union AnimCmd sAnim_PINSIR_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PINSIR_2[] = +static const union AnimCmd sAnim_Pinsir_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -1551,7 +1551,7 @@ static const union AnimCmd sAnim_PINSIR_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_TAUROS_1[] = +static const union AnimCmd sAnim_Tauros_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 20), @@ -1560,7 +1560,7 @@ static const union AnimCmd sAnim_TAUROS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MAGIKARP_1[] = +static const union AnimCmd sAnim_Magikarp_1[] = { ANIMCMD_FRAME(0, 8), ANIMCMD_FRAME(1, 8), @@ -1574,7 +1574,7 @@ static const union AnimCmd sAnim_MAGIKARP_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GYARADOS_1[] = +static const union AnimCmd sAnim_Gyarados_1[] = { ANIMCMD_FRAME(0, 8), ANIMCMD_FRAME(1, 32), @@ -1582,14 +1582,14 @@ static const union AnimCmd sAnim_GYARADOS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_LAPRAS_1[] = +static const union AnimCmd sAnim_Lapras_1[] = { ANIMCMD_FRAME(1, 30), ANIMCMD_FRAME(0, 10), ANIMCMD_END, }; -static const union AnimCmd sAnim_DITTO_1[] = +static const union AnimCmd sAnim_Ditto_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -1598,35 +1598,35 @@ static const union AnimCmd sAnim_DITTO_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_EEVEE_1[] = +static const union AnimCmd sAnim_Eevee_1[] = { ANIMCMD_FRAME(1, 33), ANIMCMD_FRAME(0, 5), ANIMCMD_END, }; -static const union AnimCmd sAnim_VAPOREON_1[] = +static const union AnimCmd sAnim_Vaporeon_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 10), ANIMCMD_END, }; -static const union AnimCmd sAnim_JOLTEON_1[] = +static const union AnimCmd sAnim_Jolteon_1[] = { ANIMCMD_FRAME(1, 15), ANIMCMD_FRAME(0, 15), ANIMCMD_END, }; -static const union AnimCmd sAnim_FLAREON_1[] = +static const union AnimCmd sAnim_Flareon_1[] = { ANIMCMD_FRAME(1, 30), ANIMCMD_FRAME(0, 30), ANIMCMD_END, }; -static const union AnimCmd sAnim_PORYGON_1[] = +static const union AnimCmd sAnim_Porygon_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -1635,7 +1635,7 @@ static const union AnimCmd sAnim_PORYGON_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_OMANYTE_1[] = +static const union AnimCmd sAnim_Omanyte_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -1648,7 +1648,7 @@ static const union AnimCmd sAnim_OMANYTE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_OMASTAR_1[] = +static const union AnimCmd sAnim_Omastar_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -1657,7 +1657,7 @@ static const union AnimCmd sAnim_OMASTAR_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_KABUTO_1[] = +static const union AnimCmd sAnim_Kabuto_1[] = { ANIMCMD_FRAME(1, 8), ANIMCMD_FRAME(0, 8), @@ -1670,7 +1670,7 @@ static const union AnimCmd sAnim_KABUTO_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_KABUTOPS_1[] = +static const union AnimCmd sAnim_Kabutops_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -1679,7 +1679,7 @@ static const union AnimCmd sAnim_KABUTOPS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_AERODACTYL_1[] = +static const union AnimCmd sAnim_Aerodactyl_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 25), @@ -1688,7 +1688,7 @@ static const union AnimCmd sAnim_AERODACTYL_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SNORLAX_1[] = +static const union AnimCmd sAnim_Snorlax_1[] = { ANIMCMD_FRAME(1, 50), ANIMCMD_FRAME(1, 50), @@ -1696,7 +1696,7 @@ static const union AnimCmd sAnim_SNORLAX_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ARTICUNO_1[] = +static const union AnimCmd sAnim_Articuno_1[] = { ANIMCMD_FRAME(1, 25), ANIMCMD_FRAME(0, 15), @@ -1705,7 +1705,7 @@ static const union AnimCmd sAnim_ARTICUNO_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ZAPDOS_1[] = +static const union AnimCmd sAnim_Zapdos_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -1714,7 +1714,7 @@ static const union AnimCmd sAnim_ZAPDOS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MOLTRES_1[] = +static const union AnimCmd sAnim_Moltres_1[] = { ANIMCMD_FRAME(1, 3), ANIMCMD_FRAME(0, 3), @@ -1751,7 +1751,7 @@ static const union AnimCmd sAnim_MOLTRES_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DRATINI_1[] = +static const union AnimCmd sAnim_Dratini_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -1759,7 +1759,7 @@ static const union AnimCmd sAnim_DRATINI_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DRAGONAIR_1[] = +static const union AnimCmd sAnim_Dragonair_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -1768,7 +1768,7 @@ static const union AnimCmd sAnim_DRAGONAIR_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DRAGONITE_1[] = +static const union AnimCmd sAnim_Dragonite_1[] = { ANIMCMD_FRAME(1, 50), ANIMCMD_FRAME(1, 30), @@ -1776,14 +1776,14 @@ static const union AnimCmd sAnim_DRAGONITE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MEWTWO_1[] = +static const union AnimCmd sAnim_Mewtwo_1[] = { ANIMCMD_FRAME(1, 15), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_MEW_1[] = +static const union AnimCmd sAnim_Mew_1[] = { ANIMCMD_FRAME(1, 50), ANIMCMD_FRAME(1, 40), @@ -1791,29 +1791,29 @@ static const union AnimCmd sAnim_MEW_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CHIKORITA_1[] = +static const union AnimCmd sAnim_Chikorita_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), ANIMCMD_FRAME(0, 15), - ANIMCMD_END,}; + ANIMCMD_END, +}; - -static const union AnimCmd sAnim_BAYLEEF_1[] = +static const union AnimCmd sAnim_Bayleef_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_MEGANIUM_1[] = +static const union AnimCmd sAnim_Meganium_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 5), ANIMCMD_END, }; -static const union AnimCmd sAnim_CYNDAQUIL_1[] = +static const union AnimCmd sAnim_Cyndaquil_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -1822,21 +1822,21 @@ static const union AnimCmd sAnim_CYNDAQUIL_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_QUILAVA_1[] = +static const union AnimCmd sAnim_Quilava_1[] = { ANIMCMD_FRAME(1, 30), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_TYPHLOSION_1[] = +static const union AnimCmd sAnim_Typhlosion_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 5), ANIMCMD_END, }; -static const union AnimCmd sAnim_TOTODILE_1[] = +static const union AnimCmd sAnim_Totodile_1[] = { ANIMCMD_FRAME(1, 8), ANIMCMD_FRAME(0, 8), @@ -1847,14 +1847,14 @@ static const union AnimCmd sAnim_TOTODILE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CROCONAW_1[] = +static const union AnimCmd sAnim_Croconaw_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 10), ANIMCMD_END, }; -static const union AnimCmd sAnim_FERALIGATR_1[] = +static const union AnimCmd sAnim_Feraligatr_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -1863,7 +1863,7 @@ static const union AnimCmd sAnim_FERALIGATR_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SENTRET_1[] = +static const union AnimCmd sAnim_Sentret_1[] = { ANIMCMD_FRAME(1, 15), ANIMCMD_FRAME(0, 15), @@ -1872,14 +1872,14 @@ static const union AnimCmd sAnim_SENTRET_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_FURRET_1[] = +static const union AnimCmd sAnim_Furret_1[] = { ANIMCMD_FRAME(1, 35), ANIMCMD_FRAME(0, 5), ANIMCMD_END, }; -static const union AnimCmd sAnim_HOOTHOOT_1[] = +static const union AnimCmd sAnim_Hoothoot_1[] = { ANIMCMD_FRAME(1, 7), ANIMCMD_FRAME(0, 7), @@ -1896,14 +1896,14 @@ static const union AnimCmd sAnim_HOOTHOOT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_NOCTOWL_1[] = +static const union AnimCmd sAnim_Noctowl_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_LEDYBA_1[] = +static const union AnimCmd sAnim_Ledyba_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -1912,7 +1912,7 @@ static const union AnimCmd sAnim_LEDYBA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_LEDIAN_1[] = +static const union AnimCmd sAnim_Ledian_1[] = { ANIMCMD_FRAME(1, 25), ANIMCMD_FRAME(0, 25), @@ -1921,7 +1921,7 @@ static const union AnimCmd sAnim_LEDIAN_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SPINARAK_1[] = +static const union AnimCmd sAnim_Spinarak_1[] = { ANIMCMD_FRAME(1, 6), ANIMCMD_FRAME(0, 6), @@ -1934,7 +1934,7 @@ static const union AnimCmd sAnim_SPINARAK_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ARIADOS_1[] = +static const union AnimCmd sAnim_Ariados_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -1943,7 +1943,7 @@ static const union AnimCmd sAnim_ARIADOS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CROBAT_1[] = +static const union AnimCmd sAnim_Crobat_1[] = { ANIMCMD_FRAME(0, 2), ANIMCMD_FRAME(1, 2), @@ -1965,7 +1965,7 @@ static const union AnimCmd sAnim_CROBAT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CHINCHOU_1[] = +static const union AnimCmd sAnim_Chinchou_1[] = { ANIMCMD_FRAME(0, 11), ANIMCMD_FRAME(1, 10), @@ -1975,7 +1975,7 @@ static const union AnimCmd sAnim_CHINCHOU_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CHINCHOU_2[] = +static const union AnimCmd sAnim_Chinchou_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -1984,7 +1984,7 @@ static const union AnimCmd sAnim_CHINCHOU_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_LANTURN_1[] = +static const union AnimCmd sAnim_Lanturn_1[] = { ANIMCMD_FRAME(0, 11), ANIMCMD_FRAME(1, 10), @@ -1994,7 +1994,7 @@ static const union AnimCmd sAnim_LANTURN_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_LANTURN_2[] = +static const union AnimCmd sAnim_Lanturn_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -2003,7 +2003,7 @@ static const union AnimCmd sAnim_LANTURN_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PICHU_1[] = +static const union AnimCmd sAnim_Pichu_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 20), @@ -2013,7 +2013,7 @@ static const union AnimCmd sAnim_PICHU_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PICHU_2[] = +static const union AnimCmd sAnim_Pichu_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -2022,7 +2022,7 @@ static const union AnimCmd sAnim_PICHU_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CLEFFA_1[] = +static const union AnimCmd sAnim_Cleffa_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -2031,7 +2031,7 @@ static const union AnimCmd sAnim_CLEFFA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_IGGLYBUFF_1[] = +static const union AnimCmd sAnim_Igglybuff_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 20), @@ -2041,7 +2041,7 @@ static const union AnimCmd sAnim_IGGLYBUFF_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_IGGLYBUFF_2[] = +static const union AnimCmd sAnim_Igglybuff_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -2050,7 +2050,7 @@ static const union AnimCmd sAnim_IGGLYBUFF_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_TOGEPI_1[] = +static const union AnimCmd sAnim_Togepi_1[] = { ANIMCMD_FRAME(1, 50), ANIMCMD_FRAME(1, 50), @@ -2058,7 +2058,7 @@ static const union AnimCmd sAnim_TOGEPI_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_TOGETIC_1[] = +static const union AnimCmd sAnim_Togetic_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -2066,7 +2066,7 @@ static const union AnimCmd sAnim_TOGETIC_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_NATU_1[] = +static const union AnimCmd sAnim_Natu_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 20), @@ -2076,7 +2076,7 @@ static const union AnimCmd sAnim_NATU_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_NATU_2[] = +static const union AnimCmd sAnim_Natu_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -2085,7 +2085,7 @@ static const union AnimCmd sAnim_NATU_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_XATU_1[] = +static const union AnimCmd sAnim_Xatu_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 45), @@ -2097,7 +2097,7 @@ static const union AnimCmd sAnim_XATU_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_XATU_2[] = +static const union AnimCmd sAnim_Xatu_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -2106,7 +2106,7 @@ static const union AnimCmd sAnim_XATU_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MAREEP_1[] = +static const union AnimCmd sAnim_Mareep_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -2117,7 +2117,7 @@ static const union AnimCmd sAnim_MAREEP_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_FLAAFFY_1[] = +static const union AnimCmd sAnim_Flaaffy_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 20), @@ -2127,7 +2127,7 @@ static const union AnimCmd sAnim_FLAAFFY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_AMPHAROS_1[] = +static const union AnimCmd sAnim_Ampharos_1[] = { ANIMCMD_FRAME(1, 50), ANIMCMD_FRAME(1, 15), @@ -2135,7 +2135,7 @@ static const union AnimCmd sAnim_AMPHAROS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BELLOSSOM_1[] = +static const union AnimCmd sAnim_Bellossom_1[] = { ANIMCMD_FRAME(1, 5), ANIMCMD_FRAME(0, 5), @@ -2156,7 +2156,7 @@ static const union AnimCmd sAnim_BELLOSSOM_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MARILL_1[] = +static const union AnimCmd sAnim_Marill_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -2164,7 +2164,7 @@ static const union AnimCmd sAnim_MARILL_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_AZUMARILL_1[] = +static const union AnimCmd sAnim_Azumarill_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 20), @@ -2174,7 +2174,7 @@ static const union AnimCmd sAnim_AZUMARILL_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SUDOWOODO_1[] = +static const union AnimCmd sAnim_Sudowoodo_1[] = { ANIMCMD_FRAME(1, 15), ANIMCMD_FRAME(0, 15), @@ -2185,7 +2185,7 @@ static const union AnimCmd sAnim_SUDOWOODO_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_POLITOED_1[] = +static const union AnimCmd sAnim_Politoed_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -2196,7 +2196,7 @@ static const union AnimCmd sAnim_POLITOED_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_HOPPIP_1[] = +static const union AnimCmd sAnim_Hoppip_1[] = { ANIMCMD_FRAME(1, 25), ANIMCMD_FRAME(0, 25), @@ -2205,7 +2205,7 @@ static const union AnimCmd sAnim_HOPPIP_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SKIPLOOM_1[] = +static const union AnimCmd sAnim_Skiploom_1[] = { ANIMCMD_FRAME(1, 12), ANIMCMD_FRAME(0, 12), @@ -2218,7 +2218,7 @@ static const union AnimCmd sAnim_SKIPLOOM_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_JUMPLUFF_1[] = +static const union AnimCmd sAnim_Jumpluff_1[] = { ANIMCMD_FRAME(1, 15), ANIMCMD_FRAME(0, 25), @@ -2229,14 +2229,14 @@ static const union AnimCmd sAnim_JUMPLUFF_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_AIPOM_1[] = +static const union AnimCmd sAnim_Aipom_1[] = { ANIMCMD_FRAME(1, 35), ANIMCMD_FRAME(0, 5), ANIMCMD_END, }; -static const union AnimCmd sAnim_SUNKERN_1[] = +static const union AnimCmd sAnim_Sunkern_1[] = { ANIMCMD_FRAME(1, 8), ANIMCMD_FRAME(0, 8), @@ -2247,7 +2247,7 @@ static const union AnimCmd sAnim_SUNKERN_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SUNFLORA_1[] = +static const union AnimCmd sAnim_Sunflora_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -2255,7 +2255,7 @@ static const union AnimCmd sAnim_SUNFLORA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_YANMA_1[] = +static const union AnimCmd sAnim_Yanma_1[] = { ANIMCMD_FRAME(1, 2), ANIMCMD_FRAME(0, 2), @@ -2282,7 +2282,7 @@ static const union AnimCmd sAnim_YANMA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_WOOPER_1[] = +static const union AnimCmd sAnim_Wooper_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -2290,14 +2290,14 @@ static const union AnimCmd sAnim_WOOPER_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_QUAGSIRE_1[] = +static const union AnimCmd sAnim_Quagsire_1[] = { ANIMCMD_FRAME(1, 32), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_ESPEON_1[] = +static const union AnimCmd sAnim_Espeon_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 25), @@ -2305,21 +2305,21 @@ static const union AnimCmd sAnim_ESPEON_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_UMBREON_1[] = +static const union AnimCmd sAnim_Umbreon_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_MURKROW_1[] = +static const union AnimCmd sAnim_Murkrow_1[] = { ANIMCMD_FRAME(1, 15), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_SLOWKING_1[] = +static const union AnimCmd sAnim_Slowking_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 20), @@ -2327,7 +2327,7 @@ static const union AnimCmd sAnim_SLOWKING_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MISDREAVUS_1[] = +static const union AnimCmd sAnim_Misdreavus_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -2342,7 +2342,7 @@ static const union AnimCmd sAnim_MISDREAVUS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_UNOWN_1[] = +static const union AnimCmd sAnim_Unown_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -2350,7 +2350,7 @@ static const union AnimCmd sAnim_UNOWN_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_WOBBUFFET_1[] = +static const union AnimCmd sAnim_Wobbuffet_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 20), @@ -2360,7 +2360,7 @@ static const union AnimCmd sAnim_WOBBUFFET_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_WOBBUFFET_2[] = +static const union AnimCmd sAnim_Wobbuffet_2[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 20), @@ -2370,7 +2370,7 @@ static const union AnimCmd sAnim_WOBBUFFET_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GIRAFARIG_1[] = +static const union AnimCmd sAnim_Girafarig_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -2378,7 +2378,7 @@ static const union AnimCmd sAnim_GIRAFARIG_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GIRAFARIG_2[] = +static const union AnimCmd sAnim_Girafarig_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -2387,7 +2387,7 @@ static const union AnimCmd sAnim_GIRAFARIG_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PINECO_1[] = +static const union AnimCmd sAnim_Pineco_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -2400,7 +2400,7 @@ static const union AnimCmd sAnim_PINECO_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_FORRETRESS_1[] = +static const union AnimCmd sAnim_Forretress_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -2409,7 +2409,7 @@ static const union AnimCmd sAnim_FORRETRESS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DUNSPARCE_1[] = +static const union AnimCmd sAnim_Dunsparce_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 15), @@ -2418,14 +2418,14 @@ static const union AnimCmd sAnim_DUNSPARCE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GLIGAR_1[] = +static const union AnimCmd sAnim_Gligar_1[] = { ANIMCMD_FRAME(1, 17), ANIMCMD_FRAME(0, 10), ANIMCMD_END, }; -static const union AnimCmd sAnim_STEELIX_1[] = +static const union AnimCmd sAnim_Steelix_1[] = { ANIMCMD_FRAME(0, 7), ANIMCMD_FRAME(1, 21), @@ -2435,21 +2435,21 @@ static const union AnimCmd sAnim_STEELIX_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SNUBBULL_1[] = +static const union AnimCmd sAnim_Snubbull_1[] = { ANIMCMD_FRAME(1, 32), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_GRANBULL_1[] = +static const union AnimCmd sAnim_Granbull_1[] = { ANIMCMD_FRAME(1, 35), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_QWILFISH_1[] = +static const union AnimCmd sAnim_Qwilfish_1[] = { ANIMCMD_FRAME(1, 8), ANIMCMD_FRAME(0, 8), @@ -2461,14 +2461,14 @@ static const union AnimCmd sAnim_QWILFISH_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SCIZOR_1[] = +static const union AnimCmd sAnim_Scizor_1[] = { ANIMCMD_FRAME(1, 20), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_SHUCKLE_1[] = +static const union AnimCmd sAnim_Shuckle_1[] = { ANIMCMD_FRAME(1, 50), ANIMCMD_FRAME(1, 50), @@ -2476,7 +2476,7 @@ static const union AnimCmd sAnim_SHUCKLE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_HERACROSS_1[] = +static const union AnimCmd sAnim_Heracross_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 20), @@ -2486,7 +2486,7 @@ static const union AnimCmd sAnim_HERACROSS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SNEASEL_1[] = +static const union AnimCmd sAnim_Sneasel_1[] = { ANIMCMD_FRAME(1, 8), ANIMCMD_FRAME(0, 8), @@ -2497,21 +2497,21 @@ static const union AnimCmd sAnim_SNEASEL_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_TEDDIURSA_1[] = +static const union AnimCmd sAnim_Teddiursa_1[] = { ANIMCMD_FRAME(1, 30), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_URSARING_1[] = +static const union AnimCmd sAnim_Ursaring_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_SLUGMA_1[] = +static const union AnimCmd sAnim_Slugma_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -2521,7 +2521,7 @@ static const union AnimCmd sAnim_SLUGMA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SLUGMA_2[] = +static const union AnimCmd sAnim_Slugma_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -2530,7 +2530,7 @@ static const union AnimCmd sAnim_SLUGMA_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MAGCARGO_1[] = +static const union AnimCmd sAnim_Magcargo_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -2540,7 +2540,7 @@ static const union AnimCmd sAnim_MAGCARGO_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MAGCARGO_2[] = +static const union AnimCmd sAnim_Magcargo_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -2549,7 +2549,7 @@ static const union AnimCmd sAnim_MAGCARGO_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SWINUB_1[] = +static const union AnimCmd sAnim_Swinub_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -2558,7 +2558,7 @@ static const union AnimCmd sAnim_SWINUB_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PILOSWINE_1[] = +static const union AnimCmd sAnim_Piloswine_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -2567,7 +2567,7 @@ static const union AnimCmd sAnim_PILOSWINE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CORSOLA_1[] = +static const union AnimCmd sAnim_Corsola_1[] = { ANIMCMD_FRAME(0, 11), ANIMCMD_FRAME(1, 10), @@ -2577,7 +2577,7 @@ static const union AnimCmd sAnim_CORSOLA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CORSOLA_2[] = +static const union AnimCmd sAnim_Corsola_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -2586,7 +2586,7 @@ static const union AnimCmd sAnim_CORSOLA_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_REMORAID_1[] = +static const union AnimCmd sAnim_Remoraid_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -2594,7 +2594,7 @@ static const union AnimCmd sAnim_REMORAID_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_OCTILLERY_1[] = +static const union AnimCmd sAnim_Octillery_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -2603,14 +2603,14 @@ static const union AnimCmd sAnim_OCTILLERY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DELIBIRD_1[] = +static const union AnimCmd sAnim_Delibird_1[] = { ANIMCMD_FRAME(1, 15), ANIMCMD_FRAME(0, 15), ANIMCMD_END, }; -static const union AnimCmd sAnim_MANTINE_1[] = +static const union AnimCmd sAnim_Mantine_1[] = { ANIMCMD_FRAME(1, 30), ANIMCMD_FRAME(0, 30), @@ -2619,28 +2619,28 @@ static const union AnimCmd sAnim_MANTINE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SKARMORY_1[] = +static const union AnimCmd sAnim_Skarmory_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_HOUNDOUR_1[] = +static const union AnimCmd sAnim_Houndour_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_HOUNDOOM_1[] = +static const union AnimCmd sAnim_Houndoom_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 30), ANIMCMD_END, }; -static const union AnimCmd sAnim_KINGDRA_1[] = +static const union AnimCmd sAnim_Kingdra_1[] = { ANIMCMD_FRAME(0, 11), ANIMCMD_FRAME(1, 10), @@ -2650,7 +2650,7 @@ static const union AnimCmd sAnim_KINGDRA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_KINGDRA_2[] = +static const union AnimCmd sAnim_Kingdra_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -2659,7 +2659,7 @@ static const union AnimCmd sAnim_KINGDRA_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PHANPY_1[] = +static const union AnimCmd sAnim_Phanpy_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 20), @@ -2671,7 +2671,7 @@ static const union AnimCmd sAnim_PHANPY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PHANPY_2[] = +static const union AnimCmd sAnim_Phanpy_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -2680,7 +2680,7 @@ static const union AnimCmd sAnim_PHANPY_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DONPHAN_1[] = +static const union AnimCmd sAnim_Donphan_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 25), @@ -2688,7 +2688,7 @@ static const union AnimCmd sAnim_DONPHAN_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PORYGON2_1[] = +static const union AnimCmd sAnim_Porygon2_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -2698,14 +2698,14 @@ static const union AnimCmd sAnim_PORYGON2_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_STANTLER_1[] = +static const union AnimCmd sAnim_Stantler_1[] = { ANIMCMD_FRAME(1, 15), ANIMCMD_FRAME(0, 15), ANIMCMD_END, }; -static const union AnimCmd sAnim_SMEARGLE_1[] = +static const union AnimCmd sAnim_Smeargle_1[] = { ANIMCMD_FRAME(1, 12), ANIMCMD_FRAME(0, 12), @@ -2714,14 +2714,14 @@ static const union AnimCmd sAnim_SMEARGLE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_TYROGUE_1[] = +static const union AnimCmd sAnim_Tyrogue_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_HITMONTOP_1[] = +static const union AnimCmd sAnim_Hitmontop_1[] = { ANIMCMD_FRAME(0, 4), ANIMCMD_FRAME(1, 4), @@ -2737,14 +2737,14 @@ static const union AnimCmd sAnim_HITMONTOP_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SMOOCHUM_1[] = +static const union AnimCmd sAnim_Smoochum_1[] = { ANIMCMD_FRAME(1, 20), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_ELEKID_1[] = +static const union AnimCmd sAnim_Elekid_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -2752,7 +2752,7 @@ static const union AnimCmd sAnim_ELEKID_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MAGBY_1[] = +static const union AnimCmd sAnim_Magby_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -2761,14 +2761,14 @@ static const union AnimCmd sAnim_MAGBY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MILTANK_1[] = +static const union AnimCmd sAnim_Miltank_1[] = { ANIMCMD_FRAME(1, 30), ANIMCMD_FRAME(0, 30), ANIMCMD_END, }; -static const union AnimCmd sAnim_BLISSEY_1[] = +static const union AnimCmd sAnim_Blissey_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -2776,7 +2776,7 @@ static const union AnimCmd sAnim_BLISSEY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_RAIKOU_1[] = +static const union AnimCmd sAnim_Raikou_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_FRAME(1, 36), @@ -2784,21 +2784,21 @@ static const union AnimCmd sAnim_RAIKOU_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ENTEI_1[] = +static const union AnimCmd sAnim_Entei_1[] = { ANIMCMD_FRAME(1, 20), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_SUICUNE_1[] = +static const union AnimCmd sAnim_Suicune_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_LARVITAR_1[] = +static const union AnimCmd sAnim_Larvitar_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -2807,14 +2807,14 @@ static const union AnimCmd sAnim_LARVITAR_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PUPITAR_1[] = +static const union AnimCmd sAnim_Pupitar_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 10), ANIMCMD_END, }; -static const union AnimCmd sAnim_TYRANITAR_1[] = +static const union AnimCmd sAnim_Tyranitar_1[] = { ANIMCMD_FRAME(1, 50), ANIMCMD_FRAME(1, 30), @@ -2822,7 +2822,7 @@ static const union AnimCmd sAnim_TYRANITAR_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_LUGIA_1[] = +static const union AnimCmd sAnim_Lugia_1[] = { ANIMCMD_FRAME(1, 5), ANIMCMD_FRAME(0, 5), @@ -2839,14 +2839,14 @@ static const union AnimCmd sAnim_LUGIA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_HO_OH_1[] = +static const union AnimCmd sAnim_HoOh_1[] = { ANIMCMD_FRAME(1, 20), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_CELEBI_1[] = +static const union AnimCmd sAnim_Celebi_1[] = { ANIMCMD_FRAME(1, 30), ANIMCMD_FRAME(0, 30), @@ -2855,7 +2855,7 @@ static const union AnimCmd sAnim_CELEBI_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_OLD_UNOWN_B_1[] = +static const union AnimCmd sAnim_OldUnownB_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -2863,16 +2863,17 @@ static const union AnimCmd sAnim_OLD_UNOWN_B_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_TREECKO_1[] = +static const union AnimCmd sAnim_Treecko_1[] = { ANIMCMD_FRAME(0, 6), ANIMCMD_FRAME(1, 15), ANIMCMD_FRAME(0, 6), ANIMCMD_FRAME(1, 15), ANIMCMD_FRAME(0, 3), - ANIMCMD_END,}; + ANIMCMD_END, +}; -static const union AnimCmd sAnim_GROVYLE_1[] = +static const union AnimCmd sAnim_Grovyle_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 18), @@ -2882,7 +2883,7 @@ static const union AnimCmd sAnim_GROVYLE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SCEPTILE_1[] = +static const union AnimCmd sAnim_Sceptile_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 26), @@ -2890,7 +2891,7 @@ static const union AnimCmd sAnim_SCEPTILE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_TORCHIC_1[] = +static const union AnimCmd sAnim_Torchic_1[] = { ANIMCMD_FRAME(0, 7), ANIMCMD_FRAME(1, 4), @@ -2902,14 +2903,15 @@ static const union AnimCmd sAnim_TORCHIC_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_COMBUSKEN_1[] = +static const union AnimCmd sAnim_Combusken_1[] = { ANIMCMD_FRAME(0, 8), ANIMCMD_FRAME(1, 25), ANIMCMD_FRAME(0, 12), - ANIMCMD_END,}; + ANIMCMD_END, +}; -static const union AnimCmd sAnim_BLAZIKEN_1[] = +static const union AnimCmd sAnim_Blaziken_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_FRAME(1, 25), @@ -2919,7 +2921,7 @@ static const union AnimCmd sAnim_BLAZIKEN_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BLAZIKEN_2[] = +static const union AnimCmd sAnim_Blaziken_2[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_FRAME(2, 8), @@ -2927,20 +2929,20 @@ static const union AnimCmd sAnim_BLAZIKEN_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BLAZIKEN_3[] = +static const union AnimCmd sAnim_Blaziken_3[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(2, 10), ANIMCMD_END, }; -static const union AnimCmd sAnim_BLAZIKEN_4[] = +static const union AnimCmd sAnim_Blaziken_4[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_END, }; -static const union AnimCmd sAnim_MUDKIP_1[] = +static const union AnimCmd sAnim_Mudkip_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 8), @@ -2950,7 +2952,7 @@ static const union AnimCmd sAnim_MUDKIP_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MARSHTOMP_1[] = +static const union AnimCmd sAnim_Marshtomp_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 5), @@ -2964,7 +2966,7 @@ static const union AnimCmd sAnim_MARSHTOMP_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SWAMPERT_1[] = +static const union AnimCmd sAnim_Swampert_1[] = { ANIMCMD_FRAME(0, 8), ANIMCMD_FRAME(1, 44), @@ -2974,7 +2976,7 @@ static const union AnimCmd sAnim_SWAMPERT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_POOCHYENA_1[] = +static const union AnimCmd sAnim_Poochyena_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 44), @@ -2982,7 +2984,7 @@ static const union AnimCmd sAnim_POOCHYENA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MIGHTYENA_1[] = +static const union AnimCmd sAnim_Mightyena_1[] = { ANIMCMD_FRAME(0, 27), ANIMCMD_FRAME(1, 6), @@ -2992,7 +2994,7 @@ static const union AnimCmd sAnim_MIGHTYENA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ZIGZAGOON_1[] = +static const union AnimCmd sAnim_Zigzagoon_1[] = { ANIMCMD_FRAME(0, 27), ANIMCMD_FRAME(1, 6), @@ -3002,7 +3004,7 @@ static const union AnimCmd sAnim_ZIGZAGOON_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_LINOONE_1[] = +static const union AnimCmd sAnim_Linoone_1[] = { ANIMCMD_FRAME(0, 14), ANIMCMD_FRAME(1, 14), @@ -3012,7 +3014,7 @@ static const union AnimCmd sAnim_LINOONE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_WURMPLE_1[] = +static const union AnimCmd sAnim_Wurmple_1[] = { ANIMCMD_FRAME(0, 22), ANIMCMD_FRAME(1, 35), @@ -3020,7 +3022,7 @@ static const union AnimCmd sAnim_WURMPLE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SILCOON_1[] = +static const union AnimCmd sAnim_Silcoon_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 25), @@ -3028,13 +3030,13 @@ static const union AnimCmd sAnim_SILCOON_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SILCOON_2[] = +static const union AnimCmd sAnim_Silcoon_2[] = { ANIMCMD_FRAME(1, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_BEAUTIFLY_1[] = +static const union AnimCmd sAnim_Beautifly_1[] = { ANIMCMD_FRAME(0, 2), ANIMCMD_FRAME(1, 2), @@ -3048,13 +3050,13 @@ static const union AnimCmd sAnim_BEAUTIFLY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BEAUTIFLY_2[] = +static const union AnimCmd sAnim_Beautifly_2[] = { ANIMCMD_FRAME(1, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_CASCOON_1[] = +static const union AnimCmd sAnim_Cascoon_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -3064,13 +3066,13 @@ static const union AnimCmd sAnim_CASCOON_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CASCOON_2[] = +static const union AnimCmd sAnim_Cascoon_2[] = { ANIMCMD_FRAME(1, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_DUSTOX_1[] = +static const union AnimCmd sAnim_Dustox_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_FRAME(1, 1), @@ -3090,13 +3092,13 @@ static const union AnimCmd sAnim_DUSTOX_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DUSTOX_2[] = +static const union AnimCmd sAnim_Dustox_2[] = { ANIMCMD_FRAME(1, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_LOTAD_1[] = +static const union AnimCmd sAnim_Lotad_1[] = { ANIMCMD_FRAME(0, 22), ANIMCMD_FRAME(1, 55), @@ -3104,7 +3106,7 @@ static const union AnimCmd sAnim_LOTAD_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_LOMBRE_1[] = +static const union AnimCmd sAnim_Lombre_1[] = { ANIMCMD_FRAME(0, 6), ANIMCMD_FRAME(1, 30), @@ -3114,7 +3116,7 @@ static const union AnimCmd sAnim_LOMBRE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_LUDICOLO_1[] = +static const union AnimCmd sAnim_Ludicolo_1[] = { ANIMCMD_FRAME(0, 22), ANIMCMD_FRAME(1, 22), @@ -3126,7 +3128,7 @@ static const union AnimCmd sAnim_LUDICOLO_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SEEDOT_1[] = +static const union AnimCmd sAnim_Seedot_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -3140,7 +3142,7 @@ static const union AnimCmd sAnim_SEEDOT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_NUZLEAF_1[] = +static const union AnimCmd sAnim_Nuzleaf_1[] = { ANIMCMD_FRAME(0, 7), ANIMCMD_FRAME(1, 15), @@ -3154,7 +3156,7 @@ static const union AnimCmd sAnim_NUZLEAF_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SHIFTRY_1[] = +static const union AnimCmd sAnim_Shiftry_1[] = { ANIMCMD_FRAME(0, 7), ANIMCMD_FRAME(1, 35), @@ -3162,7 +3164,7 @@ static const union AnimCmd sAnim_SHIFTRY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_NINCADA_1[] = +static const union AnimCmd sAnim_Nincada_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 22), @@ -3172,7 +3174,7 @@ static const union AnimCmd sAnim_NINCADA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_NINJASK_1[] = +static const union AnimCmd sAnim_Ninjask_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_FRAME(1, 1), @@ -3195,7 +3197,7 @@ static const union AnimCmd sAnim_NINJASK_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SHEDINJA_1[] = +static const union AnimCmd sAnim_Shedinja_1[] = { ANIMCMD_FRAME(0, 33), ANIMCMD_FRAME(1, 33), @@ -3205,7 +3207,7 @@ static const union AnimCmd sAnim_SHEDINJA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_TAILLOW_1[] = +static const union AnimCmd sAnim_Taillow_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 15), @@ -3219,7 +3221,7 @@ static const union AnimCmd sAnim_TAILLOW_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SWELLOW_1[] = +static const union AnimCmd sAnim_Swellow_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 18), @@ -3227,7 +3229,7 @@ static const union AnimCmd sAnim_SWELLOW_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SHROOMISH_1[] = +static const union AnimCmd sAnim_Shroomish_1[] = { ANIMCMD_FRAME(0, 6), ANIMCMD_FRAME(1, 6), @@ -3243,7 +3245,7 @@ static const union AnimCmd sAnim_SHROOMISH_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BRELOOM_1[] = +static const union AnimCmd sAnim_Breloom_1[] = { ANIMCMD_FRAME(0, 6), ANIMCMD_FRAME(1, 30), @@ -3253,7 +3255,7 @@ static const union AnimCmd sAnim_BRELOOM_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_WINGULL_1[] = +static const union AnimCmd sAnim_Wingull_1[] = { ANIMCMD_FRAME(0, 17), ANIMCMD_FRAME(1, 23), @@ -3261,7 +3263,7 @@ static const union AnimCmd sAnim_WINGULL_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PELIPPER_1[] = +static const union AnimCmd sAnim_Pelipper_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 5), @@ -3275,7 +3277,7 @@ static const union AnimCmd sAnim_PELIPPER_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SURSKIT_1[] = +static const union AnimCmd sAnim_Surskit_1[] = { ANIMCMD_FRAME(0, 6), ANIMCMD_FRAME(1, 18), @@ -3285,13 +3287,13 @@ static const union AnimCmd sAnim_SURSKIT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SURSKIT_2[] = +static const union AnimCmd sAnim_Surskit_2[] = { ANIMCMD_FRAME(1, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_MASQUERAIN_1[] = +static const union AnimCmd sAnim_Masquerain_1[] = { ANIMCMD_FRAME(0, 8), ANIMCMD_FRAME(1, 8), @@ -3305,13 +3307,13 @@ static const union AnimCmd sAnim_MASQUERAIN_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MASQUERAIN_2[] = +static const union AnimCmd sAnim_Masquerain_2[] = { ANIMCMD_FRAME(1, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_WAILMER_1[] = +static const union AnimCmd sAnim_Wailmer_1[] = { ANIMCMD_FRAME(0, 22), ANIMCMD_FRAME(1, 22), @@ -3323,7 +3325,7 @@ static const union AnimCmd sAnim_WAILMER_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_WAILORD_1[] = +static const union AnimCmd sAnim_Wailord_1[] = { ANIMCMD_FRAME(0, 26), ANIMCMD_FRAME(1, 48), @@ -3331,7 +3333,7 @@ static const union AnimCmd sAnim_WAILORD_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SKITTY_1[] = +static const union AnimCmd sAnim_Skitty_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 35), @@ -3339,7 +3341,7 @@ static const union AnimCmd sAnim_SKITTY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DELCATTY_1[] = +static const union AnimCmd sAnim_Delcatty_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 46), @@ -3347,7 +3349,7 @@ static const union AnimCmd sAnim_DELCATTY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_KECLEON_1[] = +static const union AnimCmd sAnim_Kecleon_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 18), @@ -3357,7 +3359,7 @@ static const union AnimCmd sAnim_KECLEON_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BALTOY_1[] = +static const union AnimCmd sAnim_Baltoy_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -3369,7 +3371,7 @@ static const union AnimCmd sAnim_BALTOY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CLAYDOL_1[] = +static const union AnimCmd sAnim_Claydol_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -3381,7 +3383,7 @@ static const union AnimCmd sAnim_CLAYDOL_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_NOSEPASS_1[] = +static const union AnimCmd sAnim_Nosepass_1[] = { ANIMCMD_FRAME(0, 27), ANIMCMD_FRAME(1, 27), @@ -3393,7 +3395,7 @@ static const union AnimCmd sAnim_NOSEPASS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_TORKOAL_1[] = +static const union AnimCmd sAnim_Torkoal_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -3403,7 +3405,7 @@ static const union AnimCmd sAnim_TORKOAL_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SABLEYE_1[] = +static const union AnimCmd sAnim_Sableye_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -3413,7 +3415,7 @@ static const union AnimCmd sAnim_SABLEYE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BARBOACH_1[] = +static const union AnimCmd sAnim_Barboach_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -3431,7 +3433,7 @@ static const union AnimCmd sAnim_BARBOACH_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_WHISCASH_1[] = +static const union AnimCmd sAnim_Whiscash_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -3449,7 +3451,7 @@ static const union AnimCmd sAnim_WHISCASH_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_LUVDISC_1[] = +static const union AnimCmd sAnim_Luvdisc_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -3459,7 +3461,7 @@ static const union AnimCmd sAnim_LUVDISC_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CORPHISH_1[] = +static const union AnimCmd sAnim_Corphish_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -3471,7 +3473,7 @@ static const union AnimCmd sAnim_CORPHISH_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CRAWDAUNT_1[] = +static const union AnimCmd sAnim_Crawdaunt_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -3481,7 +3483,7 @@ static const union AnimCmd sAnim_CRAWDAUNT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_FEEBAS_1[] = +static const union AnimCmd sAnim_Feebas_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -3493,7 +3495,7 @@ static const union AnimCmd sAnim_FEEBAS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MILOTIC_1[] = +static const union AnimCmd sAnim_Milotic_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -3505,7 +3507,7 @@ static const union AnimCmd sAnim_MILOTIC_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CARVANHA_1[] = +static const union AnimCmd sAnim_Carvanha_1[] = { ANIMCMD_FRAME(0, 6), ANIMCMD_FRAME(1, 6), @@ -3519,7 +3521,7 @@ static const union AnimCmd sAnim_CARVANHA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SHARPEDO_1[] = +static const union AnimCmd sAnim_Sharpedo_1[] = { ANIMCMD_FRAME(0, 6), ANIMCMD_FRAME(1, 6), @@ -3533,7 +3535,7 @@ static const union AnimCmd sAnim_SHARPEDO_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_TRAPINCH_1[] = +static const union AnimCmd sAnim_Trapinch_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -3543,7 +3545,7 @@ static const union AnimCmd sAnim_TRAPINCH_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_VIBRAVA_1[] = +static const union AnimCmd sAnim_Vibrava_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -3555,7 +3557,7 @@ static const union AnimCmd sAnim_VIBRAVA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_FLYGON_1[] = +static const union AnimCmd sAnim_Flygon_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -3567,7 +3569,7 @@ static const union AnimCmd sAnim_FLYGON_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MAKUHITA_1[] = +static const union AnimCmd sAnim_Makuhita_1[] = { ANIMCMD_FRAME(0, 7), ANIMCMD_FRAME(1, 10), @@ -3581,7 +3583,7 @@ static const union AnimCmd sAnim_MAKUHITA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_HARIYAMA_1[] = +static const union AnimCmd sAnim_Hariyama_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -3590,7 +3592,7 @@ static const union AnimCmd sAnim_HARIYAMA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ELECTRIKE_1[] = +static const union AnimCmd sAnim_Electrike_1[] = { ANIMCMD_FRAME(0, 8), ANIMCMD_FRAME(1, 25), @@ -3600,7 +3602,7 @@ static const union AnimCmd sAnim_ELECTRIKE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MANECTRIC_1[] = +static const union AnimCmd sAnim_Manectric_1[] = { ANIMCMD_FRAME(0, 8), ANIMCMD_FRAME(1, 33), @@ -3610,7 +3612,7 @@ static const union AnimCmd sAnim_MANECTRIC_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_NUMEL_1[] = +static const union AnimCmd sAnim_Numel_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -3620,7 +3622,7 @@ static const union AnimCmd sAnim_NUMEL_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CAMERUPT_1[] = +static const union AnimCmd sAnim_Camerupt_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -3632,7 +3634,7 @@ static const union AnimCmd sAnim_CAMERUPT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SPHEAL_1[] = +static const union AnimCmd sAnim_Spheal_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 43), @@ -3645,7 +3647,7 @@ static const union AnimCmd sAnim_SPHEAL_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SEALEO_1[] = +static const union AnimCmd sAnim_Sealeo_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -3655,7 +3657,7 @@ static const union AnimCmd sAnim_SEALEO_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_WALREIN_1[] = +static const union AnimCmd sAnim_Walrein_1[] = { ANIMCMD_FRAME(0, 2), ANIMCMD_FRAME(1, 10), @@ -3665,7 +3667,7 @@ static const union AnimCmd sAnim_WALREIN_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CACNEA_1[] = +static const union AnimCmd sAnim_Cacnea_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -3681,7 +3683,7 @@ static const union AnimCmd sAnim_CACNEA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CACTURNE_1[] = +static const union AnimCmd sAnim_Cacturne_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -3691,7 +3693,7 @@ static const union AnimCmd sAnim_CACTURNE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SNORUNT_1[] = +static const union AnimCmd sAnim_Snorunt_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -3701,7 +3703,7 @@ static const union AnimCmd sAnim_SNORUNT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GLALIE_1[] = +static const union AnimCmd sAnim_Glalie_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -3711,7 +3713,7 @@ static const union AnimCmd sAnim_GLALIE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_LUNATONE_1[] = +static const union AnimCmd sAnim_Lunatone_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 20), @@ -3721,7 +3723,7 @@ static const union AnimCmd sAnim_LUNATONE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_LUNATONE_2[] = +static const union AnimCmd sAnim_Lunatone_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -3730,7 +3732,7 @@ static const union AnimCmd sAnim_LUNATONE_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SOLROCK_1[] = +static const union AnimCmd sAnim_Solrock_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 20), @@ -3740,7 +3742,7 @@ static const union AnimCmd sAnim_SOLROCK_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SOLROCK_2[] = +static const union AnimCmd sAnim_Solrock_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -3749,7 +3751,7 @@ static const union AnimCmd sAnim_SOLROCK_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_AZURILL_1[] = +static const union AnimCmd sAnim_Azurill_1[] = { ANIMCMD_FRAME(0, 12), ANIMCMD_FRAME(1, 12), @@ -3761,7 +3763,7 @@ static const union AnimCmd sAnim_AZURILL_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SPOINK_1[] = +static const union AnimCmd sAnim_Spoink_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 10), @@ -3777,7 +3779,7 @@ static const union AnimCmd sAnim_SPOINK_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GRUMPIG_1[] = +static const union AnimCmd sAnim_Grumpig_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -3787,7 +3789,7 @@ static const union AnimCmd sAnim_GRUMPIG_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PLUSLE_1[] = +static const union AnimCmd sAnim_Plusle_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -3797,7 +3799,7 @@ static const union AnimCmd sAnim_PLUSLE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MINUN_1[] = +static const union AnimCmd sAnim_Minun_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -3807,7 +3809,7 @@ static const union AnimCmd sAnim_MINUN_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MAWILE_1[] = +static const union AnimCmd sAnim_Mawile_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -3819,7 +3821,7 @@ static const union AnimCmd sAnim_MAWILE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MEDITITE_1[] = +static const union AnimCmd sAnim_Meditite_1[] = { ANIMCMD_FRAME(0, 22), ANIMCMD_FRAME(1, 2), @@ -3827,7 +3829,7 @@ static const union AnimCmd sAnim_MEDITITE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MEDICHAM_1[] = +static const union AnimCmd sAnim_Medicham_1[] = { ANIMCMD_FRAME(0, 11), ANIMCMD_FRAME(1, 11), @@ -3839,7 +3841,7 @@ static const union AnimCmd sAnim_MEDICHAM_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SWABLU_1[] = +static const union AnimCmd sAnim_Swablu_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_FRAME(1, 10), @@ -3851,7 +3853,7 @@ static const union AnimCmd sAnim_SWABLU_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SWABLU_2[] = +static const union AnimCmd sAnim_Swablu_2[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_FRAME(2, 8), @@ -3862,7 +3864,7 @@ static const union AnimCmd sAnim_SWABLU_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ALTARIA_1[] = +static const union AnimCmd sAnim_Altaria_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 20), @@ -3872,7 +3874,7 @@ static const union AnimCmd sAnim_ALTARIA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ALTARIA_2[] = +static const union AnimCmd sAnim_Altaria_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -3881,7 +3883,7 @@ static const union AnimCmd sAnim_ALTARIA_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_WYNAUT_1[] = +static const union AnimCmd sAnim_Wynaut_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -3891,7 +3893,7 @@ static const union AnimCmd sAnim_WYNAUT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DUSKULL_1[] = +static const union AnimCmd sAnim_Duskull_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -3901,7 +3903,7 @@ static const union AnimCmd sAnim_DUSKULL_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DUSCLOPS_1[] = +static const union AnimCmd sAnim_Dusclops_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -3911,7 +3913,7 @@ static const union AnimCmd sAnim_DUSCLOPS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ROSELIA_1[] = +static const union AnimCmd sAnim_Roselia_1[] = { ANIMCMD_FRAME(0, 18), ANIMCMD_FRAME(1, 44), @@ -3919,7 +3921,7 @@ static const union AnimCmd sAnim_ROSELIA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SLAKOTH_1[] = +static const union AnimCmd sAnim_Slakoth_1[] = { ANIMCMD_FRAME(0, 13), ANIMCMD_FRAME(1, 22), @@ -3930,7 +3932,7 @@ static const union AnimCmd sAnim_SLAKOTH_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_VIGOROTH_1[] = +static const union AnimCmd sAnim_Vigoroth_1[] = { ANIMCMD_FRAME(0, 13), ANIMCMD_FRAME(1, 7), @@ -3942,7 +3944,7 @@ static const union AnimCmd sAnim_VIGOROTH_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SLAKING_1[] = +static const union AnimCmd sAnim_Slaking_1[] = { ANIMCMD_FRAME(0, 22), ANIMCMD_FRAME(1, 22), @@ -3954,7 +3956,7 @@ static const union AnimCmd sAnim_SLAKING_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GULPIN_1[] = +static const union AnimCmd sAnim_Gulpin_1[] = { ANIMCMD_FRAME(0, 14), ANIMCMD_FRAME(1, 14), @@ -3964,7 +3966,7 @@ static const union AnimCmd sAnim_GULPIN_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SWALOT_1[] = +static const union AnimCmd sAnim_Swalot_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 30), @@ -3973,7 +3975,7 @@ static const union AnimCmd sAnim_SWALOT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_TROPIUS_1[] = +static const union AnimCmd sAnim_Tropius_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -3983,7 +3985,7 @@ static const union AnimCmd sAnim_TROPIUS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_WHISMUR_1[] = +static const union AnimCmd sAnim_Whismur_1[] = { ANIMCMD_FRAME(0, 9), ANIMCMD_FRAME(1, 9), @@ -3998,7 +4000,7 @@ static const union AnimCmd sAnim_WHISMUR_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_LOUDRED_1[] = +static const union AnimCmd sAnim_Loudred_1[] = { ANIMCMD_FRAME(0, 9), ANIMCMD_FRAME(1, 9), @@ -4008,7 +4010,7 @@ static const union AnimCmd sAnim_LOUDRED_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_EXPLOUD_1[] = +static const union AnimCmd sAnim_Exploud_1[] = { ANIMCMD_FRAME(0, 9), ANIMCMD_FRAME(1, 44), @@ -4016,7 +4018,7 @@ static const union AnimCmd sAnim_EXPLOUD_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CLAMPERL_1[] = +static const union AnimCmd sAnim_Clamperl_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -4026,7 +4028,7 @@ static const union AnimCmd sAnim_CLAMPERL_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_HUNTAIL_1[] = +static const union AnimCmd sAnim_Huntail_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -4036,7 +4038,7 @@ static const union AnimCmd sAnim_HUNTAIL_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GOREBYSS_1[] = +static const union AnimCmd sAnim_Gorebyss_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -4046,7 +4048,7 @@ static const union AnimCmd sAnim_GOREBYSS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ABSOL_1[] = +static const union AnimCmd sAnim_Absol_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -4056,7 +4058,7 @@ static const union AnimCmd sAnim_ABSOL_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SHUPPET_1[] = +static const union AnimCmd sAnim_Shuppet_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -4068,7 +4070,7 @@ static const union AnimCmd sAnim_SHUPPET_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BANETTE_1[] = +static const union AnimCmd sAnim_Banette_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -4080,7 +4082,7 @@ static const union AnimCmd sAnim_BANETTE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SEVIPER_1[] = +static const union AnimCmd sAnim_Seviper_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -4092,7 +4094,7 @@ static const union AnimCmd sAnim_SEVIPER_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ZANGOOSE_1[] = +static const union AnimCmd sAnim_Zangoose_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -4104,7 +4106,7 @@ static const union AnimCmd sAnim_ZANGOOSE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_RELICANTH_1[] = +static const union AnimCmd sAnim_Relicanth_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -4114,7 +4116,7 @@ static const union AnimCmd sAnim_RELICANTH_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ARON_1[] = +static const union AnimCmd sAnim_Aron_1[] = { ANIMCMD_FRAME(0, 33), ANIMCMD_FRAME(1, 44), @@ -4124,7 +4126,7 @@ static const union AnimCmd sAnim_ARON_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_LAIRON_1[] = +static const union AnimCmd sAnim_Lairon_1[] = { ANIMCMD_FRAME(0, 12), ANIMCMD_FRAME(1, 29), @@ -4134,7 +4136,7 @@ static const union AnimCmd sAnim_LAIRON_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_AGGRON_1[] = +static const union AnimCmd sAnim_Aggron_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 44), @@ -4142,31 +4144,31 @@ static const union AnimCmd sAnim_AGGRON_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CASTFORM_0[] = +static const union AnimCmd sAnim_Castform_0[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_CASTFORM_1[] = +static const union AnimCmd sAnim_Castform_1[] = { ANIMCMD_FRAME(1, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_CASTFORM_2[] = +static const union AnimCmd sAnim_Castform_2[] = { ANIMCMD_FRAME(2, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_CASTFORM_3[] = +static const union AnimCmd sAnim_Castform_3[] = { ANIMCMD_FRAME(3, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_VOLBEAT_1[] = +static const union AnimCmd sAnim_Volbeat_1[] = { ANIMCMD_FRAME(0, 11), ANIMCMD_FRAME(1, 11), @@ -4178,7 +4180,7 @@ static const union AnimCmd sAnim_VOLBEAT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ILLUMISE_1[] = +static const union AnimCmd sAnim_Illumise_1[] = { ANIMCMD_FRAME(0, 22), ANIMCMD_FRAME(1, 22), @@ -4188,7 +4190,7 @@ static const union AnimCmd sAnim_ILLUMISE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_LILEEP_1[] = +static const union AnimCmd sAnim_Lileep_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -4198,7 +4200,7 @@ static const union AnimCmd sAnim_LILEEP_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CRADILY_1[] = +static const union AnimCmd sAnim_Cradily_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -4210,7 +4212,7 @@ static const union AnimCmd sAnim_CRADILY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ANORITH_1[] = +static const union AnimCmd sAnim_Anorith_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -4222,7 +4224,7 @@ static const union AnimCmd sAnim_ANORITH_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ARMALDO_1[] = +static const union AnimCmd sAnim_Armaldo_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -4232,7 +4234,7 @@ static const union AnimCmd sAnim_ARMALDO_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_RALTS_1[] = +static const union AnimCmd sAnim_Ralts_1[] = { ANIMCMD_FRAME(0, 8), ANIMCMD_FRAME(1, 25), @@ -4240,7 +4242,7 @@ static const union AnimCmd sAnim_RALTS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_KIRLIA_1[] = +static const union AnimCmd sAnim_Kirlia_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 39), @@ -4248,7 +4250,7 @@ static const union AnimCmd sAnim_KIRLIA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GARDEVOIR_1[] = +static const union AnimCmd sAnim_Gardevoir_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -4256,7 +4258,7 @@ static const union AnimCmd sAnim_GARDEVOIR_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BAGON_1[] = +static const union AnimCmd sAnim_Bagon_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -4266,7 +4268,7 @@ static const union AnimCmd sAnim_BAGON_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SHELGON_1[] = +static const union AnimCmd sAnim_Shelgon_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -4276,7 +4278,7 @@ static const union AnimCmd sAnim_SHELGON_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SALAMENCE_1[] = +static const union AnimCmd sAnim_Salamence_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -4286,7 +4288,7 @@ static const union AnimCmd sAnim_SALAMENCE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BELDUM_1[] = +static const union AnimCmd sAnim_Beldum_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -4296,7 +4298,7 @@ static const union AnimCmd sAnim_BELDUM_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_METANG_1[] = +static const union AnimCmd sAnim_Metang_1[] = { ANIMCMD_FRAME(0, 8), ANIMCMD_FRAME(1, 8), @@ -4306,7 +4308,7 @@ static const union AnimCmd sAnim_METANG_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_METAGROSS_1[] = +static const union AnimCmd sAnim_Metagross_1[] = { ANIMCMD_FRAME(0, 16), ANIMCMD_FRAME(1, 16), @@ -4316,7 +4318,7 @@ static const union AnimCmd sAnim_METAGROSS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_REGIROCK_1[] = +static const union AnimCmd sAnim_Regirock_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -4326,7 +4328,7 @@ static const union AnimCmd sAnim_REGIROCK_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_REGIROCK_2[] = +static const union AnimCmd sAnim_Regirock_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -4335,7 +4337,7 @@ static const union AnimCmd sAnim_REGIROCK_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_REGICE_1[] = +static const union AnimCmd sAnim_Regice_1[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(1, 15), @@ -4345,7 +4347,7 @@ static const union AnimCmd sAnim_REGICE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_REGISTEEL_1[] = +static const union AnimCmd sAnim_Registeel_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -4355,7 +4357,7 @@ static const union AnimCmd sAnim_REGISTEEL_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_REGISTEEL_2[] = +static const union AnimCmd sAnim_Registeel_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -4364,7 +4366,7 @@ static const union AnimCmd sAnim_REGISTEEL_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_KYOGRE_1[] = +static const union AnimCmd sAnim_Kyogre_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -4374,7 +4376,7 @@ static const union AnimCmd sAnim_KYOGRE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_KYOGRE_2[] = +static const union AnimCmd sAnim_Kyogre_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -4383,7 +4385,7 @@ static const union AnimCmd sAnim_KYOGRE_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GROUDON_1[] = +static const union AnimCmd sAnim_Groudon_1[] = { ANIMCMD_FRAME(0, 11), ANIMCMD_FRAME(1, 10), @@ -4393,7 +4395,7 @@ static const union AnimCmd sAnim_GROUDON_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GROUDON_2[] = +static const union AnimCmd sAnim_Groudon_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -4402,7 +4404,7 @@ static const union AnimCmd sAnim_GROUDON_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_RAYQUAZA_1[] = +static const union AnimCmd sAnim_Rayquaza_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_FRAME(1, 8), @@ -4412,7 +4414,7 @@ static const union AnimCmd sAnim_RAYQUAZA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_RAYQUAZA_2[] = +static const union AnimCmd sAnim_Rayquaza_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -4421,7 +4423,7 @@ static const union AnimCmd sAnim_RAYQUAZA_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_LATIAS_1[] = +static const union AnimCmd sAnim_Latias_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -4431,7 +4433,7 @@ static const union AnimCmd sAnim_LATIAS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_LATIAS_2[] = +static const union AnimCmd sAnim_Latias_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -4440,7 +4442,7 @@ static const union AnimCmd sAnim_LATIAS_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_LATIOS_1[] = +static const union AnimCmd sAnim_Latios_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -4450,7 +4452,7 @@ static const union AnimCmd sAnim_LATIOS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_LATIOS_2[] = +static const union AnimCmd sAnim_Latios_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -4459,7 +4461,7 @@ static const union AnimCmd sAnim_LATIOS_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_JIRACHI_1[] = +static const union AnimCmd sAnim_Jirachi_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -4474,7 +4476,7 @@ static const union AnimCmd sAnim_JIRACHI_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_JIRACHI_2[] = +static const union AnimCmd sAnim_Jirachi_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -4483,7 +4485,7 @@ static const union AnimCmd sAnim_JIRACHI_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DEOXYS_1[] = +static const union AnimCmd sAnim_Deoxys_1[] = { ANIMCMD_FRAME(0, 16), ANIMCMD_FRAME(1, 16), @@ -4493,7 +4495,7 @@ static const union AnimCmd sAnim_DEOXYS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DEOXYS_2[] = +static const union AnimCmd sAnim_Deoxys_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -4502,7 +4504,7 @@ static const union AnimCmd sAnim_DEOXYS_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CHIMECHO_1[] = +static const union AnimCmd sAnim_Chimecho_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -4516,7 +4518,7 @@ static const union AnimCmd sAnim_CHIMECHO_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_EGG_1[] = +static const union AnimCmd sAnim_Egg_1[] = { ANIMCMD_FRAME(0, 6), ANIMCMD_FRAME(1, 6), @@ -4525,7 +4527,7 @@ static const union AnimCmd sAnim_EGG_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_UNOWN_B_1[] = +static const union AnimCmd sAnim_UnownB_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -4533,7 +4535,7 @@ static const union AnimCmd sAnim_UNOWN_B_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_UNOWN_C_1[] = +static const union AnimCmd sAnim_UnownC_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -4541,7 +4543,7 @@ static const union AnimCmd sAnim_UNOWN_C_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_UNOWN_D_1[] = +static const union AnimCmd sAnim_UnownD_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -4549,7 +4551,7 @@ static const union AnimCmd sAnim_UNOWN_D_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_UNOWN_E_1[] = +static const union AnimCmd sAnim_UnownE_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -4557,7 +4559,7 @@ static const union AnimCmd sAnim_UNOWN_E_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_UNOWN_F_1[] = +static const union AnimCmd sAnim_UnownF_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -4565,7 +4567,7 @@ static const union AnimCmd sAnim_UNOWN_F_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_UNOWN_G_1[] = +static const union AnimCmd sAnim_UnownG_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -4573,7 +4575,7 @@ static const union AnimCmd sAnim_UNOWN_G_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_UNOWN_H_1[] = +static const union AnimCmd sAnim_UnownH_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -4581,7 +4583,7 @@ static const union AnimCmd sAnim_UNOWN_H_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_UNOWN_I_1[] = +static const union AnimCmd sAnim_UnownI_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -4589,7 +4591,7 @@ static const union AnimCmd sAnim_UNOWN_I_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_UNOWN_J_1[] = +static const union AnimCmd sAnim_UnownJ_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -4597,7 +4599,7 @@ static const union AnimCmd sAnim_UNOWN_J_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_UNOWN_K_1[] = +static const union AnimCmd sAnim_UnownK_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -4605,7 +4607,7 @@ static const union AnimCmd sAnim_UNOWN_K_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_UNOWN_L_1[] = +static const union AnimCmd sAnim_UnownL_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -4613,7 +4615,7 @@ static const union AnimCmd sAnim_UNOWN_L_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_UNOWN_M_1[] = +static const union AnimCmd sAnim_UnownM_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -4621,7 +4623,7 @@ static const union AnimCmd sAnim_UNOWN_M_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_UNOWN_N_1[] = +static const union AnimCmd sAnim_UnownN_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -4629,7 +4631,7 @@ static const union AnimCmd sAnim_UNOWN_N_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_UNOWN_O_1[] = +static const union AnimCmd sAnim_UnownO_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -4637,7 +4639,7 @@ static const union AnimCmd sAnim_UNOWN_O_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_UNOWN_P_1[] = +static const union AnimCmd sAnim_UnownP_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -4645,7 +4647,7 @@ static const union AnimCmd sAnim_UNOWN_P_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_UNOWN_Q_1[] = +static const union AnimCmd sAnim_UnownQ_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -4653,7 +4655,7 @@ static const union AnimCmd sAnim_UNOWN_Q_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_UNOWN_R_1[] = +static const union AnimCmd sAnim_UnownR_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -4661,7 +4663,7 @@ static const union AnimCmd sAnim_UNOWN_R_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_UNOWN_S_1[] = +static const union AnimCmd sAnim_UnownS_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -4669,7 +4671,7 @@ static const union AnimCmd sAnim_UNOWN_S_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_UNOWN_T_1[] = +static const union AnimCmd sAnim_UnownT_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -4677,7 +4679,7 @@ static const union AnimCmd sAnim_UNOWN_T_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_UNOWN_U_1[] = +static const union AnimCmd sAnim_UnownU_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -4685,7 +4687,7 @@ static const union AnimCmd sAnim_UNOWN_U_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_UNOWN_V_1[] = +static const union AnimCmd sAnim_UnownV_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -4693,7 +4695,7 @@ static const union AnimCmd sAnim_UNOWN_V_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_UNOWN_W_1[] = +static const union AnimCmd sAnim_UnownW_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -4701,7 +4703,7 @@ static const union AnimCmd sAnim_UNOWN_W_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_UNOWN_X_1[] = +static const union AnimCmd sAnim_UnownX_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -4709,7 +4711,7 @@ static const union AnimCmd sAnim_UNOWN_X_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_UNOWN_Y_1[] = +static const union AnimCmd sAnim_UnownY_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -4717,7 +4719,7 @@ static const union AnimCmd sAnim_UNOWN_Y_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_UNOWN_Z_1[] = +static const union AnimCmd sAnim_UnownZ_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -4725,7 +4727,7 @@ static const union AnimCmd sAnim_UNOWN_Z_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_UNOWN_EMARK_1[] = +static const union AnimCmd sAnim_UnownEMark_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -4733,7 +4735,7 @@ static const union AnimCmd sAnim_UNOWN_EMARK_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_UNOWN_QMARK_1[] = +static const union AnimCmd sAnim_UnownQMark_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -4742,7 +4744,7 @@ static const union AnimCmd sAnim_UNOWN_QMARK_1[] = }; #if P_GEN_4_POKEMON == TRUE -static const union AnimCmd sAnim_TURTWIG_1[] = +static const union AnimCmd sAnim_Turtwig_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -4750,7 +4752,7 @@ static const union AnimCmd sAnim_TURTWIG_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GROTLE_1[] = +static const union AnimCmd sAnim_Grotle_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_FRAME(1, 36), @@ -4758,14 +4760,14 @@ static const union AnimCmd sAnim_GROTLE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_TORTERRA_1[] = +static const union AnimCmd sAnim_Torterra_1[] = { ANIMCMD_FRAME(1, 45), ANIMCMD_FRAME(0, 10), ANIMCMD_END, }; -static const union AnimCmd sAnim_CHIMCHAR_1[] = +static const union AnimCmd sAnim_Chimchar_1[] = { ANIMCMD_FRAME(1, 8), ANIMCMD_FRAME(0, 8), @@ -4776,7 +4778,7 @@ static const union AnimCmd sAnim_CHIMCHAR_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MONFERNO_1[] = +static const union AnimCmd sAnim_Monferno_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 25), @@ -4786,7 +4788,7 @@ static const union AnimCmd sAnim_MONFERNO_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_INFERNAPE_1[] = +static const union AnimCmd sAnim_Infernape_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_FRAME(1, 36), @@ -4794,7 +4796,7 @@ static const union AnimCmd sAnim_INFERNAPE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PIPLUP_1[] = +static const union AnimCmd sAnim_Piplup_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -4802,7 +4804,7 @@ static const union AnimCmd sAnim_PIPLUP_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PRINPLUP_1[] = +static const union AnimCmd sAnim_Prinplup_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 5), @@ -4817,7 +4819,7 @@ static const union AnimCmd sAnim_PRINPLUP_1[] = }; -static const union AnimCmd sAnim_EMPOLEON_1[] = +static const union AnimCmd sAnim_Empoleon_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_FRAME(1, 36), @@ -4825,7 +4827,7 @@ static const union AnimCmd sAnim_EMPOLEON_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_STARLY_1[] = +static const union AnimCmd sAnim_Starly_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 10), @@ -4835,21 +4837,21 @@ static const union AnimCmd sAnim_STARLY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_STARAVIA_1[] = +static const union AnimCmd sAnim_Staravia_1[] = { ANIMCMD_FRAME(1, 32), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_STARAPTOR_1[] = +static const union AnimCmd sAnim_Staraptor_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 5), ANIMCMD_END, }; -static const union AnimCmd sAnim_BIDOOF_1[] = +static const union AnimCmd sAnim_Bidoof_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 15), @@ -4861,7 +4863,7 @@ static const union AnimCmd sAnim_BIDOOF_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BIBAREL_1[] = +static const union AnimCmd sAnim_Bibarel_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -4871,7 +4873,7 @@ static const union AnimCmd sAnim_BIBAREL_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BIBAREL_2[] = +static const union AnimCmd sAnim_Bibarel_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -4880,7 +4882,7 @@ static const union AnimCmd sAnim_BIBAREL_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_KRICKETOT_1[] = +static const union AnimCmd sAnim_Kricketot_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 5), @@ -4901,7 +4903,7 @@ static const union AnimCmd sAnim_KRICKETOT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_KRICKETUNE_1[] = +static const union AnimCmd sAnim_Kricketune_1[] = { ANIMCMD_FRAME(0, 27), ANIMCMD_FRAME(1, 27), @@ -4913,7 +4915,7 @@ static const union AnimCmd sAnim_KRICKETUNE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SHINX_1[] = +static const union AnimCmd sAnim_Shinx_1[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(1, 10), @@ -4922,14 +4924,14 @@ static const union AnimCmd sAnim_SHINX_1[] = }; -static const union AnimCmd sAnim_LUXIO_1[] = +static const union AnimCmd sAnim_Luxio_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_LUXRAY_1[] = +static const union AnimCmd sAnim_Luxray_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 20), @@ -4939,7 +4941,7 @@ static const union AnimCmd sAnim_LUXRAY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_LUXRAY_2[] = +static const union AnimCmd sAnim_Luxray_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -4948,7 +4950,7 @@ static const union AnimCmd sAnim_LUXRAY_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BUDEW_1[] = +static const union AnimCmd sAnim_Budew_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -4956,21 +4958,21 @@ static const union AnimCmd sAnim_BUDEW_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ROSERADE_1[] = +static const union AnimCmd sAnim_Roserade_1[] = { ANIMCMD_FRAME(1, 20), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_CRANIDOS_1[] = +static const union AnimCmd sAnim_Cranidos_1[] = { ANIMCMD_FRAME(1, 32), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_RAMPARDOS_1[] = +static const union AnimCmd sAnim_Rampardos_1[] = { ANIMCMD_FRAME(0, 50), ANIMCMD_FRAME(1, 25), @@ -4980,7 +4982,7 @@ static const union AnimCmd sAnim_RAMPARDOS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SHIELDON_1[] = +static const union AnimCmd sAnim_Shieldon_1[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(1, 10), @@ -4989,7 +4991,7 @@ static const union AnimCmd sAnim_SHIELDON_1[] = }; -static const union AnimCmd sAnim_BASTIODON_1[] = +static const union AnimCmd sAnim_Bastiodon_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 25), @@ -4997,14 +4999,14 @@ static const union AnimCmd sAnim_BASTIODON_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BURMY_1[] = +static const union AnimCmd sAnim_Burmy_1[] = { ANIMCMD_FRAME(1, 32), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_WORMADAM_1[] = +static const union AnimCmd sAnim_Wormadam_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -5014,7 +5016,7 @@ static const union AnimCmd sAnim_WORMADAM_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MOTHIM_1[] = +static const union AnimCmd sAnim_Mothim_1[] = { ANIMCMD_FRAME(0, 4), ANIMCMD_FRAME(1, 4), @@ -5032,7 +5034,7 @@ static const union AnimCmd sAnim_MOTHIM_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_COMBEE_1[] = +static const union AnimCmd sAnim_Combee_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 15), @@ -5044,7 +5046,7 @@ static const union AnimCmd sAnim_COMBEE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_VESPIQUEN_1[] = +static const union AnimCmd sAnim_Vespiquen_1[] = { ANIMCMD_FRAME(0, 12), ANIMCMD_FRAME(1, 12), @@ -5059,7 +5061,7 @@ static const union AnimCmd sAnim_VESPIQUEN_1[] = }; -static const union AnimCmd sAnim_PACHIRISU_1[] = +static const union AnimCmd sAnim_Pachirisu_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 5), @@ -5073,7 +5075,7 @@ static const union AnimCmd sAnim_PACHIRISU_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BUIZEL_1[] = +static const union AnimCmd sAnim_Buizel_1[] = { ANIMCMD_FRAME(0, 12), ANIMCMD_FRAME(1, 45), @@ -5081,7 +5083,7 @@ static const union AnimCmd sAnim_BUIZEL_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_FLOATZEL_1[] = +static const union AnimCmd sAnim_Floatzel_1[] = { ANIMCMD_FRAME(1, 5), ANIMCMD_FRAME(0, 5), @@ -5092,7 +5094,7 @@ static const union AnimCmd sAnim_FLOATZEL_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CHERUBI_1[] = +static const union AnimCmd sAnim_Cherubi_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 5), @@ -5107,7 +5109,7 @@ static const union AnimCmd sAnim_CHERUBI_1[] = }; -static const union AnimCmd sAnim_CHERRIM_NORMAL[] = +static const union AnimCmd sAnim_CherrimOvercast_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 20), @@ -5117,7 +5119,7 @@ static const union AnimCmd sAnim_CHERRIM_NORMAL[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CHERRIM_NORMAL_2[] = +static const union AnimCmd sAnim_CherrimOvercast_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -5126,7 +5128,7 @@ static const union AnimCmd sAnim_CHERRIM_NORMAL_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CHERRIM_SUNSHINE[] = +static const union AnimCmd sAnim_CherrimSunshine_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -5140,7 +5142,7 @@ static const union AnimCmd sAnim_CHERRIM_SUNSHINE[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SHELLOS_1[] = +static const union AnimCmd sAnim_Shellos_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_FRAME(1, 36), @@ -5148,7 +5150,7 @@ static const union AnimCmd sAnim_SHELLOS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GASTRODON_1[] = +static const union AnimCmd sAnim_Gastrodon_1[] = { ANIMCMD_FRAME(1, 15), ANIMCMD_FRAME(0, 15), @@ -5159,7 +5161,7 @@ static const union AnimCmd sAnim_GASTRODON_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_AMBIPOM_1[] = +static const union AnimCmd sAnim_Ambipom_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 25), @@ -5167,7 +5169,7 @@ static const union AnimCmd sAnim_AMBIPOM_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DRIFLOON_1[] = +static const union AnimCmd sAnim_Drifloon_1[] = { ANIMCMD_FRAME(1, 25), ANIMCMD_FRAME(0, 25), @@ -5176,7 +5178,7 @@ static const union AnimCmd sAnim_DRIFLOON_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DRIFBLIM_1[] = +static const union AnimCmd sAnim_Drifblim_1[] = { ANIMCMD_FRAME(1, 15), ANIMCMD_FRAME(0, 25), @@ -5187,7 +5189,7 @@ static const union AnimCmd sAnim_DRIFBLIM_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BUNEARY_1[] = +static const union AnimCmd sAnim_Buneary_1[] = { ANIMCMD_FRAME(1, 35), ANIMCMD_FRAME(0, 10), @@ -5195,7 +5197,7 @@ static const union AnimCmd sAnim_BUNEARY_1[] = }; -static const union AnimCmd sAnim_LOPUNNY_1[] = +static const union AnimCmd sAnim_Lopunny_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 20), @@ -5203,7 +5205,7 @@ static const union AnimCmd sAnim_LOPUNNY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MISMAGIUS_1[] = +static const union AnimCmd sAnim_Mismagius_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -5218,7 +5220,7 @@ static const union AnimCmd sAnim_MISMAGIUS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_HONCHKROW_1[] = +static const union AnimCmd sAnim_Honchkrow_1[] = { ANIMCMD_FRAME(0, 21), ANIMCMD_FRAME(1, 45), @@ -5227,7 +5229,7 @@ static const union AnimCmd sAnim_HONCHKROW_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GLAMEOW_1[] = +static const union AnimCmd sAnim_Glameow_1[] = { ANIMCMD_FRAME(0, 12), ANIMCMD_FRAME(1, 45), @@ -5235,7 +5237,7 @@ static const union AnimCmd sAnim_GLAMEOW_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PURUGLY_1[] = +static const union AnimCmd sAnim_Purugly_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -5247,7 +5249,7 @@ static const union AnimCmd sAnim_PURUGLY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CHINGLING_1[] = +static const union AnimCmd sAnim_Chingling_1[] = { ANIMCMD_FRAME(1, 12), ANIMCMD_FRAME(0, 12), @@ -5260,7 +5262,7 @@ static const union AnimCmd sAnim_CHINGLING_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_STUNKY_1[] = +static const union AnimCmd sAnim_Stunky_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -5270,7 +5272,7 @@ static const union AnimCmd sAnim_STUNKY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SKUNTANK_1[] = +static const union AnimCmd sAnim_Skuntank_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -5278,7 +5280,7 @@ static const union AnimCmd sAnim_SKUNTANK_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BRONZOR_1[] = +static const union AnimCmd sAnim_Bronzor_1[] = { ANIMCMD_FRAME(1, 9), ANIMCMD_FRAME(0, 9), @@ -5293,7 +5295,7 @@ static const union AnimCmd sAnim_BRONZOR_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BRONZONG_1[] = +static const union AnimCmd sAnim_Bronzong_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -5303,7 +5305,7 @@ static const union AnimCmd sAnim_BRONZONG_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BRONZONG_2[] = +static const union AnimCmd sAnim_Bronzong_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -5312,7 +5314,7 @@ static const union AnimCmd sAnim_BRONZONG_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BONSLY_1[] = +static const union AnimCmd sAnim_Bonsly_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 25), @@ -5322,7 +5324,7 @@ static const union AnimCmd sAnim_BONSLY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MIME_JR_1[] = +static const union AnimCmd sAnim_MimeJr_1[] = { ANIMCMD_FRAME(1, 15), ANIMCMD_FRAME(0, 15), @@ -5333,7 +5335,7 @@ static const union AnimCmd sAnim_MIME_JR_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_HAPPINY_1[] = +static const union AnimCmd sAnim_Happiny_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -5341,7 +5343,7 @@ static const union AnimCmd sAnim_HAPPINY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CHATOT_1[] = +static const union AnimCmd sAnim_Chatot_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 5), @@ -5361,14 +5363,14 @@ static const union AnimCmd sAnim_CHATOT_1[] = ANIMCMD_FRAME(0, 5), ANIMCMD_END, }; -static const union AnimCmd sAnim_SPIRITOMB_1[] = +static const union AnimCmd sAnim_Spiritomb_1[] = { ANIMCMD_FRAME(1, 20), ANIMCMD_FRAME(0, 10), ANIMCMD_END, }; -static const union AnimCmd sAnim_GIBLE_1[] = +static const union AnimCmd sAnim_Gible_1[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(1, 10), @@ -5376,14 +5378,14 @@ static const union AnimCmd sAnim_GIBLE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GABITE_1[] = +static const union AnimCmd sAnim_Gabite_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_GARCHOMP_1[] = +static const union AnimCmd sAnim_Garchomp_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 8), @@ -5394,7 +5396,7 @@ static const union AnimCmd sAnim_GARCHOMP_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MUNCHLAX_1[] = +static const union AnimCmd sAnim_Munchlax_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -5402,7 +5404,7 @@ static const union AnimCmd sAnim_MUNCHLAX_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_RIOLU_1[] = +static const union AnimCmd sAnim_Riolu_1[] = { ANIMCMD_FRAME(0, 3), ANIMCMD_FRAME(1, 50), @@ -5411,14 +5413,14 @@ static const union AnimCmd sAnim_RIOLU_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_LUCARIO_1[] = +static const union AnimCmd sAnim_Lucario_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_HIPPOPOTAS_1[] = +static const union AnimCmd sAnim_Hippopotas_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_FRAME(1, 36), @@ -5426,14 +5428,14 @@ static const union AnimCmd sAnim_HIPPOPOTAS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_HIPPOWDON_1[] = +static const union AnimCmd sAnim_Hippowdon_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 5), ANIMCMD_END, }; -static const union AnimCmd sAnim_SKORUPI_1[] = +static const union AnimCmd sAnim_Skorupi_1[] = { ANIMCMD_FRAME(1, 5), ANIMCMD_FRAME(0, 5), @@ -5454,7 +5456,7 @@ static const union AnimCmd sAnim_SKORUPI_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DRAPION_1[] = +static const union AnimCmd sAnim_Drapion_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 15), @@ -5468,7 +5470,7 @@ static const union AnimCmd sAnim_DRAPION_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CROAGUNK_1[] = +static const union AnimCmd sAnim_Croagunk_1[] = { ANIMCMD_FRAME(0, 3), ANIMCMD_FRAME(1, 50), @@ -5477,7 +5479,7 @@ static const union AnimCmd sAnim_CROAGUNK_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_TOXICROAK_1[] = +static const union AnimCmd sAnim_Toxicroak_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 25), @@ -5487,7 +5489,7 @@ static const union AnimCmd sAnim_TOXICROAK_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CARNIVINE_1[] = +static const union AnimCmd sAnim_Carnivine_1[] = { ANIMCMD_FRAME(1, 5), ANIMCMD_FRAME(0, 5), @@ -5504,7 +5506,7 @@ static const union AnimCmd sAnim_CARNIVINE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_FINNEON_1[] = +static const union AnimCmd sAnim_Finneon_1[] = { ANIMCMD_FRAME(1, 12), ANIMCMD_FRAME(0, 12), @@ -5517,7 +5519,7 @@ static const union AnimCmd sAnim_FINNEON_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_LUMINEON_1[] = +static const union AnimCmd sAnim_Lumineon_1[] = { ANIMCMD_FRAME(1, 8), ANIMCMD_FRAME(0, 8), @@ -5528,7 +5530,7 @@ static const union AnimCmd sAnim_LUMINEON_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MANTYKE_1[] = +static const union AnimCmd sAnim_Mantyke_1[] = { ANIMCMD_FRAME(1, 5), ANIMCMD_FRAME(0, 5), @@ -5537,7 +5539,7 @@ static const union AnimCmd sAnim_MANTYKE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SNOVER_1[] = +static const union AnimCmd sAnim_Snover_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 25), @@ -5545,7 +5547,7 @@ static const union AnimCmd sAnim_SNOVER_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ABOMASNOW_1[] = +static const union AnimCmd sAnim_Abomasnow_1[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(1, 44), @@ -5553,14 +5555,14 @@ static const union AnimCmd sAnim_ABOMASNOW_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_WEAVILE_1[] = +static const union AnimCmd sAnim_Weavile_1[] = { ANIMCMD_FRAME(1, 15), ANIMCMD_FRAME(0, 15), ANIMCMD_END, }; -static const union AnimCmd sAnim_MAGNEZONE_1[] = +static const union AnimCmd sAnim_Magnezone_1[] = { ANIMCMD_FRAME(0, 16), ANIMCMD_FRAME(1, 16), @@ -5570,7 +5572,7 @@ static const union AnimCmd sAnim_MAGNEZONE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_LICKILICKY_1[] = +static const union AnimCmd sAnim_Lickilicky_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 5), @@ -5584,7 +5586,7 @@ static const union AnimCmd sAnim_LICKILICKY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_RHYPERIOR_1[] = +static const union AnimCmd sAnim_Rhyperior_1[] = { ANIMCMD_FRAME(0, 50), ANIMCMD_FRAME(1, 25), @@ -5594,7 +5596,7 @@ static const union AnimCmd sAnim_RHYPERIOR_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_TANGROWTH_1[] = +static const union AnimCmd sAnim_Tangrowth_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -5606,7 +5608,7 @@ static const union AnimCmd sAnim_TANGROWTH_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ELECTIVIRE_1[] = +static const union AnimCmd sAnim_Electivire_1[] = { ANIMCMD_FRAME(1, 50), ANIMCMD_FRAME(1, 15), @@ -5614,14 +5616,14 @@ static const union AnimCmd sAnim_ELECTIVIRE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MAGMORTAR_1[] = +static const union AnimCmd sAnim_Magmortar_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_TOGEKISS_1[] = +static const union AnimCmd sAnim_Togekiss_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -5633,7 +5635,7 @@ static const union AnimCmd sAnim_TOGEKISS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_YANMEGA_1[] = +static const union AnimCmd sAnim_Yanmega_1[] = { ANIMCMD_FRAME(1, 3), ANIMCMD_FRAME(0, 3), @@ -5664,7 +5666,7 @@ static const union AnimCmd sAnim_YANMEGA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_LEAFEON_1[] = +static const union AnimCmd sAnim_Leafeon_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 20), @@ -5672,7 +5674,7 @@ static const union AnimCmd sAnim_LEAFEON_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GLACEON_1[] = +static const union AnimCmd sAnim_Glaceon_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_FRAME(1, 36), @@ -5680,7 +5682,7 @@ static const union AnimCmd sAnim_GLACEON_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GLISCOR_1[] = +static const union AnimCmd sAnim_Gliscor_1[] = { ANIMCMD_FRAME(1, 30), ANIMCMD_FRAME(0, 30), @@ -5689,7 +5691,7 @@ static const union AnimCmd sAnim_GLISCOR_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MAMOSWINE_1[] = +static const union AnimCmd sAnim_Mamoswine_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 25), @@ -5706,14 +5708,14 @@ static const union AnimCmd sAnim_PORYGON_Z_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GALLADE_1[] = +static const union AnimCmd sAnim_Gallade_1[] = { ANIMCMD_FRAME(1, 20), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_PROBOPASS_1[] = +static const union AnimCmd sAnim_Probopass_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -5723,7 +5725,7 @@ static const union AnimCmd sAnim_PROBOPASS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PROBOPASS_2[] = +static const union AnimCmd sAnim_Probopass_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -5732,7 +5734,7 @@ static const union AnimCmd sAnim_PROBOPASS_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DUSKNOIR_1[] = +static const union AnimCmd sAnim_Dusknoir_1[] = { ANIMCMD_FRAME(1, 9), ANIMCMD_FRAME(0, 9), @@ -5747,7 +5749,7 @@ static const union AnimCmd sAnim_DUSKNOIR_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_FROSLASS_1[] = +static const union AnimCmd sAnim_Froslass_1[] = { ANIMCMD_FRAME(1, 50), ANIMCMD_FRAME(1, 30), @@ -5755,7 +5757,7 @@ static const union AnimCmd sAnim_FROSLASS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ROTOM_1[] = +static const union AnimCmd sAnim_Rotom_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 20), @@ -5765,7 +5767,7 @@ static const union AnimCmd sAnim_ROTOM_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ROTOM_2[] = +static const union AnimCmd sAnim_Rotom_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -5839,7 +5841,7 @@ static const union AnimCmd sAnim_RotomMow_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_UXIE_1[] = +static const union AnimCmd sAnim_Uxie_1[] = { ANIMCMD_FRAME(1, 50), ANIMCMD_FRAME(1, 50), @@ -5847,7 +5849,7 @@ static const union AnimCmd sAnim_UXIE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MESPRIT_1[] = +static const union AnimCmd sAnim_Mesprit_1[] = { ANIMCMD_FRAME(1, 12), ANIMCMD_FRAME(0, 12), @@ -5860,7 +5862,7 @@ static const union AnimCmd sAnim_MESPRIT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_AZELF_1[] = +static const union AnimCmd sAnim_Azelf_1[] = { ANIMCMD_FRAME(1, 50), ANIMCMD_FRAME(1, 30), @@ -5868,21 +5870,21 @@ static const union AnimCmd sAnim_AZELF_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DIALGA_1[] = +static const union AnimCmd sAnim_Dialga_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 5), ANIMCMD_END, }; -static const union AnimCmd sAnim_PALKIA_1[] = +static const union AnimCmd sAnim_Palkia_1[] = { ANIMCMD_FRAME(1, 20), ANIMCMD_FRAME(0, 10), ANIMCMD_END, }; -static const union AnimCmd sAnim_HEATRAN_1[] = +static const union AnimCmd sAnim_Heatran_1[] = { ANIMCMD_FRAME(1, 50), ANIMCMD_FRAME(1, 30), @@ -5890,14 +5892,14 @@ static const union AnimCmd sAnim_HEATRAN_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_REGIGIGAS_1[] = +static const union AnimCmd sAnim_Regigigas_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 5), ANIMCMD_END, }; -static const union AnimCmd sAnim_GIRATINA_1[] = +static const union AnimCmd sAnim_Giratina_1[] = { ANIMCMD_FRAME(0, 12), ANIMCMD_FRAME(1, 45), @@ -5905,7 +5907,7 @@ static const union AnimCmd sAnim_GIRATINA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CRESSELIA_1[] = +static const union AnimCmd sAnim_Cresselia_1[] = { ANIMCMD_FRAME(1, 15), ANIMCMD_FRAME(0, 15), @@ -5916,7 +5918,7 @@ static const union AnimCmd sAnim_CRESSELIA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PHIONE_1[] = +static const union AnimCmd sAnim_Phione_1[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(1, 10), @@ -5924,7 +5926,7 @@ static const union AnimCmd sAnim_PHIONE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MANAPHY_1[] = +static const union AnimCmd sAnim_Manaphy_1[] = { ANIMCMD_FRAME(1, 50), ANIMCMD_FRAME(1, 50), @@ -5932,7 +5934,7 @@ static const union AnimCmd sAnim_MANAPHY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DARKRAI_1[] = +static const union AnimCmd sAnim_Darkrai_1[] = { ANIMCMD_FRAME(1, 50), ANIMCMD_FRAME(1, 30), @@ -5940,7 +5942,7 @@ static const union AnimCmd sAnim_DARKRAI_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SHAYMIN_1[] = +static const union AnimCmd sAnim_Shaymin_1[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(1, 10), @@ -5948,7 +5950,7 @@ static const union AnimCmd sAnim_SHAYMIN_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ARCEUS_1[] = +static const union AnimCmd sAnim_Arceus_1[] = { ANIMCMD_FRAME(0, 12), ANIMCMD_FRAME(1, 45), @@ -5956,9 +5958,8 @@ static const union AnimCmd sAnim_ARCEUS_1[] = ANIMCMD_END, }; #endif - #if P_GEN_5_POKEMON == TRUE -static const union AnimCmd sAnim_VICTINI_1[] = +static const union AnimCmd sAnim_Victini_1[] = { ANIMCMD_FRAME(0, 2), ANIMCMD_FRAME(1, 46), @@ -5966,7 +5967,7 @@ static const union AnimCmd sAnim_VICTINI_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SNIVY_1[] = +static const union AnimCmd sAnim_Snivy_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_FRAME(1, 36), @@ -5974,7 +5975,7 @@ static const union AnimCmd sAnim_SNIVY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SERVINE_1[] = +static const union AnimCmd sAnim_Servine_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -5986,7 +5987,7 @@ static const union AnimCmd sAnim_SERVINE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SERPERIOR_1[] = +static const union AnimCmd sAnim_Serperior_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -5996,7 +5997,7 @@ static const union AnimCmd sAnim_SERPERIOR_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SERPERIOR_2[] = +static const union AnimCmd sAnim_Serperior_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -6005,7 +6006,7 @@ static const union AnimCmd sAnim_SERPERIOR_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_TEPIG_1[] = +static const union AnimCmd sAnim_Tepig_1[] = { ANIMCMD_FRAME(0, 27), ANIMCMD_FRAME(1, 6), @@ -6015,7 +6016,7 @@ static const union AnimCmd sAnim_TEPIG_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PIGNITE_1[] = +static const union AnimCmd sAnim_Pignite_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_FRAME(1, 36), @@ -6023,7 +6024,7 @@ static const union AnimCmd sAnim_PIGNITE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_EMBOAR_1[] = +static const union AnimCmd sAnim_Emboar_1[] = { ANIMCMD_FRAME(1, 4), ANIMCMD_FRAME(0, 4), @@ -6050,7 +6051,7 @@ static const union AnimCmd sAnim_EMBOAR_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_OSHAWOTT_1[] = +static const union AnimCmd sAnim_Oshawott_1[] = { ANIMCMD_FRAME(0, 13), ANIMCMD_FRAME(1, 7), @@ -6062,7 +6063,7 @@ static const union AnimCmd sAnim_OSHAWOTT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DEWOTT_1[] = +static const union AnimCmd sAnim_Dewott_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 35), @@ -6072,21 +6073,21 @@ static const union AnimCmd sAnim_DEWOTT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SAMUROTT_1[] = +static const union AnimCmd sAnim_Samurott_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 5), ANIMCMD_END, }; -static const union AnimCmd sAnim_PATRAT_1[] = +static const union AnimCmd sAnim_Patrat_1[] = { ANIMCMD_FRAME(1, 32), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_WATCHOG_1[] = +static const union AnimCmd sAnim_Watchog_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -6098,7 +6099,7 @@ static const union AnimCmd sAnim_WATCHOG_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_LILLIPUP_1[] = +static const union AnimCmd sAnim_Lillipup_1[] = { ANIMCMD_FRAME(0, 13), ANIMCMD_FRAME(1, 7), @@ -6110,7 +6111,7 @@ static const union AnimCmd sAnim_LILLIPUP_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_HERDIER_1[] = +static const union AnimCmd sAnim_Herdier_1[] = { ANIMCMD_FRAME(1, 8), ANIMCMD_FRAME(0, 8), @@ -6121,7 +6122,7 @@ static const union AnimCmd sAnim_HERDIER_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_STOUTLAND_1[] = +static const union AnimCmd sAnim_Stoutland_1[] = { ANIMCMD_FRAME(0, 27), ANIMCMD_FRAME(1, 6), @@ -6131,7 +6132,7 @@ static const union AnimCmd sAnim_STOUTLAND_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PURRLOIN_1[] = +static const union AnimCmd sAnim_Purrloin_1[] = { ANIMCMD_FRAME(0, 9), ANIMCMD_FRAME(1, 54), @@ -6139,7 +6140,7 @@ static const union AnimCmd sAnim_PURRLOIN_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_LIEPARD_1[] = +static const union AnimCmd sAnim_Liepard_1[] = { ANIMCMD_FRAME(0, 12), ANIMCMD_FRAME(1, 45), @@ -6147,7 +6148,7 @@ static const union AnimCmd sAnim_LIEPARD_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PANSAGE_1[] = +static const union AnimCmd sAnim_Pansage_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 8), @@ -6157,7 +6158,7 @@ static const union AnimCmd sAnim_PANSAGE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SIMISAGE_1[] = +static const union AnimCmd sAnim_Simisage_1[] = { ANIMCMD_FRAME(0, 12), ANIMCMD_FRAME(1, 45), @@ -6165,14 +6166,14 @@ static const union AnimCmd sAnim_SIMISAGE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PANSEAR_1[] = +static const union AnimCmd sAnim_Pansear_1[] = { ANIMCMD_FRAME(1, 32), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_SIMISEAR_1[] = +static const union AnimCmd sAnim_Simisear_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -6182,7 +6183,7 @@ static const union AnimCmd sAnim_SIMISEAR_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SIMISEAR_2[] = +static const union AnimCmd sAnim_Simisear_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -6191,7 +6192,7 @@ static const union AnimCmd sAnim_SIMISEAR_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PANPOUR_1[] = +static const union AnimCmd sAnim_Panpour_1[] = { ANIMCMD_FRAME(0, 12), ANIMCMD_FRAME(1, 45), @@ -6199,14 +6200,14 @@ static const union AnimCmd sAnim_PANPOUR_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SIMIPOUR_1[] = +static const union AnimCmd sAnim_Simipour_1[] = { ANIMCMD_FRAME(1, 15), ANIMCMD_FRAME(0, 15), ANIMCMD_END, }; -static const union AnimCmd sAnim_MUNNA_1[] = +static const union AnimCmd sAnim_Munna_1[] = { ANIMCMD_FRAME(1, 12), ANIMCMD_FRAME(0, 12), @@ -6219,7 +6220,7 @@ static const union AnimCmd sAnim_MUNNA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MUSHARNA_1[] = +static const union AnimCmd sAnim_Musharna_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 20), @@ -6229,7 +6230,7 @@ static const union AnimCmd sAnim_MUSHARNA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MUSHARNA_2[] = +static const union AnimCmd sAnim_Musharna_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -6238,7 +6239,7 @@ static const union AnimCmd sAnim_MUSHARNA_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PIDOVE_1[] = +static const union AnimCmd sAnim_Pidove_1[] = { ANIMCMD_FRAME(0, 2), ANIMCMD_FRAME(1, 46), @@ -6246,7 +6247,7 @@ static const union AnimCmd sAnim_PIDOVE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_TRANQUILL_1[] = +static const union AnimCmd sAnim_Tranquill_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_FRAME(1, 36), @@ -6254,7 +6255,7 @@ static const union AnimCmd sAnim_TRANQUILL_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_UNFEZANT_1[] = +static const union AnimCmd sAnim_Unfezant_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 20), @@ -6262,7 +6263,7 @@ static const union AnimCmd sAnim_UNFEZANT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BLITZLE_1[] = +static const union AnimCmd sAnim_Blitzle_1[] = { ANIMCMD_FRAME(1, 8), ANIMCMD_FRAME(0, 8), @@ -6273,7 +6274,7 @@ static const union AnimCmd sAnim_BLITZLE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ZEBSTRIKA_1[] = +static const union AnimCmd sAnim_Zebstrika_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 25), @@ -6281,7 +6282,7 @@ static const union AnimCmd sAnim_ZEBSTRIKA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ROGGENROLA_1[] = +static const union AnimCmd sAnim_Roggenrola_1[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(1, 10), @@ -6289,7 +6290,7 @@ static const union AnimCmd sAnim_ROGGENROLA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BOLDORE_1[] = +static const union AnimCmd sAnim_Boldore_1[] = { ANIMCMD_FRAME(1, 15), ANIMCMD_FRAME(0, 15), @@ -6300,7 +6301,7 @@ static const union AnimCmd sAnim_BOLDORE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GIGALITH_1[] = +static const union AnimCmd sAnim_Gigalith_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 25), @@ -6308,7 +6309,7 @@ static const union AnimCmd sAnim_GIGALITH_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_WOOBAT_1[] = +static const union AnimCmd sAnim_Woobat_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 5), @@ -6332,7 +6333,7 @@ static const union AnimCmd sAnim_WOOBAT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SWOOBAT_1[] = +static const union AnimCmd sAnim_Swoobat_1[] = { ANIMCMD_FRAME(1, 15), ANIMCMD_FRAME(0, 15), @@ -6343,7 +6344,7 @@ static const union AnimCmd sAnim_SWOOBAT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DRILBUR_1[] = +static const union AnimCmd sAnim_Drilbur_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -6353,7 +6354,7 @@ static const union AnimCmd sAnim_DRILBUR_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DRILBUR_2[] = +static const union AnimCmd sAnim_Drilbur_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -6362,7 +6363,7 @@ static const union AnimCmd sAnim_DRILBUR_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_EXCADRILL_1[] = +static const union AnimCmd sAnim_Excadrill_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 15), @@ -6371,7 +6372,7 @@ static const union AnimCmd sAnim_EXCADRILL_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_AUDINO_1[] = +static const union AnimCmd sAnim_Audino_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_FRAME(1, 36), @@ -6379,7 +6380,7 @@ static const union AnimCmd sAnim_AUDINO_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_TIMBURR_1[] = +static const union AnimCmd sAnim_Timburr_1[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(1, 10), @@ -6387,7 +6388,7 @@ static const union AnimCmd sAnim_TIMBURR_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GURDURR_1[] = +static const union AnimCmd sAnim_Gurdurr_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -6399,21 +6400,21 @@ static const union AnimCmd sAnim_GURDURR_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CONKELDURR_1[] = +static const union AnimCmd sAnim_Conkeldurr_1[] = { ANIMCMD_FRAME(1, 45), ANIMCMD_FRAME(0, 10), ANIMCMD_END, }; -static const union AnimCmd sAnim_TYMPOLE_1[] = +static const union AnimCmd sAnim_Tympole_1[] = { ANIMCMD_FRAME(1, 35), ANIMCMD_FRAME(0, 10), ANIMCMD_END, }; -static const union AnimCmd sAnim_PALPITOAD_1[] = +static const union AnimCmd sAnim_Palpitoad_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 8), @@ -6423,7 +6424,7 @@ static const union AnimCmd sAnim_PALPITOAD_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SEISMITOAD_1[] = +static const union AnimCmd sAnim_Seismitoad_1[] = { ANIMCMD_FRAME(0, 13), ANIMCMD_FRAME(1, 7), @@ -6435,7 +6436,7 @@ static const union AnimCmd sAnim_SEISMITOAD_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_THROH_1[] = +static const union AnimCmd sAnim_Throh_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -6444,14 +6445,14 @@ static const union AnimCmd sAnim_THROH_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SAWK_1[] = +static const union AnimCmd sAnim_Sawk_1[] = { ANIMCMD_FRAME(1, 45), ANIMCMD_FRAME(0, 10), ANIMCMD_END, }; -static const union AnimCmd sAnim_SEWADDLE_1[] = +static const union AnimCmd sAnim_Sewaddle_1[] = { ANIMCMD_FRAME(0, 11), ANIMCMD_FRAME(1, 10), @@ -6461,7 +6462,7 @@ static const union AnimCmd sAnim_SEWADDLE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SEWADDLE_2[] = +static const union AnimCmd sAnim_Sewaddle_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -6470,7 +6471,7 @@ static const union AnimCmd sAnim_SEWADDLE_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SWADLOON_1[] = +static const union AnimCmd sAnim_Swadloon_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -6479,7 +6480,7 @@ static const union AnimCmd sAnim_SWADLOON_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_LEAVANNY_1[] = +static const union AnimCmd sAnim_Leavanny_1[] = { ANIMCMD_FRAME(0, 12), ANIMCMD_FRAME(1, 45), @@ -6487,7 +6488,7 @@ static const union AnimCmd sAnim_LEAVANNY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_VENIPEDE_1[] = +static const union AnimCmd sAnim_Venipede_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 15), @@ -6499,7 +6500,7 @@ static const union AnimCmd sAnim_VENIPEDE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_WHIRLIPEDE_1[] = +static const union AnimCmd sAnim_Whirlipede_1[] = { ANIMCMD_FRAME(1, 8), ANIMCMD_FRAME(0, 8), @@ -6510,14 +6511,14 @@ static const union AnimCmd sAnim_WHIRLIPEDE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SCOLIPEDE_1[] = +static const union AnimCmd sAnim_Scolipede_1[] = { ANIMCMD_FRAME(1, 45), ANIMCMD_FRAME(0, 5), ANIMCMD_END, }; -static const union AnimCmd sAnim_COTTONEE_1[] = +static const union AnimCmd sAnim_Cottonee_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 5), @@ -6531,7 +6532,7 @@ static const union AnimCmd sAnim_COTTONEE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_WHIMSICOTT_1[] = +static const union AnimCmd sAnim_Whimsicott_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 20), @@ -6539,7 +6540,7 @@ static const union AnimCmd sAnim_WHIMSICOTT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PETILIL_1[] = +static const union AnimCmd sAnim_Petilil_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 25), @@ -6549,7 +6550,7 @@ static const union AnimCmd sAnim_PETILIL_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_LILLIGANT_1[] = +static const union AnimCmd sAnim_Lilligant_1[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(1, 10), @@ -6557,7 +6558,7 @@ static const union AnimCmd sAnim_LILLIGANT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BASCULIN_1[] = +static const union AnimCmd sAnim_Basculin_1[] = { ANIMCMD_FRAME(1, 8), ANIMCMD_FRAME(0, 8), @@ -6568,7 +6569,7 @@ static const union AnimCmd sAnim_BASCULIN_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SANDILE_1[] = +static const union AnimCmd sAnim_Sandile_1[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(1, 10), @@ -6576,14 +6577,14 @@ static const union AnimCmd sAnim_SANDILE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_KROKOROK_1[] = +static const union AnimCmd sAnim_Krokorok_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 10), ANIMCMD_END, }; -static const union AnimCmd sAnim_KROOKODILE_1[] = +static const union AnimCmd sAnim_Krookodile_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -6593,7 +6594,7 @@ static const union AnimCmd sAnim_KROOKODILE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_KROOKODILE_2[] = +static const union AnimCmd sAnim_Krookodile_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -6602,7 +6603,7 @@ static const union AnimCmd sAnim_KROOKODILE_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DARUMAKA_1[] = +static const union AnimCmd sAnim_Darumaka_1[] = { ANIMCMD_FRAME(1, 50), ANIMCMD_FRAME(1, 50), @@ -6610,7 +6611,7 @@ static const union AnimCmd sAnim_DARUMAKA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DARMANITAN_1[] = +static const union AnimCmd sAnim_Darmanitan_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -6619,7 +6620,7 @@ static const union AnimCmd sAnim_DARMANITAN_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MARACTUS_1[] = +static const union AnimCmd sAnim_Maractus_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -6631,7 +6632,7 @@ static const union AnimCmd sAnim_MARACTUS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DWEBBLE_1[] = +static const union AnimCmd sAnim_Dwebble_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 5), @@ -6645,7 +6646,7 @@ static const union AnimCmd sAnim_DWEBBLE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CRUSTLE_1[] = +static const union AnimCmd sAnim_Crustle_1[] = { ANIMCMD_FRAME(1, 15), ANIMCMD_FRAME(0, 15), @@ -6656,7 +6657,7 @@ static const union AnimCmd sAnim_CRUSTLE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SCRAGGY_1[] = +static const union AnimCmd sAnim_Scraggy_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 35), @@ -6664,7 +6665,7 @@ static const union AnimCmd sAnim_SCRAGGY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SCRAFTY_1[] = +static const union AnimCmd sAnim_Scrafty_1[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(1, 10), @@ -6672,7 +6673,7 @@ static const union AnimCmd sAnim_SCRAFTY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SIGILYPH_1[] = +static const union AnimCmd sAnim_Sigilyph_1[] = { ANIMCMD_FRAME(1, 7), ANIMCMD_FRAME(0, 7), @@ -6685,7 +6686,7 @@ static const union AnimCmd sAnim_SIGILYPH_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_YAMASK_1[] = +static const union AnimCmd sAnim_Yamask_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 20), @@ -6695,7 +6696,7 @@ static const union AnimCmd sAnim_YAMASK_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_COFAGRIGUS_1[] = +static const union AnimCmd sAnim_Cofagrigus_1[] = { ANIMCMD_FRAME(1, 50), ANIMCMD_FRAME(1, 30), @@ -6703,7 +6704,7 @@ static const union AnimCmd sAnim_COFAGRIGUS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_TIRTOUGA_1[] = +static const union AnimCmd sAnim_Tirtouga_1[] = { ANIMCMD_FRAME(1, 30), ANIMCMD_FRAME(0, 30), @@ -6712,7 +6713,7 @@ static const union AnimCmd sAnim_TIRTOUGA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CARRACOSTA_1[] = +static const union AnimCmd sAnim_Carracosta_1[] = { ANIMCMD_FRAME(1, 35), ANIMCMD_FRAME(0, 10), @@ -6727,7 +6728,7 @@ static const union AnimCmd sAnim_CARRACOSTA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ARCHEN_1[] = +static const union AnimCmd sAnim_Archen_1[] = { ANIMCMD_FRAME(0, 2), ANIMCMD_FRAME(1, 46), @@ -6735,7 +6736,7 @@ static const union AnimCmd sAnim_ARCHEN_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ARCHEOPS_1[] = +static const union AnimCmd sAnim_Archeops_1[] = { ANIMCMD_FRAME(1, 12), ANIMCMD_FRAME(0, 12), @@ -6748,7 +6749,7 @@ static const union AnimCmd sAnim_ARCHEOPS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_TRUBBISH_1[] = +static const union AnimCmd sAnim_Trubbish_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -6756,7 +6757,7 @@ static const union AnimCmd sAnim_TRUBBISH_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GARBODOR_1[] = +static const union AnimCmd sAnim_Garbodor_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 35), @@ -6764,7 +6765,7 @@ static const union AnimCmd sAnim_GARBODOR_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ZORUA_1[] = +static const union AnimCmd sAnim_Zorua_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -6774,7 +6775,7 @@ static const union AnimCmd sAnim_ZORUA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ZOROARK_1[] = +static const union AnimCmd sAnim_Zoroark_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 18), @@ -6784,7 +6785,7 @@ static const union AnimCmd sAnim_ZOROARK_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MINCCINO_1[] = +static const union AnimCmd sAnim_Minccino_1[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(1, 10), @@ -6792,7 +6793,7 @@ static const union AnimCmd sAnim_MINCCINO_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CINCCINO_1[] = +static const union AnimCmd sAnim_Cinccino_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -6802,7 +6803,7 @@ static const union AnimCmd sAnim_CINCCINO_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GOTHITA_1[] = +static const union AnimCmd sAnim_Gothita_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -6811,7 +6812,7 @@ static const union AnimCmd sAnim_GOTHITA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GOTHORITA_1[] = +static const union AnimCmd sAnim_Gothorita_1[] = { ANIMCMD_FRAME(0, 11), ANIMCMD_FRAME(1, 10), @@ -6821,7 +6822,7 @@ static const union AnimCmd sAnim_GOTHORITA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GOTHORITA_2[] = +static const union AnimCmd sAnim_Gothorita_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -6830,7 +6831,7 @@ static const union AnimCmd sAnim_GOTHORITA_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GOTHITELLE_1[] = +static const union AnimCmd sAnim_Gothitelle_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -6839,7 +6840,7 @@ static const union AnimCmd sAnim_GOTHITELLE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SOLOSIS_1[] = +static const union AnimCmd sAnim_Solosis_1[] = { ANIMCMD_FRAME(1, 5), ANIMCMD_FRAME(0, 5), @@ -6848,7 +6849,7 @@ static const union AnimCmd sAnim_SOLOSIS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DUOSION_1[] = +static const union AnimCmd sAnim_Duosion_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -6857,7 +6858,7 @@ static const union AnimCmd sAnim_DUOSION_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_REUNICLUS_1[] = +static const union AnimCmd sAnim_Reuniclus_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 20), @@ -6867,7 +6868,7 @@ static const union AnimCmd sAnim_REUNICLUS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DUCKLETT_1[] = +static const union AnimCmd sAnim_Ducklett_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -6879,14 +6880,14 @@ static const union AnimCmd sAnim_DUCKLETT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SWANNA_1[] = +static const union AnimCmd sAnim_Swanna_1[] = { ANIMCMD_FRAME(1, 32), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_VANILLITE_1[] = +static const union AnimCmd sAnim_Vanillite_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -6896,7 +6897,7 @@ static const union AnimCmd sAnim_VANILLITE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_VANILLISH_1[] = +static const union AnimCmd sAnim_Vanillish_1[] = { ANIMCMD_FRAME(0, 12), ANIMCMD_FRAME(1, 45), @@ -6904,7 +6905,7 @@ static const union AnimCmd sAnim_VANILLISH_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_VANILLUXE_1[] = +static const union AnimCmd sAnim_Vanilluxe_1[] = { ANIMCMD_FRAME(0, 12), ANIMCMD_FRAME(1, 45), @@ -6912,14 +6913,14 @@ static const union AnimCmd sAnim_VANILLUXE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DEERLING_1[] = +static const union AnimCmd sAnim_Deerling_1[] = { ANIMCMD_FRAME(1, 15), ANIMCMD_FRAME(0, 15), ANIMCMD_END, }; -static const union AnimCmd sAnim_SAWSBUCK_1[] = +static const union AnimCmd sAnim_Sawsbuck_1[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(1, 10), @@ -6927,7 +6928,7 @@ static const union AnimCmd sAnim_SAWSBUCK_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_EMOLGA_1[] = +static const union AnimCmd sAnim_Emolga_1[] = { ANIMCMD_FRAME(0, 21), ANIMCMD_FRAME(1, 45), @@ -6936,14 +6937,14 @@ static const union AnimCmd sAnim_EMOLGA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_KARRABLAST_1[] = +static const union AnimCmd sAnim_Karrablast_1[] = { ANIMCMD_FRAME(1, 32), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_ESCAVALIER_1[] = +static const union AnimCmd sAnim_Escavalier_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 25), @@ -6951,7 +6952,7 @@ static const union AnimCmd sAnim_ESCAVALIER_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_FOONGUS_1[] = +static const union AnimCmd sAnim_Foongus_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 20), @@ -6961,7 +6962,7 @@ static const union AnimCmd sAnim_FOONGUS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_FOONGUS_2[] = +static const union AnimCmd sAnim_Foongus_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -6970,7 +6971,7 @@ static const union AnimCmd sAnim_FOONGUS_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_AMOONGUSS_1[] = +static const union AnimCmd sAnim_Amoonguss_1[] = { ANIMCMD_FRAME(1, 8), ANIMCMD_FRAME(0, 8), @@ -6981,7 +6982,7 @@ static const union AnimCmd sAnim_AMOONGUSS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_FRILLISH_1[] = +static const union AnimCmd sAnim_Frillish_1[] = { ANIMCMD_FRAME(1, 30), ANIMCMD_FRAME(0, 30), @@ -6990,7 +6991,7 @@ static const union AnimCmd sAnim_FRILLISH_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_JELLICENT_1[] = +static const union AnimCmd sAnim_Jellicent_1[] = { ANIMCMD_FRAME(0, 8), ANIMCMD_FRAME(1, 30), @@ -7000,7 +7001,7 @@ static const union AnimCmd sAnim_JELLICENT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ALOMOMOLA_1[] = +static const union AnimCmd sAnim_Alomomola_1[] = { ANIMCMD_FRAME(1, 50), ANIMCMD_FRAME(1, 50), @@ -7008,7 +7009,7 @@ static const union AnimCmd sAnim_ALOMOMOLA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_JOLTIK_1[] = +static const union AnimCmd sAnim_Joltik_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -7018,7 +7019,7 @@ static const union AnimCmd sAnim_JOLTIK_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GALVANTULA_1[] = +static const union AnimCmd sAnim_Galvantula_1[] = { ANIMCMD_FRAME(1, 6), ANIMCMD_FRAME(0, 6), @@ -7031,7 +7032,7 @@ static const union AnimCmd sAnim_GALVANTULA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_FERROSEED_1[] = +static const union AnimCmd sAnim_Ferroseed_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 35), @@ -7041,7 +7042,7 @@ static const union AnimCmd sAnim_FERROSEED_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_FERROTHORN_1[] = +static const union AnimCmd sAnim_Ferrothorn_1[] = { ANIMCMD_FRAME(0, 11), ANIMCMD_FRAME(1, 10), @@ -7051,7 +7052,7 @@ static const union AnimCmd sAnim_FERROTHORN_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_FERROTHORN_2[] = +static const union AnimCmd sAnim_Ferrothorn_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -7060,7 +7061,7 @@ static const union AnimCmd sAnim_FERROTHORN_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_KLINK_1[] = +static const union AnimCmd sAnim_Klink_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -7069,7 +7070,7 @@ static const union AnimCmd sAnim_KLINK_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_KLANG_1[] = +static const union AnimCmd sAnim_Klang_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -7078,7 +7079,7 @@ static const union AnimCmd sAnim_KLANG_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_KLINKLANG_1[] = +static const union AnimCmd sAnim_Klinklang_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -7087,7 +7088,7 @@ static const union AnimCmd sAnim_KLINKLANG_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_TYNAMO_1[] = +static const union AnimCmd sAnim_Tynamo_1[] = { ANIMCMD_FRAME(1, 5), ANIMCMD_FRAME(0, 5), @@ -7108,7 +7109,7 @@ static const union AnimCmd sAnim_TYNAMO_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_EELEKTRIK_1[] = +static const union AnimCmd sAnim_Eelektrik_1[] = { ANIMCMD_FRAME(0, 4), ANIMCMD_FRAME(1, 25), @@ -7118,7 +7119,7 @@ static const union AnimCmd sAnim_EELEKTRIK_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_EELEKTROSS_1[] = +static const union AnimCmd sAnim_Eelektross_1[] = { ANIMCMD_FRAME(1, 27), ANIMCMD_FRAME(0, 27), @@ -7129,7 +7130,7 @@ static const union AnimCmd sAnim_EELEKTROSS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ELGYEM_1[] = +static const union AnimCmd sAnim_Elgyem_1[] = { ANIMCMD_FRAME(1, 12), ANIMCMD_FRAME(0, 12), @@ -7142,14 +7143,14 @@ static const union AnimCmd sAnim_ELGYEM_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BEHEEYEM_1[] = +static const union AnimCmd sAnim_Beheeyem_1[] = { ANIMCMD_FRAME(1, 20), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_LITWICK_1[] = +static const union AnimCmd sAnim_Litwick_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -7158,7 +7159,7 @@ static const union AnimCmd sAnim_LITWICK_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_LAMPENT_1[] = +static const union AnimCmd sAnim_Lampent_1[] = { ANIMCMD_FRAME(1, 25), ANIMCMD_FRAME(0, 25), @@ -7167,7 +7168,7 @@ static const union AnimCmd sAnim_LAMPENT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CHANDELURE_1[] = +static const union AnimCmd sAnim_Chandelure_1[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(1, 30), @@ -7175,21 +7176,21 @@ static const union AnimCmd sAnim_CHANDELURE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_AXEW_1[] = +static const union AnimCmd sAnim_Axew_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 5), ANIMCMD_END, }; -static const union AnimCmd sAnim_FRAXURE_1[] = +static const union AnimCmd sAnim_Fraxure_1[] = { ANIMCMD_FRAME(1, 15), ANIMCMD_FRAME(0, 15), ANIMCMD_END, }; -static const union AnimCmd sAnim_HAXORUS_1[] = +static const union AnimCmd sAnim_Haxorus_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 20), @@ -7198,7 +7199,7 @@ static const union AnimCmd sAnim_HAXORUS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CUBCHOO_1[] = +static const union AnimCmd sAnim_Cubchoo_1[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(1, 10), @@ -7206,7 +7207,7 @@ static const union AnimCmd sAnim_CUBCHOO_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BEARTIC_1[] = +static const union AnimCmd sAnim_Beartic_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 20), @@ -7215,7 +7216,7 @@ static const union AnimCmd sAnim_BEARTIC_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CRYOGONAL_1[] = +static const union AnimCmd sAnim_Cryogonal_1[] = { ANIMCMD_FRAME(0, 11), ANIMCMD_FRAME(1, 10), @@ -7225,7 +7226,7 @@ static const union AnimCmd sAnim_CRYOGONAL_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CRYOGONAL_2[] = +static const union AnimCmd sAnim_Cryogonal_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -7234,7 +7235,7 @@ static const union AnimCmd sAnim_CRYOGONAL_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SHELMET_1[] = +static const union AnimCmd sAnim_Shelmet_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -7244,28 +7245,28 @@ static const union AnimCmd sAnim_SHELMET_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ACCELGOR_1[] = +static const union AnimCmd sAnim_Accelgor_1[] = { ANIMCMD_FRAME(1, 35), ANIMCMD_FRAME(0, 5), ANIMCMD_END, }; -static const union AnimCmd sAnim_STUNFISK_1[] = +static const union AnimCmd sAnim_Stunfisk_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_MIENFOO_1[] = +static const union AnimCmd sAnim_Mienfoo_1[] = { ANIMCMD_FRAME(1, 20), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_MIENSHAO_1[] = +static const union AnimCmd sAnim_Mienshao_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -7277,7 +7278,7 @@ static const union AnimCmd sAnim_MIENSHAO_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DRUDDIGON_1[] = +static const union AnimCmd sAnim_Druddigon_1[] = { ANIMCMD_FRAME(0, 22), ANIMCMD_FRAME(1, 22), @@ -7289,7 +7290,7 @@ static const union AnimCmd sAnim_DRUDDIGON_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GOLETT_1[] = +static const union AnimCmd sAnim_Golett_1[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(1, 44), @@ -7297,14 +7298,14 @@ static const union AnimCmd sAnim_GOLETT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GOLURK_1[] = +static const union AnimCmd sAnim_Golurk_1[] = { ANIMCMD_FRAME(1, 45), ANIMCMD_FRAME(0, 10), ANIMCMD_END, }; -static const union AnimCmd sAnim_PAWNIARD_1[] = +static const union AnimCmd sAnim_Pawniard_1[] = { ANIMCMD_FRAME(1, 5), ANIMCMD_FRAME(0, 5), @@ -7317,14 +7318,14 @@ static const union AnimCmd sAnim_PAWNIARD_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BISHARP_1[] = +static const union AnimCmd sAnim_Bisharp_1[] = { ANIMCMD_FRAME(1, 15), ANIMCMD_FRAME(0, 15), ANIMCMD_END, }; -static const union AnimCmd sAnim_BOUFFALANT_1[] = +static const union AnimCmd sAnim_Bouffalant_1[] = { ANIMCMD_FRAME(0, 28), ANIMCMD_FRAME(1, 32), @@ -7332,7 +7333,7 @@ static const union AnimCmd sAnim_BOUFFALANT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_RUFFLET_1[] = +static const union AnimCmd sAnim_Rufflet_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 10), @@ -7342,7 +7343,7 @@ static const union AnimCmd sAnim_RUFFLET_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BRAVIARY_1[] = +static const union AnimCmd sAnim_Braviary_1[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(1, 10), @@ -7350,7 +7351,7 @@ static const union AnimCmd sAnim_BRAVIARY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_VULLABY_1[] = +static const union AnimCmd sAnim_Vullaby_1[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(1, 10), @@ -7358,7 +7359,7 @@ static const union AnimCmd sAnim_VULLABY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MANDIBUZZ_1[] = +static const union AnimCmd sAnim_Mandibuzz_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_FRAME(1, 36), @@ -7366,14 +7367,14 @@ static const union AnimCmd sAnim_MANDIBUZZ_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_HEATMOR_1[] = +static const union AnimCmd sAnim_Heatmor_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 5), ANIMCMD_END, }; -static const union AnimCmd sAnim_DURANT_1[] = +static const union AnimCmd sAnim_Durant_1[] = { ANIMCMD_FRAME(0, 2), ANIMCMD_FRAME(1, 2), @@ -7395,7 +7396,7 @@ static const union AnimCmd sAnim_DURANT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DEINO_1[] = +static const union AnimCmd sAnim_Deino_1[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(1, 10), @@ -7403,14 +7404,14 @@ static const union AnimCmd sAnim_DEINO_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ZWEILOUS_1[] = +static const union AnimCmd sAnim_Zweilous_1[] = { ANIMCMD_FRAME(1, 32), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_HYDREIGON_1[] = +static const union AnimCmd sAnim_Hydreigon_1[] = { ANIMCMD_FRAME(1, 12), ANIMCMD_FRAME(0, 12), @@ -7423,7 +7424,7 @@ static const union AnimCmd sAnim_HYDREIGON_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_LARVESTA_1[] = +static const union AnimCmd sAnim_Larvesta_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 5), @@ -7439,7 +7440,7 @@ static const union AnimCmd sAnim_LARVESTA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_VOLCARONA_1[] = +static const union AnimCmd sAnim_Volcarona_1[] = { ANIMCMD_FRAME(1, 25), ANIMCMD_FRAME(0, 25), @@ -7448,7 +7449,7 @@ static const union AnimCmd sAnim_VOLCARONA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_COBALION_1[] = +static const union AnimCmd sAnim_Cobalion_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_FRAME(1, 36), @@ -7456,7 +7457,7 @@ static const union AnimCmd sAnim_COBALION_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_TERRAKION_1[] = +static const union AnimCmd sAnim_Terrakion_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 20), @@ -7468,7 +7469,7 @@ static const union AnimCmd sAnim_TERRAKION_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_TERRAKION_2[] = +static const union AnimCmd sAnim_Terrakion_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -7477,14 +7478,14 @@ static const union AnimCmd sAnim_TERRAKION_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_VIRIZION_1[] = +static const union AnimCmd sAnim_Virizion_1[] = { ANIMCMD_FRAME(1, 15), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_TORNADUS_1[] = +static const union AnimCmd sAnim_Tornadus_1[] = { ANIMCMD_FRAME(1, 2), ANIMCMD_FRAME(0, 2), @@ -7511,7 +7512,7 @@ static const union AnimCmd sAnim_TORNADUS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_THUNDURUS_1[] = +static const union AnimCmd sAnim_Thundurus_1[] = { ANIMCMD_FRAME(1, 2), ANIMCMD_FRAME(0, 2), @@ -7538,21 +7539,21 @@ static const union AnimCmd sAnim_THUNDURUS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_RESHIRAM_1[] = +static const union AnimCmd sAnim_Reshiram_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 5), ANIMCMD_END, }; -static const union AnimCmd sAnim_ZEKROM_1[] = +static const union AnimCmd sAnim_Zekrom_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 5), ANIMCMD_END, }; -static const union AnimCmd sAnim_LANDORUS_1[] = +static const union AnimCmd sAnim_Landorus_1[] = { ANIMCMD_FRAME(1, 2), ANIMCMD_FRAME(0, 2), @@ -7579,7 +7580,7 @@ static const union AnimCmd sAnim_LANDORUS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_KYUREM_1[] = +static const union AnimCmd sAnim_Kyurem_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 20), @@ -7588,14 +7589,14 @@ static const union AnimCmd sAnim_KYUREM_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_KELDEO_1[] = +static const union AnimCmd sAnim_Keldeo_1[] = { ANIMCMD_FRAME(1, 32), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_MELOETTA_1[] = +static const union AnimCmd sAnim_Meloetta_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 45), @@ -7607,7 +7608,7 @@ static const union AnimCmd sAnim_MELOETTA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MELOETTA_2[] = +static const union AnimCmd sAnim_Meloetta_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -7616,7 +7617,7 @@ static const union AnimCmd sAnim_MELOETTA_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GENESECT_1[] = +static const union AnimCmd sAnim_Genesect_1[] = { ANIMCMD_FRAME(1, 5), ANIMCMD_FRAME(0, 5), @@ -7629,9 +7630,8 @@ static const union AnimCmd sAnim_GENESECT_1[] = ANIMCMD_END, }; #endif - #if P_GEN_6_POKEMON == TRUE -static const union AnimCmd sAnim_CHESPIN_1[] = +static const union AnimCmd sAnim_Chespin_1[] = { ANIMCMD_FRAME(0, 8), ANIMCMD_FRAME(1, 24), @@ -7641,7 +7641,7 @@ static const union AnimCmd sAnim_CHESPIN_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_QUILLADIN_1[] = +static const union AnimCmd sAnim_Quilladin_1[] = { ANIMCMD_FRAME(0, 11), ANIMCMD_FRAME(1, 10), @@ -7651,7 +7651,7 @@ static const union AnimCmd sAnim_QUILLADIN_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_QUILLADIN_2[] = +static const union AnimCmd sAnim_Quilladin_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -7660,7 +7660,7 @@ static const union AnimCmd sAnim_QUILLADIN_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CHESNAUGHT_1[] = +static const union AnimCmd sAnim_Chesnaught_1[] = { ANIMCMD_FRAME(1, 50), ANIMCMD_FRAME(1, 40), @@ -7668,7 +7668,7 @@ static const union AnimCmd sAnim_CHESNAUGHT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_FENNEKIN_1[] = +static const union AnimCmd sAnim_Fennekin_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -7680,7 +7680,7 @@ static const union AnimCmd sAnim_FENNEKIN_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BRAIXEN_1[] = +static const union AnimCmd sAnim_Braixen_1[] = { ANIMCMD_FRAME(0, 12), ANIMCMD_FRAME(1, 45), @@ -7688,7 +7688,7 @@ static const union AnimCmd sAnim_BRAIXEN_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DELPHOX_1[] = +static const union AnimCmd sAnim_Delphox_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -7700,7 +7700,7 @@ static const union AnimCmd sAnim_DELPHOX_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_FROAKIE_1[] = +static const union AnimCmd sAnim_Froakie_1[] = { ANIMCMD_FRAME(0, 13), ANIMCMD_FRAME(1, 7), @@ -7712,21 +7712,21 @@ static const union AnimCmd sAnim_FROAKIE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_FROGADIER_1[] = +static const union AnimCmd sAnim_Frogadier_1[] = { ANIMCMD_FRAME(1, 30), ANIMCMD_FRAME(0, 30), ANIMCMD_END, }; -static const union AnimCmd sAnim_GRENINJA_1[] = +static const union AnimCmd sAnim_Greninja_1[] = { ANIMCMD_FRAME(1, 32), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_GRENINJA_ASH_1[] = +static const union AnimCmd sAnim_GreninjaAsh_1[] = { ANIMCMD_FRAME(1, 8), ANIMCMD_FRAME(0, 15), @@ -7736,7 +7736,7 @@ static const union AnimCmd sAnim_GRENINJA_ASH_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BUNNELBY_1[] = +static const union AnimCmd sAnim_Bunnelby_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -7745,14 +7745,14 @@ static const union AnimCmd sAnim_BUNNELBY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DIGGERSBY_1[] = +static const union AnimCmd sAnim_Diggersby_1[] = { ANIMCMD_FRAME(1, 35), ANIMCMD_FRAME(0, 10), ANIMCMD_END, }; -static const union AnimCmd sAnim_FLETCHLING_1[] = +static const union AnimCmd sAnim_Fletchling_1[] = { ANIMCMD_FRAME(0, 3), ANIMCMD_FRAME(1, 50), @@ -7760,7 +7760,7 @@ static const union AnimCmd sAnim_FLETCHLING_1[] = ANIMCMD_FRAME(0, 5), ANIMCMD_END, }; -static const union AnimCmd sAnim_FLETCHINDER_1[] = +static const union AnimCmd sAnim_Fletchinder_1[] = { ANIMCMD_FRAME(0, 2), ANIMCMD_FRAME(1, 2), @@ -7782,7 +7782,7 @@ static const union AnimCmd sAnim_FLETCHINDER_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_TALONFLAME_1[] = +static const union AnimCmd sAnim_Talonflame_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 20), @@ -7792,7 +7792,7 @@ static const union AnimCmd sAnim_TALONFLAME_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_TALONFLAME_2[] = +static const union AnimCmd sAnim_Talonflame_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -7801,7 +7801,7 @@ static const union AnimCmd sAnim_TALONFLAME_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SCATTERBUG_1[] = +static const union AnimCmd sAnim_Scatterbug_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 10), @@ -7811,7 +7811,7 @@ static const union AnimCmd sAnim_SCATTERBUG_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SPEWPA_1[] = +static const union AnimCmd sAnim_Spewpa_1[] = { ANIMCMD_FRAME(0, 18), ANIMCMD_FRAME(1, 18), @@ -7821,7 +7821,7 @@ static const union AnimCmd sAnim_SPEWPA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_VIVILLON_1[] = +static const union AnimCmd sAnim_Vivillon_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -7833,7 +7833,7 @@ static const union AnimCmd sAnim_VIVILLON_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_LITLEO_1[] = +static const union AnimCmd sAnim_Litleo_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 25), @@ -7841,14 +7841,14 @@ static const union AnimCmd sAnim_LITLEO_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PYROAR_1[] = +static const union AnimCmd sAnim_Pyroar_1[] = { ANIMCMD_FRAME(1, 45), ANIMCMD_FRAME(0, 5), ANIMCMD_END, }; -static const union AnimCmd sAnim_FLABEBE_1[] = +static const union AnimCmd sAnim_Flabebe_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -7858,7 +7858,7 @@ static const union AnimCmd sAnim_FLABEBE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_FLABEBE_2[] = +static const union AnimCmd sAnim_Flabebe_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -7867,7 +7867,7 @@ static const union AnimCmd sAnim_FLABEBE_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_FLOETTE_1[] = +static const union AnimCmd sAnim_Floette_1[] = { ANIMCMD_FRAME(0, 33), ANIMCMD_FRAME(1, 33), @@ -7877,7 +7877,7 @@ static const union AnimCmd sAnim_FLOETTE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_FLORGES_1[] = +static const union AnimCmd sAnim_Florges_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -7887,7 +7887,7 @@ static const union AnimCmd sAnim_FLORGES_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_FLORGES_2[] = +static const union AnimCmd sAnim_Florges_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -7896,14 +7896,14 @@ static const union AnimCmd sAnim_FLORGES_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SKIDDO_1[] = +static const union AnimCmd sAnim_Skiddo_1[] = { ANIMCMD_FRAME(1, 15), ANIMCMD_FRAME(0, 15), ANIMCMD_END, }; -static const union AnimCmd sAnim_GOGOAT_1[] = +static const union AnimCmd sAnim_Gogoat_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_FRAME(1, 36), @@ -7911,7 +7911,7 @@ static const union AnimCmd sAnim_GOGOAT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PANCHAM_1[] = +static const union AnimCmd sAnim_Pancham_1[] = { ANIMCMD_FRAME(1, 8), ANIMCMD_FRAME(0, 8), @@ -7922,7 +7922,7 @@ static const union AnimCmd sAnim_PANCHAM_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PANGORO_1[] = +static const union AnimCmd sAnim_Pangoro_1[] = { ANIMCMD_FRAME(1, 8), ANIMCMD_FRAME(0, 8), @@ -7933,7 +7933,7 @@ static const union AnimCmd sAnim_PANGORO_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_FURFROU_1[] = +static const union AnimCmd sAnim_Furfrou_1[] = { ANIMCMD_FRAME(0, 27), ANIMCMD_FRAME(1, 6), @@ -7943,7 +7943,7 @@ static const union AnimCmd sAnim_FURFROU_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ESPURR_1[] = +static const union AnimCmd sAnim_Espurr_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -7955,7 +7955,7 @@ static const union AnimCmd sAnim_ESPURR_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MEOWSTIC_1[] = +static const union AnimCmd sAnim_Meowstic_1[] = { ANIMCMD_FRAME(0, 12), ANIMCMD_FRAME(1, 45), @@ -7963,7 +7963,7 @@ static const union AnimCmd sAnim_MEOWSTIC_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_HONEDGE_1[] = +static const union AnimCmd sAnim_Honedge_1[] = { ANIMCMD_FRAME(1, 50), ANIMCMD_FRAME(1, 40), @@ -7971,7 +7971,7 @@ static const union AnimCmd sAnim_HONEDGE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DOUBLADE_1[] = +static const union AnimCmd sAnim_Doublade_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -7981,7 +7981,7 @@ static const union AnimCmd sAnim_DOUBLADE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DOUBLADE_2[] = +static const union AnimCmd sAnim_Doublade_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -7990,7 +7990,7 @@ static const union AnimCmd sAnim_DOUBLADE_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_AEGISLASH_1[] = +static const union AnimCmd sAnim_Aegislash_1[] = { ANIMCMD_FRAME(0, 18), ANIMCMD_FRAME(1, 18), @@ -8000,7 +8000,7 @@ static const union AnimCmd sAnim_AEGISLASH_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SPRITZEE_1[] = +static const union AnimCmd sAnim_Spritzee_1[] = { ANIMCMD_FRAME(1, 15), ANIMCMD_FRAME(0, 25), @@ -8011,14 +8011,14 @@ static const union AnimCmd sAnim_SPRITZEE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_AROMATISSE_1[] = +static const union AnimCmd sAnim_Aromatisse_1[] = { ANIMCMD_FRAME(1, 30), ANIMCMD_FRAME(0, 30), ANIMCMD_END, }; -static const union AnimCmd sAnim_SWIRLIX_1[] = +static const union AnimCmd sAnim_Swirlix_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 10), @@ -8030,7 +8030,7 @@ static const union AnimCmd sAnim_SWIRLIX_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SLURPUFF_1[] = +static const union AnimCmd sAnim_Slurpuff_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 10), @@ -8040,7 +8040,7 @@ static const union AnimCmd sAnim_SLURPUFF_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_INKAY_1[] = +static const union AnimCmd sAnim_Inkay_1[] = { ANIMCMD_FRAME(1, 25), ANIMCMD_FRAME(0, 25), @@ -8049,7 +8049,7 @@ static const union AnimCmd sAnim_INKAY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MALAMAR_1[] = +static const union AnimCmd sAnim_Malamar_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -8058,7 +8058,7 @@ static const union AnimCmd sAnim_MALAMAR_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BINACLE_1[] = +static const union AnimCmd sAnim_Binacle_1[] = { ANIMCMD_FRAME(1, 8), ANIMCMD_FRAME(0, 8), @@ -8069,14 +8069,14 @@ static const union AnimCmd sAnim_BINACLE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BARBARACLE_1[] = +static const union AnimCmd sAnim_Barbaracle_1[] = { ANIMCMD_FRAME(1, 20), ANIMCMD_FRAME(0, 15), ANIMCMD_END, }; -static const union AnimCmd sAnim_SKRELP_1[] = +static const union AnimCmd sAnim_Skrelp_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 10), @@ -8089,7 +8089,7 @@ static const union AnimCmd sAnim_SKRELP_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DRAGALGE_1[] = +static const union AnimCmd sAnim_Dragalge_1[] = { ANIMCMD_FRAME(1, 20), ANIMCMD_FRAME(0, 10), @@ -8098,7 +8098,7 @@ static const union AnimCmd sAnim_DRAGALGE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CLAUNCHER_1[] = +static const union AnimCmd sAnim_Clauncher_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -8108,7 +8108,7 @@ static const union AnimCmd sAnim_CLAUNCHER_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CLAWITZER_1[] = +static const union AnimCmd sAnim_Clawitzer_1[] = { ANIMCMD_FRAME(1, 6), ANIMCMD_FRAME(0, 6), @@ -8121,7 +8121,7 @@ static const union AnimCmd sAnim_CLAWITZER_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_HELIOPTILE_1[] = +static const union AnimCmd sAnim_Helioptile_1[] = { ANIMCMD_FRAME(1, 50), ANIMCMD_FRAME(1, 15), @@ -8129,7 +8129,7 @@ static const union AnimCmd sAnim_HELIOPTILE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_HELIOLISK_1[] = +static const union AnimCmd sAnim_Heliolisk_1[] = { ANIMCMD_FRAME(1, 50), ANIMCMD_FRAME(1, 30), @@ -8137,7 +8137,7 @@ static const union AnimCmd sAnim_HELIOLISK_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_TYRUNT_1[] = +static const union AnimCmd sAnim_Tyrunt_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 20), @@ -8146,14 +8146,14 @@ static const union AnimCmd sAnim_TYRUNT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_TYRANTRUM_1[] = +static const union AnimCmd sAnim_Tyrantrum_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 5), ANIMCMD_END, }; -static const union AnimCmd sAnim_AMAURA_1[] = +static const union AnimCmd sAnim_Amaura_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 10), @@ -8163,14 +8163,14 @@ static const union AnimCmd sAnim_AMAURA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_AURORUS_1[] = +static const union AnimCmd sAnim_Aurorus_1[] = { ANIMCMD_FRAME(1, 15), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_SYLVEON_1[] = +static const union AnimCmd sAnim_Sylveon_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 20), @@ -8178,7 +8178,7 @@ static const union AnimCmd sAnim_SYLVEON_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_HAWLUCHA_1[] = +static const union AnimCmd sAnim_Hawlucha_1[] = { ANIMCMD_FRAME(0, 28), ANIMCMD_FRAME(1, 32), @@ -8186,7 +8186,7 @@ static const union AnimCmd sAnim_HAWLUCHA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DEDENNE_1[] = +static const union AnimCmd sAnim_Dedenne_1[] = { ANIMCMD_FRAME(1, 50), ANIMCMD_FRAME(1, 15), @@ -8194,7 +8194,7 @@ static const union AnimCmd sAnim_DEDENNE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_CARBINK_1[] = +static const union AnimCmd sAnim_Carbink_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 15), @@ -8208,7 +8208,7 @@ static const union AnimCmd sAnim_CARBINK_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GOOMY_1[] = +static const union AnimCmd sAnim_Goomy_1[] = { ANIMCMD_FRAME(0, 28), ANIMCMD_FRAME(1, 32), @@ -8216,7 +8216,7 @@ static const union AnimCmd sAnim_GOOMY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_SLIGGOO_1[] = +static const union AnimCmd sAnim_Sliggoo_1[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(1, 10), @@ -8224,7 +8224,7 @@ static const union AnimCmd sAnim_SLIGGOO_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GOODRA_1[] = +static const union AnimCmd sAnim_Goodra_1[] = { ANIMCMD_FRAME(0, 18), ANIMCMD_FRAME(1, 18), @@ -8234,7 +8234,7 @@ static const union AnimCmd sAnim_GOODRA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_KLEFKI_1[] = +static const union AnimCmd sAnim_Klefki_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 15), @@ -8248,7 +8248,7 @@ static const union AnimCmd sAnim_KLEFKI_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PHANTUMP_1[] = +static const union AnimCmd sAnim_Phantump_1[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(1, 10), @@ -8256,7 +8256,7 @@ static const union AnimCmd sAnim_PHANTUMP_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_TREVENANT_1[] = +static const union AnimCmd sAnim_Trevenant_1[] = { ANIMCMD_FRAME(1, 15), ANIMCMD_FRAME(0, 15), @@ -8267,7 +8267,7 @@ static const union AnimCmd sAnim_TREVENANT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PUMPKABOO_1[] = +static const union AnimCmd sAnim_Pumpkaboo_1[] = { ANIMCMD_FRAME(1, 12), ANIMCMD_FRAME(0, 12), @@ -8280,7 +8280,7 @@ static const union AnimCmd sAnim_PUMPKABOO_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GOURGEIST_1[] = +static const union AnimCmd sAnim_Gourgeist_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -8288,7 +8288,7 @@ static const union AnimCmd sAnim_GOURGEIST_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BERGMITE_1[] = +static const union AnimCmd sAnim_Bergmite_1[] = { ANIMCMD_FRAME(0, 11), ANIMCMD_FRAME(1, 10), @@ -8298,7 +8298,7 @@ static const union AnimCmd sAnim_BERGMITE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BERGMITE_2[] = +static const union AnimCmd sAnim_Bergmite_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -8307,7 +8307,7 @@ static const union AnimCmd sAnim_BERGMITE_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_AVALUGG_1[] = +static const union AnimCmd sAnim_Avalugg_1[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(0, 20), @@ -8316,7 +8316,7 @@ static const union AnimCmd sAnim_AVALUGG_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_NOIBAT_1[] = +static const union AnimCmd sAnim_Noibat_1[] = { ANIMCMD_FRAME(1, 12), ANIMCMD_FRAME(0, 12), @@ -8329,14 +8329,14 @@ static const union AnimCmd sAnim_NOIBAT_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_NOIVERN_1[] = +static const union AnimCmd sAnim_Noivern_1[] = { ANIMCMD_FRAME(1, 32), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_XERNEAS_1[] = +static const union AnimCmd sAnim_Xerneas_1[] = { ANIMCMD_FRAME(0, 12), ANIMCMD_FRAME(1, 45), @@ -8344,7 +8344,7 @@ static const union AnimCmd sAnim_XERNEAS_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_YVELTAL_1[] = +static const union AnimCmd sAnim_Yveltal_1[] = { ANIMCMD_FRAME(1, 20), ANIMCMD_FRAME(0, 10), @@ -8353,7 +8353,7 @@ static const union AnimCmd sAnim_YVELTAL_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ZYGARDE_1[] = +static const union AnimCmd sAnim_Zygarde_1[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 25), @@ -8361,7 +8361,7 @@ static const union AnimCmd sAnim_ZYGARDE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DIANCIE_1[] = +static const union AnimCmd sAnim_Diancie_1[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(1, 10), @@ -8369,7 +8369,7 @@ static const union AnimCmd sAnim_DIANCIE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_HOOPA_1[] = +static const union AnimCmd sAnim_Hoopa_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 15), @@ -8383,370 +8383,369 @@ static const union AnimCmd sAnim_HOOPA_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_VOLCANION_1[] = +static const union AnimCmd sAnim_Volcanion_1[] = { ANIMCMD_FRAME(1, 45), ANIMCMD_FRAME(0, 10), ANIMCMD_END, }; #endif - #if P_GEN_7_POKEMON == TRUE -static const union AnimCmd sAnim_ROWLET_1[] = +static const union AnimCmd sAnim_Rowlet_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_DARTRIX_1[] = +static const union AnimCmd sAnim_Dartrix_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_DECIDUEYE_1[] = +static const union AnimCmd sAnim_Decidueye_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_LITTEN_1[] = +static const union AnimCmd sAnim_Litten_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_TORRACAT_1[] = +static const union AnimCmd sAnim_Torracat_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_INCINEROAR_1[] = +static const union AnimCmd sAnim_Incineroar_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_POPPLIO_1[] = +static const union AnimCmd sAnim_Popplio_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_BRIONNE_1[] = +static const union AnimCmd sAnim_Brionne_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_PRIMARINA_1[] = +static const union AnimCmd sAnim_Primarina_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_PIKIPEK_1[] = +static const union AnimCmd sAnim_Pikipek_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_TRUMBEAK_1[] = +static const union AnimCmd sAnim_Trumbeak_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_TOUCANNON_1[] = +static const union AnimCmd sAnim_Toucannon_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_YUNGOOS_1[] = +static const union AnimCmd sAnim_Yungoos_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_GUMSHOOS_1[] = +static const union AnimCmd sAnim_Gumshoos_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_GRUBBIN_1[] = +static const union AnimCmd sAnim_Grubbin_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_CHARJABUG_1[] = +static const union AnimCmd sAnim_Charjabug_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_VIKAVOLT_1[] = +static const union AnimCmd sAnim_Vikavolt_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_CRABRAWLER_1[] = +static const union AnimCmd sAnim_Crabrawler_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_CRABOMINABLE_1[] = +static const union AnimCmd sAnim_Crabominable_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_ORICORIO_1[] = +static const union AnimCmd sAnim_Oricorio_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_CUTIEFLY_1[] = +static const union AnimCmd sAnim_Cutiefly_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_RIBOMBEE_1[] = +static const union AnimCmd sAnim_Ribombee_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_ROCKRUFF_1[] = +static const union AnimCmd sAnim_Rockruff_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_LYCANROC_1[] = +static const union AnimCmd sAnim_Lycanroc_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_WISHIWASHI_1[] = +static const union AnimCmd sAnim_Wishiwashi_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_MAREANIE_1[] = +static const union AnimCmd sAnim_Mareanie_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_TOXAPEX_1[] = +static const union AnimCmd sAnim_Toxapex_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_MUDBRAY_1[] = +static const union AnimCmd sAnim_Mudbray_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_MUDSDALE_1[] = +static const union AnimCmd sAnim_Mudsdale_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_DEWPIDER_1[] = +static const union AnimCmd sAnim_Dewpider_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_ARAQUANID_1[] = +static const union AnimCmd sAnim_Araquanid_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_FOMANTIS_1[] = +static const union AnimCmd sAnim_Fomantis_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_LURANTIS_1[] = +static const union AnimCmd sAnim_Lurantis_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_MORELULL_1[] = +static const union AnimCmd sAnim_Morelull_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_SHIINOTIC_1[] = +static const union AnimCmd sAnim_Shiinotic_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_SALANDIT_1[] = +static const union AnimCmd sAnim_Salandit_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_SALAZZLE_1[] = +static const union AnimCmd sAnim_Salazzle_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_STUFFUL_1[] = +static const union AnimCmd sAnim_Stufful_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_BEWEAR_1[] = +static const union AnimCmd sAnim_Bewear_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_BOUNSWEET_1[] = +static const union AnimCmd sAnim_Bounsweet_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_STEENEE_1[] = +static const union AnimCmd sAnim_Steenee_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_TSAREENA_1[] = +static const union AnimCmd sAnim_Tsareena_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_COMFEY_1[] = +static const union AnimCmd sAnim_Comfey_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_ORANGURU_1[] = +static const union AnimCmd sAnim_Oranguru_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_PASSIMIAN_1[] = +static const union AnimCmd sAnim_Passimian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_WIMPOD_1[] = +static const union AnimCmd sAnim_Wimpod_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_GOLISOPOD_1[] = +static const union AnimCmd sAnim_Golisopod_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_SANDYGAST_1[] = +static const union AnimCmd sAnim_Sandygast_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_PALOSSAND_1[] = +static const union AnimCmd sAnim_Palossand_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_PYUKUMUKU_1[] = +static const union AnimCmd sAnim_Pyukumuku_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_TYPE_NULL_1[] = +static const union AnimCmd sAnim_TypeNull_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_SILVALLY_1[] = +static const union AnimCmd sAnim_Silvally_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_MINIOR_1[] = +static const union AnimCmd sAnim_Minior_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_KOMALA_1[] = +static const union AnimCmd sAnim_Komala_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_TURTONATOR_1[] = +static const union AnimCmd sAnim_Turtonator_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_TOGEDEMARU_1[] = +static const union AnimCmd sAnim_Togedemaru_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_MIMIKYU_1[] = +static const union AnimCmd sAnim_Mimikyu_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_BRUXISH_1[] = +static const union AnimCmd sAnim_Bruxish_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_DRAMPA_1[] = +static const union AnimCmd sAnim_Drampa_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_DHELMISE_1[] = +static const union AnimCmd sAnim_Dhelmise_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, @@ -8770,7 +8769,7 @@ static const union AnimCmd sAnim_KOMMO_O_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_TAPU_KOKO_1[] = +static const union AnimCmd sAnim_TapuKoko_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_FRAME(1, 40), @@ -8782,7 +8781,7 @@ static const union AnimCmd sAnim_TAPU_KOKO_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_TAPU_LELE_1[] = +static const union AnimCmd sAnim_TapuLele_1[] = { ANIMCMD_FRAME(1, 50), ANIMCMD_FRAME(1, 50), @@ -8790,7 +8789,7 @@ static const union AnimCmd sAnim_TAPU_LELE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_TAPU_BULU_1[] = +static const union AnimCmd sAnim_TapuBulu_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_FRAME(1, 40), @@ -8800,7 +8799,7 @@ static const union AnimCmd sAnim_TAPU_BULU_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_TAPU_FINI_1[] = +static const union AnimCmd sAnim_TapuFini_1[] = { ANIMCMD_FRAME(1, 60), ANIMCMD_FRAME(1, 60), @@ -8808,85 +8807,85 @@ static const union AnimCmd sAnim_TAPU_FINI_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_COSMOG_1[] = +static const union AnimCmd sAnim_Cosmog_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_COSMOEM_1[] = +static const union AnimCmd sAnim_Cosmoem_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_SOLGALEO_1[] = +static const union AnimCmd sAnim_Solgaleo_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_LUNALA_1[] = +static const union AnimCmd sAnim_Lunala_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_NIHILEGO_1[] = +static const union AnimCmd sAnim_Nihilego_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_BUZZWOLE_1[] = +static const union AnimCmd sAnim_Buzzwole_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_PHEROMOSA_1[] = +static const union AnimCmd sAnim_Pheromosa_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_XURKITREE_1[] = +static const union AnimCmd sAnim_Xurkitree_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_CELESTEELA_1[] = +static const union AnimCmd sAnim_Celesteela_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_KARTANA_1[] = +static const union AnimCmd sAnim_Kartana_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_GUZZLORD_1[] = +static const union AnimCmd sAnim_Guzzlord_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_NECROZMA_1[] = +static const union AnimCmd sAnim_Necrozma_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_MAGEARNA_1[] = +static const union AnimCmd sAnim_Magearna_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_MARSHADOW_1[] = +static const union AnimCmd sAnim_Marshadow_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_FRAME(1, 54), @@ -8894,628 +8893,627 @@ static const union AnimCmd sAnim_MARSHADOW_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_POIPOLE_1[] = +static const union AnimCmd sAnim_Poipole_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_NAGANADEL_1[] = +static const union AnimCmd sAnim_Naganadel_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_STAKATAKA_1[] = +static const union AnimCmd sAnim_Stakataka_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_BLACEPHALON_1[] = +static const union AnimCmd sAnim_Blacephalon_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_ZERAORA_1[] = +static const union AnimCmd sAnim_Zeraora_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_MELTAN_1[] = +static const union AnimCmd sAnim_Meltan_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_MELMETAL_1[] = +static const union AnimCmd sAnim_Melmetal_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; #endif - #if P_GEN_8_POKEMON == TRUE -static const union AnimCmd sAnim_GROOKEY_1[] = +static const union AnimCmd sAnim_Grookey_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_THWACKEY_1[] = +static const union AnimCmd sAnim_Thwackey_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_RILLABOOM_1[] = +static const union AnimCmd sAnim_Rillaboom_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_SCORBUNNY_1[] = +static const union AnimCmd sAnim_Scorbunny_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_RABOOT_1[] = +static const union AnimCmd sAnim_Raboot_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_CINDERACE_1[] = +static const union AnimCmd sAnim_Cinderace_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_SOBBLE_1[] = +static const union AnimCmd sAnim_Sobble_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_DRIZZILE_1[] = +static const union AnimCmd sAnim_Drizzile_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_INTELEON_1[] = +static const union AnimCmd sAnim_Inteleon_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_SKWOVET_1[] = +static const union AnimCmd sAnim_Skwovet_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_GREEDENT_1[] = +static const union AnimCmd sAnim_Greedent_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_ROOKIDEE_1[] = +static const union AnimCmd sAnim_Rookidee_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_CORVISQUIRE_1[] = +static const union AnimCmd sAnim_Corvisquire_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_CORVIKNIGHT_1[] = +static const union AnimCmd sAnim_Corviknight_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_BLIPBUG_1[] = +static const union AnimCmd sAnim_Blipbug_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_DOTTLER_1[] = +static const union AnimCmd sAnim_Dottler_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_ORBEETLE_1[] = +static const union AnimCmd sAnim_Orbeetle_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_NICKIT_1[] = +static const union AnimCmd sAnim_Nickit_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_THIEVUL_1[] = +static const union AnimCmd sAnim_Thievul_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_GOSSIFLEUR_1[] = +static const union AnimCmd sAnim_Gossifleur_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_ELDEGOSS_1[] = +static const union AnimCmd sAnim_Eldegoss_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_WOOLOO_1[] = +static const union AnimCmd sAnim_Wooloo_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_DUBWOOL_1[] = +static const union AnimCmd sAnim_Dubwool_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_CHEWTLE_1[] = +static const union AnimCmd sAnim_Chewtle_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_DREDNAW_1[] = +static const union AnimCmd sAnim_Drednaw_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_YAMPER_1[] = +static const union AnimCmd sAnim_Yamper_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_BOLTUND_1[] = +static const union AnimCmd sAnim_Boltund_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_ROLYCOLY_1[] = +static const union AnimCmd sAnim_Rolycoly_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_CARKOL_1[] = +static const union AnimCmd sAnim_Carkol_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_COALOSSAL_1[] = +static const union AnimCmd sAnim_Coalossal_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_APPLIN_1[] = +static const union AnimCmd sAnim_Applin_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_FLAPPLE_1[] = +static const union AnimCmd sAnim_Flapple_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_APPLETUN_1[] = +static const union AnimCmd sAnim_Appletun_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_SILICOBRA_1[] = +static const union AnimCmd sAnim_Silicobra_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_SANDACONDA_1[] = +static const union AnimCmd sAnim_Sandaconda_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_CRAMORANT_1[] = +static const union AnimCmd sAnim_Cramorant_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_ARROKUDA_1[] = +static const union AnimCmd sAnim_Arrokuda_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_BARRASKEWDA_1[] = +static const union AnimCmd sAnim_Barraskewda_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_TOXEL_1[] = +static const union AnimCmd sAnim_Toxel_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_TOXTRICITY_1[] = +static const union AnimCmd sAnim_Toxtricity_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_SIZZLIPEDE_1[] = +static const union AnimCmd sAnim_Sizzlipede_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_CENTISKORCH_1[] = +static const union AnimCmd sAnim_Centiskorch_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_CLOBBOPUS_1[] = +static const union AnimCmd sAnim_Clobbopus_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_GRAPPLOCT_1[] = +static const union AnimCmd sAnim_Grapploct_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_SINISTEA_1[] = +static const union AnimCmd sAnim_Sinistea_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_POLTEAGEIST_1[] = +static const union AnimCmd sAnim_Polteageist_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_HATENNA_1[] = +static const union AnimCmd sAnim_Hatenna_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_HATTREM_1[] = +static const union AnimCmd sAnim_Hattrem_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_HATTERENE_1[] = +static const union AnimCmd sAnim_Hatterene_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_IMPIDIMP_1[] = +static const union AnimCmd sAnim_Impidimp_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_MORGREM_1[] = +static const union AnimCmd sAnim_Morgrem_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_GRIMMSNARL_1[] = +static const union AnimCmd sAnim_Grimmsnarl_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_OBSTAGOON_1[] = +static const union AnimCmd sAnim_Obstagoon_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_PERRSERKER_1[] = +static const union AnimCmd sAnim_Perrserker_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_CURSOLA_1[] = +static const union AnimCmd sAnim_Cursola_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_SIRFETCHD_1[] = +static const union AnimCmd sAnim_Sirfetchd_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_MR_RIME_1[] = +static const union AnimCmd sAnim_MrRime_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_RUNERIGUS_1[] = +static const union AnimCmd sAnim_Runerigus_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_MILCERY_1[] = +static const union AnimCmd sAnim_Milcery_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_ALCREMIE_1[] = +static const union AnimCmd sAnim_Alcremie_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_FALINKS_1[] = +static const union AnimCmd sAnim_Falinks_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_PINCURCHIN_1[] = +static const union AnimCmd sAnim_Pincurchin_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_SNOM_1[] = +static const union AnimCmd sAnim_Snom_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_FROSMOTH_1[] = +static const union AnimCmd sAnim_Frosmoth_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_STONJOURNER_1[] = +static const union AnimCmd sAnim_Stonjourner_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_EISCUE_1[] = +static const union AnimCmd sAnim_Eiscue_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_INDEEDEE_1[] = +static const union AnimCmd sAnim_Indeedee_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_MORPEKO_1[] = +static const union AnimCmd sAnim_Morpeko_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_CUFANT_1[] = +static const union AnimCmd sAnim_Cufant_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_COPPERAJAH_1[] = +static const union AnimCmd sAnim_Copperajah_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_DRACOZOLT_1[] = +static const union AnimCmd sAnim_Dracozolt_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_ARCTOZOLT_1[] = +static const union AnimCmd sAnim_Arctozolt_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_DRACOVISH_1[] = +static const union AnimCmd sAnim_Dracovish_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_ARCTOVISH_1[] = +static const union AnimCmd sAnim_Arctovish_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_DURALUDON_1[] = +static const union AnimCmd sAnim_Duraludon_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_DREEPY_1[] = +static const union AnimCmd sAnim_Dreepy_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_DRAKLOAK_1[] = +static const union AnimCmd sAnim_Drakloak_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_DRAGAPULT_1[] = +static const union AnimCmd sAnim_Dragapult_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_ZACIAN_1[] = +static const union AnimCmd sAnim_Zacian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_ZAMAZENTA_1[] = +static const union AnimCmd sAnim_Zamazenta_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_ETERNATUS_1[] = +static const union AnimCmd sAnim_Eternatus_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_KUBFU_1[] = +static const union AnimCmd sAnim_Kubfu_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_URSHIFU_1[] = +static const union AnimCmd sAnim_Urshifu_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_ZARUDE_1[] = +static const union AnimCmd sAnim_Zarude_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_REGIELEKI_1[] = +static const union AnimCmd sAnim_Regieleki_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_REGIDRAGO_1[] = +static const union AnimCmd sAnim_Regidrago_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_GLASTRIER_1[] = +static const union AnimCmd sAnim_Glastrier_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_SPECTRIER_1[] = +static const union AnimCmd sAnim_Spectrier_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_CALYREX_1[] = +static const union AnimCmd sAnim_Calyrex_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_WYRDEER_1[] = +static const union AnimCmd sAnim_Wyrdeer_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_KLEAVOR_1[] = +static const union AnimCmd sAnim_Kleavor_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_URSALUNA_1[] = +static const union AnimCmd sAnim_Ursaluna_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_BASCULEGION_1[] = +static const union AnimCmd sAnim_Basculegion_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_SNEASLER_1[] = +static const union AnimCmd sAnim_Sneasler_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_OVERQWIL_1[] = +static const union AnimCmd sAnim_Overqwil_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_ENAMORUS_1[] = +static const union AnimCmd sAnim_Enamorus_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; #endif -static const union AnimCmd sAnim_VENUSAUR_MEGA_1[] = +static const union AnimCmd sAnim_VenusaurMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, @@ -9533,61 +9531,61 @@ static const union AnimCmd sAnim_CHARIZARD_MEGA_Y_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_BLASTOISE_MEGA_1[] = +static const union AnimCmd sAnim_BlastoiseMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_BEEDRILL_MEGA_1[] = +static const union AnimCmd sAnim_BeedrillMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_PIDGEOT_MEGA_1[] = +static const union AnimCmd sAnim_PidgeotMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_ALAKAZAM_MEGA_1[] = +static const union AnimCmd sAnim_AlakazamMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_SLOWBRO_MEGA_1[] = +static const union AnimCmd sAnim_SlowbroMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_GENGAR_MEGA_1[] = +static const union AnimCmd sAnim_GengarMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_KANGASKHAN_MEGA_1[] = +static const union AnimCmd sAnim_KangaskhanMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_PINSIR_MEGA_1[] = +static const union AnimCmd sAnim_PinsirMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_GYARADOS_MEGA_1[] = +static const union AnimCmd sAnim_GyaradosMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_AERODACTYL_MEGA_1[] = +static const union AnimCmd sAnim_AerodactylMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, @@ -9605,567 +9603,563 @@ static const union AnimCmd sAnim_MEWTWO_MEGA_Y_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_AMPHAROS_MEGA_1[] = +static const union AnimCmd sAnim_AmpharosMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_STEELIX_MEGA_1[] = +static const union AnimCmd sAnim_SteelixMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_SCIZOR_MEGA_1[] = +static const union AnimCmd sAnim_ScizorMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_HERACROSS_MEGA_1[] = +static const union AnimCmd sAnim_HeracrossMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_HOUNDOOM_MEGA_1[] = +static const union AnimCmd sAnim_HoundoomMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_TYRANITAR_MEGA_1[] = +static const union AnimCmd sAnim_TyranitarMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_SCEPTILE_MEGA_1[] = +static const union AnimCmd sAnim_SceptileMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_BLAZIKEN_MEGA_1[] = +static const union AnimCmd sAnim_BlazikenMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_SWAMPERT_MEGA_1[] = +static const union AnimCmd sAnim_SwampertMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_GARDEVOIR_MEGA_1[] = +static const union AnimCmd sAnim_GardevoirMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_SABLEYE_MEGA_1[] = +static const union AnimCmd sAnim_SableyeMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_MAWILE_MEGA_1[] = +static const union AnimCmd sAnim_MawileMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_AGGRON_MEGA_1[] = +static const union AnimCmd sAnim_AggronMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_MEDICHAM_MEGA_1[] = +static const union AnimCmd sAnim_MedichamMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_MANECTRIC_MEGA_1[] = +static const union AnimCmd sAnim_ManectricMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_SHARPEDO_MEGA_1[] = +static const union AnimCmd sAnim_SharpedoMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_CAMERUPT_MEGA_1[] = +static const union AnimCmd sAnim_CameruptMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_ALTARIA_MEGA_1[] = +static const union AnimCmd sAnim_AltariaMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_BANETTE_MEGA_1[] = +static const union AnimCmd sAnim_BanetteMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_ABSOL_MEGA_1[] = +static const union AnimCmd sAnim_AbsolMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_GLALIE_MEGA_1[] = +static const union AnimCmd sAnim_GlalieMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_SALAMENCE_MEGA_1[] = +static const union AnimCmd sAnim_SalamenceMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_METAGROSS_MEGA_1[] = +static const union AnimCmd sAnim_MetagrossMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_LATIAS_MEGA_1[] = +static const union AnimCmd sAnim_LatiasMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_LATIOS_MEGA_1[] = +static const union AnimCmd sAnim_LatiosMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_KYOGRE_PRIMAL_1[] = +static const union AnimCmd sAnim_KyogrePrimal_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_GROUDON_PRIMAL_1[] = +static const union AnimCmd sAnim_GroudonPrimal_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_RAYQUAZA_MEGA_1[] = +static const union AnimCmd sAnim_RayquazaMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; #if P_GEN_4_POKEMON == TRUE -static const union AnimCmd sAnim_LOPUNNY_MEGA_1[] = +static const union AnimCmd sAnim_LopunnyMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_GARCHOMP_MEGA_1[] = +static const union AnimCmd sAnim_GarchompMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_LUCARIO_MEGA_1[] = +static const union AnimCmd sAnim_LucarioMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_ABOMASNOW_MEGA_1[] = +static const union AnimCmd sAnim_AbomasnowMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_GALLADE_MEGA_1[] = +static const union AnimCmd sAnim_GalladeMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; #endif - #if P_GEN_5_POKEMON == TRUE -static const union AnimCmd sAnim_AUDINO_MEGA_1[] = +static const union AnimCmd sAnim_AudinoMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; #endif - #if P_GEN_6_POKEMON == TRUE -static const union AnimCmd sAnim_DIANCIE_MEGA_1[] = +static const union AnimCmd sAnim_DiancieMega_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; #endif -static const union AnimCmd sAnim_RATTATA_ALOLAN_1[] = +static const union AnimCmd sAnim_RattataAlolan_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_RATICATE_ALOLAN_1[] = +static const union AnimCmd sAnim_RaticateAlolan_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_RAICHU_ALOLAN_1[] = +static const union AnimCmd sAnim_RaichuAlolan_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_SANDSHREW_ALOLAN_1[] = +static const union AnimCmd sAnim_SandshrewAlolan_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_SANDSLASH_ALOLAN_1[] = +static const union AnimCmd sAnim_SandslashAlolan_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_VULPIX_ALOLAN_1[] = +static const union AnimCmd sAnim_VulpixAlolan_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_NINETALES_ALOLAN_1[] = +static const union AnimCmd sAnim_NinetalesAlolan_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_DIGLETT_ALOLAN_1[] = +static const union AnimCmd sAnim_DiglettAlolan_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_DUGTRIO_ALOLAN_1[] = +static const union AnimCmd sAnim_DugtrioAlolan_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_MEOWTH_ALOLAN_1[] = +static const union AnimCmd sAnim_MeowthAlolan_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_PERSIAN_ALOLAN_1[] = +static const union AnimCmd sAnim_PersianAlolan_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_GEODUDE_ALOLAN_1[] = +static const union AnimCmd sAnim_GeodudeAlolan_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_GRAVELER_ALOLAN_1[] = +static const union AnimCmd sAnim_GravelerAlolan_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_GOLEM_ALOLAN_1[] = +static const union AnimCmd sAnim_GolemAlolan_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_GRIMER_ALOLAN_1[] = +static const union AnimCmd sAnim_GrimerAlolan_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_MUK_ALOLAN_1[] = +static const union AnimCmd sAnim_MukAlolan_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_EXEGGUTOR_ALOLAN_1[] = +static const union AnimCmd sAnim_ExeggutorAlolan_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_MAROWAK_ALOLAN_1[] = +static const union AnimCmd sAnim_MarowakAlolan_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_MEOWTH_GALARIAN_1[] = +static const union AnimCmd sAnim_MeowthGalarian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_PONYTA_GALARIAN_1[] = +static const union AnimCmd sAnim_PonytaGalarian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_RAPIDASH_GALARIAN_1[] = +static const union AnimCmd sAnim_RapidashGalarian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_SLOWPOKE_GALARIAN_1[] = +static const union AnimCmd sAnim_SlowpokeGalarian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_SLOWBRO_GALARIAN_1[] = +static const union AnimCmd sAnim_SlowbroGalarian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_FARFETCHD_GALARIAN_1[] = +static const union AnimCmd sAnim_FarfetchdGalarian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_WEEZING_GALARIAN_1[] = +static const union AnimCmd sAnim_WeezingGalarian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_MR_MIME_GALARIAN_1[] = +static const union AnimCmd sAnim_MrMimeGalarian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_ARTICUNO_GALARIAN_1[] = +static const union AnimCmd sAnim_ArticunoGalarian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_ZAPDOS_GALARIAN_1[] = +static const union AnimCmd sAnim_ZapdosGalarian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_MOLTRES_GALARIAN_1[] = +static const union AnimCmd sAnim_MoltresGalarian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_SLOWKING_GALARIAN_1[] = +static const union AnimCmd sAnim_SlowkingGalarian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_CORSOLA_GALARIAN_1[] = +static const union AnimCmd sAnim_CorsolaGalarian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_ZIGZAGOON_GALARIAN_1[] = +static const union AnimCmd sAnim_ZigzagoonGalarian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_LINOONE_GALARIAN_1[] = +static const union AnimCmd sAnim_LinooneGalarian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; #if P_GEN_5_POKEMON == TRUE -static const union AnimCmd sAnim_DARUMAKA_GALARIAN_1[] = +static const union AnimCmd sAnim_DarumakaGalarian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_DARMANITAN_GALARIAN_1[] = +static const union AnimCmd sAnim_DarmanitanGalarian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_YAMASK_GALARIAN_1[] = +static const union AnimCmd sAnim_YamaskGalarian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_STUNFISK_GALARIAN_1[] = +static const union AnimCmd sAnim_StunfiskGalarian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; #endif -static const union AnimCmd sAnim_GROWLITHE_HISUIAN_1[] = +static const union AnimCmd sAnim_GrowlitheHisuian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_ARCANINE_HISUIAN_1[] = +static const union AnimCmd sAnim_ArcanineHisuian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_VOLTORB_HISUIAN_1[] = +static const union AnimCmd sAnim_VoltorbHisuian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_ELECTRODE_HISUIAN_1[] = +static const union AnimCmd sAnim_ElectrodeHisuian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_TYPHLOSION_HISUIAN_1[] = +static const union AnimCmd sAnim_TyphlosionHisuian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_QWILFISH_HISUIAN_1[] = +static const union AnimCmd sAnim_QwilfishHisuian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_SNEASEL_HISUIAN_1[] = +static const union AnimCmd sAnim_SneaselHisuian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; #if P_GEN_5_POKEMON == TRUE -static const union AnimCmd sAnim_SAMUROTT_HISUIAN_1[] = +static const union AnimCmd sAnim_SamurottHisuian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_LILLIGANT_HISUIAN_1[] = +static const union AnimCmd sAnim_LilligantHisuian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_ZORUA_HISUIAN_1[] = +static const union AnimCmd sAnim_ZoruaHisuian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_ZOROARK_HISUIAN_1[] = +static const union AnimCmd sAnim_ZoroarkHisuian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_BRAVIARY_HISUIAN_1[] = +static const union AnimCmd sAnim_BraviaryHisuian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; #endif - #if P_GEN_6_POKEMON == TRUE -static const union AnimCmd sAnim_SLIGGOO_HISUIAN_1[] = +static const union AnimCmd sAnim_SliggooHisuian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_GOODRA_HISUIAN_1[] = +static const union AnimCmd sAnim_GoodraHisuian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_AVALUGG_HISUIAN_1[] = +static const union AnimCmd sAnim_AvaluggHisuian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; #endif - #if P_GEN_7_POKEMON == TRUE -static const union AnimCmd sAnim_DECIDUEYE_HISUIAN_1[] = +static const union AnimCmd sAnim_DecidueyeHisuian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; #endif -static const union AnimCmd sAnim_PIKACHU_COSPLAY_1[] = +static const union AnimCmd sAnim_PikachuCosplay_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_PIKACHU_ROCK_STAR_1[] = +static const union AnimCmd sAnim_PikachuRockStar_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_PIKACHU_BELLE_1[] = +static const union AnimCmd sAnim_PikachuBelle_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_PIKACHU_POP_STAR_1[] = +static const union AnimCmd sAnim_PikachuPopStar_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, @@ -10177,66 +10171,66 @@ static const union AnimCmd sAnim_PIKACHU_PH_D_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_PIKACHU_LIBRE_1[] = +static const union AnimCmd sAnim_PikachuLibre_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_PIKACHU_ORIGINAL_CAP_1[] = +static const union AnimCmd sAnim_PikachuOriginalCap_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_PIKACHU_HOENN_CAP_1[] = +static const union AnimCmd sAnim_PikachuHoennCap_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_PIKACHU_SINNOH_CAP_1[] = +static const union AnimCmd sAnim_PikachuSinnohCap_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_PIKACHU_UNOVA_CAP_1[] = +static const union AnimCmd sAnim_PikachuUnovaCap_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_PIKACHU_KALOS_CAP_1[] = +static const union AnimCmd sAnim_PikachuKalosCap_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_PIKACHU_ALOLA_CAP_1[] = +static const union AnimCmd sAnim_PikachuAlolaCap_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_PIKACHU_PARTNER_CAP_1[] = +static const union AnimCmd sAnim_PikachuPartnerCap_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_PIKACHU_WORLD_CAP_1[] = +static const union AnimCmd sAnim_PikachuWorldCap_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_PICHU_SPIKY_EARED_1[] = +static const union AnimCmd sAnim_PichuSpikyEared_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_DEOXYS_ATTACK_1[] = +static const union AnimCmd sAnim_DeoxysAttack_1[] = { ANIMCMD_FRAME(0, 16), ANIMCMD_FRAME(1, 16), @@ -10246,7 +10240,7 @@ static const union AnimCmd sAnim_DEOXYS_ATTACK_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DEOXYS_ATTACK_2[] = +static const union AnimCmd sAnim_DeoxysAttack_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -10255,7 +10249,7 @@ static const union AnimCmd sAnim_DEOXYS_ATTACK_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DEOXYS_DEFENSE_1[] = +static const union AnimCmd sAnim_DeoxysDefense_1[] = { ANIMCMD_FRAME(0, 16), ANIMCMD_FRAME(1, 16), @@ -10265,7 +10259,7 @@ static const union AnimCmd sAnim_DEOXYS_DEFENSE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DEOXYS_DEFENSE_2[] = +static const union AnimCmd sAnim_DeoxysDefense_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -10274,7 +10268,7 @@ static const union AnimCmd sAnim_DEOXYS_DEFENSE_2[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DEOXYS_SPEED_1[] = +static const union AnimCmd sAnim_DeoxysSpeed_1[] = { ANIMCMD_FRAME(0, 16), ANIMCMD_FRAME(1, 16), @@ -10284,7 +10278,7 @@ static const union AnimCmd sAnim_DEOXYS_SPEED_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DEOXYS_SPEED_2[] = +static const union AnimCmd sAnim_DeoxysSpeed_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -10294,7 +10288,7 @@ static const union AnimCmd sAnim_DEOXYS_SPEED_2[] = }; #if P_GEN_4_POKEMON == TRUE -static const union AnimCmd sAnim_SHAYMIN_SKY_1[] = +static const union AnimCmd sAnim_ShayminSky_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_FRAME(1, 36), @@ -10302,19 +10296,19 @@ static const union AnimCmd sAnim_SHAYMIN_SKY_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_DIALGA_ORIGIN_1[] = +static const union AnimCmd sAnim_DialgaOrigin_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_PALKIA_ORIGIN_1[] = +static const union AnimCmd sAnim_PalkiaOrigin_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_GIRATINA_ORIGIN_1[] = +static const union AnimCmd sAnim_GiratinaOrigin_1[] = { ANIMCMD_FRAME(0, 11), ANIMCMD_FRAME(1, 10), @@ -10324,7 +10318,7 @@ static const union AnimCmd sAnim_GIRATINA_ORIGIN_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_GIRATINA_ORIGIN_2[] = +static const union AnimCmd sAnim_GiratinaOrigin_2[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(2, 20), @@ -10333,22 +10327,21 @@ static const union AnimCmd sAnim_GIRATINA_ORIGIN_2[] = ANIMCMD_END, }; #endif - #if P_GEN_5_POKEMON == TRUE -static const union AnimCmd sAnim_DARMANITAN_ZEN_MODE_1[] = +static const union AnimCmd sAnim_DarmanitanZenMode_1[] = { ANIMCMD_FRAME(1, 15), ANIMCMD_FRAME(0, 20), ANIMCMD_END, }; -static const union AnimCmd sAnim_DARMANITAN_ZEN_MODE_GALARIAN_1[] = +static const union AnimCmd sAnim_DarmanitanZenModeGalarian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_TORNADUS_THERIAN_1[] = +static const union AnimCmd sAnim_TornadusTherian_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 10), @@ -10358,7 +10351,7 @@ static const union AnimCmd sAnim_TORNADUS_THERIAN_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_THUNDURUS_THERIAN_1[] = +static const union AnimCmd sAnim_ThundurusTherian_1[] = { ANIMCMD_FRAME(0, 5), ANIMCMD_FRAME(1, 5), @@ -10379,7 +10372,7 @@ static const union AnimCmd sAnim_THUNDURUS_THERIAN_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_LANDORUS_THERIAN_1[] = +static const union AnimCmd sAnim_LandorusTherian_1[] = { ANIMCMD_FRAME(0, 15), ANIMCMD_FRAME(1, 15), @@ -10389,21 +10382,21 @@ static const union AnimCmd sAnim_LANDORUS_THERIAN_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_KYUREM_BLACK_1[] = +static const union AnimCmd sAnim_KyuremBlack_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 5), ANIMCMD_END, }; -static const union AnimCmd sAnim_KYUREM_WHITE_1[] = +static const union AnimCmd sAnim_KyuremWhite_1[] = { ANIMCMD_FRAME(1, 40), ANIMCMD_FRAME(0, 5), ANIMCMD_END, }; -static const union AnimCmd sAnim_KELDEO_RESOLUTE_1[] = +static const union AnimCmd sAnim_KeldeoResolute_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_FRAME(1, 36), @@ -10411,7 +10404,7 @@ static const union AnimCmd sAnim_KELDEO_RESOLUTE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_MELOETTA_PIROUETTE_1[] = +static const union AnimCmd sAnim_MeloettaPirouette_1[] = { ANIMCMD_FRAME(1, 15), ANIMCMD_FRAME(0, 15), @@ -10422,9 +10415,8 @@ static const union AnimCmd sAnim_MELOETTA_PIROUETTE_1[] = ANIMCMD_END, }; #endif - #if P_GEN_6_POKEMON == TRUE -static const union AnimCmd sAnim_AEGISLASH_BLADE_1[] = +static const union AnimCmd sAnim_AegislashBlade_1[] = { ANIMCMD_FRAME(0, 18), ANIMCMD_FRAME(1, 18), @@ -10434,7 +10426,7 @@ static const union AnimCmd sAnim_AEGISLASH_BLADE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ZYGARDE_10_1[] = +static const union AnimCmd sAnim_Zygarde10_1[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(1, 10), @@ -10442,7 +10434,7 @@ static const union AnimCmd sAnim_ZYGARDE_10_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_ZYGARDE_COMPLETE_1[] = +static const union AnimCmd sAnim_ZygardeComplete_1[] = { ANIMCMD_FRAME(0, 12), ANIMCMD_FRAME(1, 45), @@ -10450,7960 +10442,2470 @@ static const union AnimCmd sAnim_ZYGARDE_COMPLETE_1[] = ANIMCMD_END, }; -static const union AnimCmd sAnim_HOOPA_UNBOUND_1[] = +static const union AnimCmd sAnim_HoopaUnbound_1[] = { ANIMCMD_FRAME(1, 20), ANIMCMD_FRAME(0, 10), ANIMCMD_END, }; #endif - #if P_GEN_7_POKEMON == TRUE -static const union AnimCmd sAnim_MINIOR_CORE_1[] = +static const union AnimCmd sAnim_MiniorCore_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_WISHIWASHI_SCHOOL_1[] = +static const union AnimCmd sAnim_WishiwashiSchool_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_MIMIKYU_BUSTED_1[] = +static const union AnimCmd sAnim_MimikyuBusted_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_LYCANROC_MIDNIGHT_1[] = +static const union AnimCmd sAnim_LycanrocMidnight_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -static const union AnimCmd sAnim_LYCANROC_DUSK_1[] = +static const union AnimCmd sAnim_LycanrocDusk_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; #endif - #if P_GEN_8_POKEMON == TRUE -static const union AnimCmd sAnim_ENAMORUS_THERIAN_1[] = +static const union AnimCmd sAnim_EnamorusTherian_1[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; #endif -static const union AnimCmd *const sAnims_NONE[] = -{ - sAnim_GeneralFrame0, - sAnim_NONE_1, -}; - -static const union AnimCmd *const sAnims_BULBASAUR[] = -{ - sAnim_GeneralFrame0, - sAnim_BULBASAUR_1, -}; - -static const union AnimCmd *const sAnims_IVYSAUR[] = -{ - sAnim_GeneralFrame0, - sAnim_IVYSAUR_1, -}; - -static const union AnimCmd *const sAnims_VENUSAUR[] = -{ - sAnim_GeneralFrame0, - sAnim_VENUSAUR_1, -}; - -static const union AnimCmd *const sAnims_CHARMANDER[] = -{ - sAnim_GeneralFrame0, - sAnim_CHARMANDER_1, -}; - -static const union AnimCmd *const sAnims_CHARMELEON[] = -{ - sAnim_GeneralFrame0, - sAnim_CHARMELEON_1, -}; - -static const union AnimCmd *const sAnims_CHARIZARD[] = -{ - sAnim_GeneralFrame0, - sAnim_CHARIZARD_1, -}; - -static const union AnimCmd *const sAnims_SQUIRTLE[] = -{ - sAnim_GeneralFrame0, - sAnim_SQUIRTLE_1, -}; - -static const union AnimCmd *const sAnims_WARTORTLE[] = -{ - sAnim_GeneralFrame0, - sAnim_WARTORTLE_1, -}; - -static const union AnimCmd *const sAnims_BLASTOISE[] = -{ - sAnim_GeneralFrame0, - sAnim_BLASTOISE_1, -}; - -static const union AnimCmd *const sAnims_CATERPIE[] = -{ - sAnim_GeneralFrame0, - sAnim_CATERPIE_1, -}; - -static const union AnimCmd *const sAnims_METAPOD[] = -{ - sAnim_GeneralFrame0, - sAnim_METAPOD_1, -}; - -static const union AnimCmd *const sAnims_BUTTERFREE[] = -{ - sAnim_GeneralFrame0, - sAnim_BUTTERFREE_1, -}; - -static const union AnimCmd *const sAnims_WEEDLE[] = -{ - sAnim_GeneralFrame0, - sAnim_WEEDLE_1, -}; - -static const union AnimCmd *const sAnims_KAKUNA[] = -{ - sAnim_GeneralFrame0, - sAnim_KAKUNA_1, -}; - -static const union AnimCmd *const sAnims_BEEDRILL[] = -{ - sAnim_GeneralFrame0, - sAnim_BEEDRILL_1, -}; - -static const union AnimCmd *const sAnims_PIDGEY[] = -{ - sAnim_GeneralFrame0, - sAnim_PIDGEY_1, -}; - -static const union AnimCmd *const sAnims_PIDGEOTTO[] = -{ - sAnim_GeneralFrame0, - sAnim_PIDGEOTTO_1, -}; - -static const union AnimCmd *const sAnims_PIDGEOT[] = -{ - sAnim_GeneralFrame0, - sAnim_PIDGEOT_1, -}; - -static const union AnimCmd *const sAnims_RATTATA[] = -{ - sAnim_GeneralFrame0, - sAnim_RATTATA_1, -}; - -static const union AnimCmd *const sAnims_RATICATE[] = -{ - sAnim_GeneralFrame0, - sAnim_RATICATE_1, -}; - -static const union AnimCmd *const sAnims_SPEAROW[] = -{ - sAnim_GeneralFrame0, - sAnim_SPEAROW_1, -}; - -static const union AnimCmd *const sAnims_FEAROW[] = -{ - sAnim_GeneralFrame0, - sAnim_FEAROW_1, -}; - -static const union AnimCmd *const sAnims_EKANS[] = -{ - sAnim_GeneralFrame0, - sAnim_EKANS_1, -}; - -static const union AnimCmd *const sAnims_ARBOK[] = -{ - sAnim_GeneralFrame0, - sAnim_ARBOK_1, -}; - -static const union AnimCmd *const sAnims_PIKACHU[] = -{ - sAnim_GeneralFrame0, - sAnim_PIKACHU_1, - sAnim_PIKACHU_2, -}; - -static const union AnimCmd *const sAnims_RAICHU[] = -{ - sAnim_GeneralFrame0, - sAnim_RAICHU_1, - sAnim_RAICHU_2, -}; - -static const union AnimCmd *const sAnims_SANDSHREW[] = -{ - sAnim_GeneralFrame0, - sAnim_SANDSHREW_1, - sAnim_SANDSHREW_2, -}; - -static const union AnimCmd *const sAnims_SANDSLASH[] = -{ - sAnim_GeneralFrame0, - sAnim_SANDSLASH_1, - sAnim_SANDSLASH_2, -}; - -static const union AnimCmd *const sAnims_NIDORAN_F[] = -{ - sAnim_GeneralFrame0, - sAnim_NIDORAN_F_1, -}; - -static const union AnimCmd *const sAnims_NIDORINA[] = -{ - sAnim_GeneralFrame0, - sAnim_NIDORINA_1, -}; - -static const union AnimCmd *const sAnims_NIDOQUEEN[] = -{ - sAnim_GeneralFrame0, - sAnim_NIDOQUEEN_1, -}; - -static const union AnimCmd *const sAnims_NIDORAN_M[] = -{ - sAnim_GeneralFrame0, - sAnim_NIDORAN_M_1, -}; - -static const union AnimCmd *const sAnims_NIDORINO[] = -{ - sAnim_GeneralFrame0, - sAnim_NIDORINO_1, -}; - -static const union AnimCmd *const sAnims_NIDOKING[] = -{ - sAnim_GeneralFrame0, - sAnim_NIDOKING_1, -}; - -static const union AnimCmd *const sAnims_CLEFAIRY[] = -{ - sAnim_GeneralFrame0, - sAnim_CLEFAIRY_1, -}; - -static const union AnimCmd *const sAnims_CLEFABLE[] = -{ - sAnim_GeneralFrame0, - sAnim_CLEFABLE_1, -}; - -static const union AnimCmd *const sAnims_VULPIX[] = -{ - sAnim_GeneralFrame0, - sAnim_VULPIX_1, - sAnim_VULPIX_2, -}; - -static const union AnimCmd *const sAnims_NINETALES[] = -{ - sAnim_GeneralFrame0, - sAnim_NINETALES_1, - sAnim_NINETALES_2, -}; - -static const union AnimCmd *const sAnims_JIGGLYPUFF[] = -{ - sAnim_GeneralFrame0, - sAnim_JIGGLYPUFF_1, - sAnim_JIGGLYPUFF_2, -}; - -static const union AnimCmd *const sAnims_WIGGLYTUFF[] = -{ - sAnim_GeneralFrame0, - sAnim_WIGGLYTUFF_1, - sAnim_WIGGLYTUFF_2, -}; - -static const union AnimCmd *const sAnims_ZUBAT[] = -{ - sAnim_GeneralFrame0, - sAnim_ZUBAT_1, -}; - -static const union AnimCmd *const sAnims_GOLBAT[] = -{ - sAnim_GeneralFrame0, - sAnim_GOLBAT_1, -}; - -static const union AnimCmd *const sAnims_ODDISH[] = -{ - sAnim_GeneralFrame0, - sAnim_ODDISH_1, -}; - -static const union AnimCmd *const sAnims_GLOOM[] = -{ - sAnim_GeneralFrame0, - sAnim_GLOOM_1, -}; - -static const union AnimCmd *const sAnims_VILEPLUME[] = -{ - sAnim_GeneralFrame0, - sAnim_VILEPLUME_1, -}; - -static const union AnimCmd *const sAnims_PARAS[] = -{ - sAnim_GeneralFrame0, - sAnim_PARAS_1, -}; - -static const union AnimCmd *const sAnims_PARASECT[] = -{ - sAnim_GeneralFrame0, - sAnim_PARASECT_1, -}; - -static const union AnimCmd *const sAnims_VENONAT[] = -{ - sAnim_GeneralFrame0, - sAnim_VENONAT_1, -}; - -static const union AnimCmd *const sAnims_VENOMOTH[] = -{ - sAnim_GeneralFrame0, - sAnim_VENOMOTH_1, -}; - -static const union AnimCmd *const sAnims_DIGLETT[] = -{ - sAnim_GeneralFrame0, - sAnim_DIGLETT_1, -}; - -static const union AnimCmd *const sAnims_DUGTRIO[] = -{ - sAnim_GeneralFrame0, - sAnim_DUGTRIO_1, -}; - -static const union AnimCmd *const sAnims_MEOWTH[] = -{ - sAnim_GeneralFrame0, - sAnim_MEOWTH_1, -}; - -static const union AnimCmd *const sAnims_PERSIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_PERSIAN_1, -}; - -static const union AnimCmd *const sAnims_PSYDUCK[] = -{ - sAnim_GeneralFrame0, - sAnim_PSYDUCK_1, - sAnim_PSYDUCK_2, -}; - -static const union AnimCmd *const sAnims_GOLDUCK[] = -{ - sAnim_GeneralFrame0, - sAnim_GOLDUCK_1, - sAnim_GOLDUCK_2, -}; - -static const union AnimCmd *const sAnims_MANKEY[] = -{ - sAnim_GeneralFrame0, - sAnim_MANKEY_1, -}; - -static const union AnimCmd *const sAnims_PRIMEAPE[] = -{ - sAnim_GeneralFrame0, - sAnim_PRIMEAPE_1, -}; - -static const union AnimCmd *const sAnims_GROWLITHE[] = -{ - sAnim_GeneralFrame0, - sAnim_GROWLITHE_1, -}; - -static const union AnimCmd *const sAnims_ARCANINE[] = -{ - sAnim_GeneralFrame0, - sAnim_ARCANINE_1, -}; - -static const union AnimCmd *const sAnims_POLIWAG[] = -{ - sAnim_GeneralFrame0, - sAnim_POLIWAG_1, -}; - -static const union AnimCmd *const sAnims_POLIWHIRL[] = -{ - sAnim_GeneralFrame0, - sAnim_POLIWHIRL_1, -}; - -static const union AnimCmd *const sAnims_POLIWRATH[] = -{ - sAnim_GeneralFrame0, - sAnim_POLIWRATH_1, -}; - -static const union AnimCmd *const sAnims_ABRA[] = -{ - sAnim_GeneralFrame0, - sAnim_ABRA_1, -}; - -static const union AnimCmd *const sAnims_KADABRA[] = -{ - sAnim_GeneralFrame0, - sAnim_KADABRA_1, -}; - -static const union AnimCmd *const sAnims_ALAKAZAM[] = -{ - sAnim_GeneralFrame0, - sAnim_ALAKAZAM_1, -}; - -static const union AnimCmd *const sAnims_MACHOP[] = -{ - sAnim_GeneralFrame0, - sAnim_MACHOP_1, -}; - -static const union AnimCmd *const sAnims_MACHOKE[] = -{ - sAnim_GeneralFrame0, - sAnim_MACHOKE_1, -}; - -static const union AnimCmd *const sAnims_MACHAMP[] = -{ - sAnim_GeneralFrame0, - sAnim_MACHAMP_1, -}; - -static const union AnimCmd *const sAnims_BELLSPROUT[] = -{ - sAnim_GeneralFrame0, - sAnim_BELLSPROUT_1, -}; - -static const union AnimCmd *const sAnims_WEEPINBELL[] = -{ - sAnim_GeneralFrame0, - sAnim_WEEPINBELL_1, -}; - -static const union AnimCmd *const sAnims_VICTREEBEL[] = -{ - sAnim_GeneralFrame0, - sAnim_VICTREEBEL_1, -}; - -static const union AnimCmd *const sAnims_TENTACOOL[] = -{ - sAnim_GeneralFrame0, - sAnim_TENTACOOL_1, -}; - -static const union AnimCmd *const sAnims_TENTACRUEL[] = -{ - sAnim_GeneralFrame0, - sAnim_TENTACRUEL_1, -}; - -static const union AnimCmd *const sAnims_GEODUDE[] = -{ - sAnim_GeneralFrame0, - sAnim_GEODUDE_1, -}; - -static const union AnimCmd *const sAnims_GRAVELER[] = -{ - sAnim_GeneralFrame0, - sAnim_GRAVELER_1, -}; - -static const union AnimCmd *const sAnims_GOLEM[] = -{ - sAnim_GeneralFrame0, - sAnim_GOLEM_1, -}; - -static const union AnimCmd *const sAnims_PONYTA[] = -{ - sAnim_GeneralFrame0, - sAnim_PONYTA_1, -}; - -static const union AnimCmd *const sAnims_RAPIDASH[] = -{ - sAnim_GeneralFrame0, - sAnim_RAPIDASH_1, -}; - -static const union AnimCmd *const sAnims_SLOWPOKE[] = -{ - sAnim_GeneralFrame0, - sAnim_SLOWPOKE_1, -}; - -static const union AnimCmd *const sAnims_SLOWBRO[] = -{ - sAnim_GeneralFrame0, - sAnim_SLOWBRO_1, -}; - -static const union AnimCmd *const sAnims_MAGNEMITE[] = -{ - sAnim_GeneralFrame0, - sAnim_MAGNEMITE_1, -}; - -static const union AnimCmd *const sAnims_MAGNETON[] = -{ - sAnim_GeneralFrame0, - sAnim_MAGNETON_1, -}; - -static const union AnimCmd *const sAnims_FARFETCHD[] = -{ - sAnim_GeneralFrame0, - sAnim_FARFETCHD_1, -}; - -static const union AnimCmd *const sAnims_DODUO[] = -{ - sAnim_GeneralFrame0, - sAnim_DODUO_1, -}; - -static const union AnimCmd *const sAnims_DODRIO[] = -{ - sAnim_GeneralFrame0, - sAnim_DODRIO_1, -}; - -static const union AnimCmd *const sAnims_SEEL[] = -{ - sAnim_GeneralFrame0, - sAnim_SEEL_1, -}; - -static const union AnimCmd *const sAnims_DEWGONG[] = -{ - sAnim_GeneralFrame0, - sAnim_DEWGONG_1, -}; - -static const union AnimCmd *const sAnims_GRIMER[] = -{ - sAnim_GeneralFrame0, - sAnim_GRIMER_1, - sAnim_GRIMER_2, -}; - -static const union AnimCmd *const sAnims_MUK[] = -{ - sAnim_GeneralFrame0, - sAnim_MUK_1, - sAnim_MUK_2, -}; - -static const union AnimCmd *const sAnims_SHELLDER[] = -{ - sAnim_GeneralFrame0, - sAnim_SHELLDER_1, -}; - -static const union AnimCmd *const sAnims_CLOYSTER[] = -{ - sAnim_GeneralFrame0, - sAnim_CLOYSTER_1, -}; - -static const union AnimCmd *const sAnims_GASTLY[] = -{ - sAnim_GeneralFrame0, - sAnim_GASTLY_1, -}; - -static const union AnimCmd *const sAnims_HAUNTER[] = -{ - sAnim_GeneralFrame0, - sAnim_HAUNTER_1, -}; - -static const union AnimCmd *const sAnims_GENGAR[] = -{ - sAnim_GeneralFrame0, - sAnim_GENGAR_1, -}; - -static const union AnimCmd *const sAnims_ONIX[] = -{ - sAnim_GeneralFrame0, - sAnim_ONIX_1, -}; - -static const union AnimCmd *const sAnims_DROWZEE[] = -{ - sAnim_GeneralFrame0, - sAnim_DROWZEE_1, -}; - -static const union AnimCmd *const sAnims_HYPNO[] = -{ - sAnim_GeneralFrame0, - sAnim_HYPNO_1, -}; - -static const union AnimCmd *const sAnims_KRABBY[] = -{ - sAnim_GeneralFrame0, - sAnim_KRABBY_1, -}; - -static const union AnimCmd *const sAnims_KINGLER[] = -{ - sAnim_GeneralFrame0, - sAnim_KINGLER_1, -}; - -static const union AnimCmd *const sAnims_VOLTORB[] = -{ - sAnim_GeneralFrame0, - sAnim_VOLTORB_1, -}; - -static const union AnimCmd *const sAnims_ELECTRODE[] = -{ - sAnim_GeneralFrame0, - sAnim_ELECTRODE_1, -}; - -static const union AnimCmd *const sAnims_EXEGGCUTE[] = -{ - sAnim_GeneralFrame0, - sAnim_EXEGGCUTE_1, -}; - -static const union AnimCmd *const sAnims_EXEGGUTOR[] = -{ - sAnim_GeneralFrame0, - sAnim_EXEGGUTOR_1, -}; - -static const union AnimCmd *const sAnims_CUBONE[] = -{ - sAnim_GeneralFrame0, - sAnim_CUBONE_1, -}; - -static const union AnimCmd *const sAnims_MAROWAK[] = -{ - sAnim_GeneralFrame0, - sAnim_MAROWAK_1, -}; - -static const union AnimCmd *const sAnims_HITMONLEE[] = -{ - sAnim_GeneralFrame0, - sAnim_HITMONLEE_1, -}; - -static const union AnimCmd *const sAnims_HITMONCHAN[] = -{ - sAnim_GeneralFrame0, - sAnim_HITMONCHAN_1, -}; - -static const union AnimCmd *const sAnims_LICKITUNG[] = -{ - sAnim_GeneralFrame0, - sAnim_LICKITUNG_1, -}; - -static const union AnimCmd *const sAnims_KOFFING[] = -{ - sAnim_GeneralFrame0, - sAnim_KOFFING_1, - sAnim_KOFFING_2, -}; - -static const union AnimCmd *const sAnims_WEEZING[] = -{ - sAnim_GeneralFrame0, - sAnim_WEEZING_1, - sAnim_WEEZING_2, -}; - -static const union AnimCmd *const sAnims_RHYHORN[] = -{ - sAnim_GeneralFrame0, - sAnim_RHYHORN_1, - sAnim_RHYHORN_2, -}; - -static const union AnimCmd *const sAnims_RHYDON[] = -{ - sAnim_GeneralFrame0, - sAnim_RHYDON_1, - sAnim_RHYDON_2, -}; - -static const union AnimCmd *const sAnims_CHANSEY[] = -{ - sAnim_GeneralFrame0, - sAnim_CHANSEY_1, -}; - -static const union AnimCmd *const sAnims_TANGELA[] = -{ - sAnim_GeneralFrame0, - sAnim_TANGELA_1, -}; - -static const union AnimCmd *const sAnims_KANGASKHAN[] = -{ - sAnim_GeneralFrame0, - sAnim_KANGASKHAN_1, -}; - -static const union AnimCmd *const sAnims_HORSEA[] = -{ - sAnim_GeneralFrame0, - sAnim_HORSEA_1, - sAnim_HORSEA_2, -}; - -static const union AnimCmd *const sAnims_SEADRA[] = -{ - sAnim_GeneralFrame0, - sAnim_SEADRA_1, - sAnim_SEADRA_2, -}; - -static const union AnimCmd *const sAnims_GOLDEEN[] = -{ - sAnim_GeneralFrame0, - sAnim_GOLDEEN_1, -}; - -static const union AnimCmd *const sAnims_SEAKING[] = -{ - sAnim_GeneralFrame0, - sAnim_SEAKING_1, -}; - -static const union AnimCmd *const sAnims_STARYU[] = -{ - sAnim_GeneralFrame0, - sAnim_STARYU_1, - sAnim_STARYU_2, -}; - -static const union AnimCmd *const sAnims_STARMIE[] = -{ - sAnim_GeneralFrame0, - sAnim_STARMIE_1, - sAnim_STARMIE_2, -}; - -static const union AnimCmd *const sAnims_MR_MIME[] = -{ - sAnim_GeneralFrame0, - sAnim_MR_MIME_1, -}; - -static const union AnimCmd *const sAnims_SCYTHER[] = -{ - sAnim_GeneralFrame0, - sAnim_SCYTHER_1, -}; - -static const union AnimCmd *const sAnims_JYNX[] = -{ - sAnim_GeneralFrame0, - sAnim_JYNX_1, -}; - -static const union AnimCmd *const sAnims_ELECTABUZZ[] = -{ - sAnim_GeneralFrame0, - sAnim_ELECTABUZZ_1, -}; - -static const union AnimCmd *const sAnims_MAGMAR[] = -{ - sAnim_GeneralFrame0, - sAnim_MAGMAR_1, -}; - -static const union AnimCmd *const sAnims_PINSIR[] = -{ - sAnim_GeneralFrame0, - sAnim_PINSIR_1, - sAnim_PINSIR_2, -}; - -static const union AnimCmd *const sAnims_TAUROS[] = -{ - sAnim_GeneralFrame0, - sAnim_TAUROS_1, -}; - -static const union AnimCmd *const sAnims_MAGIKARP[] = -{ - sAnim_GeneralFrame0, - sAnim_MAGIKARP_1, -}; - -static const union AnimCmd *const sAnims_GYARADOS[] = -{ - sAnim_GeneralFrame0, - sAnim_GYARADOS_1, -}; - -static const union AnimCmd *const sAnims_LAPRAS[] = -{ - sAnim_GeneralFrame0, - sAnim_LAPRAS_1, -}; - -static const union AnimCmd *const sAnims_DITTO[] = -{ - sAnim_GeneralFrame0, - sAnim_DITTO_1, -}; - -static const union AnimCmd *const sAnims_EEVEE[] = -{ - sAnim_GeneralFrame0, - sAnim_EEVEE_1, -}; - -static const union AnimCmd *const sAnims_VAPOREON[] = -{ - sAnim_GeneralFrame0, - sAnim_VAPOREON_1, -}; - -static const union AnimCmd *const sAnims_JOLTEON[] = -{ - sAnim_GeneralFrame0, - sAnim_JOLTEON_1, -}; - -static const union AnimCmd *const sAnims_FLAREON[] = -{ - sAnim_GeneralFrame0, - sAnim_FLAREON_1, -}; - -static const union AnimCmd *const sAnims_PORYGON[] = -{ - sAnim_GeneralFrame0, - sAnim_PORYGON_1, -}; - -static const union AnimCmd *const sAnims_OMANYTE[] = -{ - sAnim_GeneralFrame0, - sAnim_OMANYTE_1, -}; - -static const union AnimCmd *const sAnims_OMASTAR[] = -{ - sAnim_GeneralFrame0, - sAnim_OMASTAR_1, -}; - -static const union AnimCmd *const sAnims_KABUTO[] = -{ - sAnim_GeneralFrame0, - sAnim_KABUTO_1, -}; - -static const union AnimCmd *const sAnims_KABUTOPS[] = -{ - sAnim_GeneralFrame0, - sAnim_KABUTOPS_1, -}; - -static const union AnimCmd *const sAnims_AERODACTYL[] = -{ - sAnim_GeneralFrame0, - sAnim_AERODACTYL_1, -}; - -static const union AnimCmd *const sAnims_SNORLAX[] = -{ - sAnim_GeneralFrame0, - sAnim_SNORLAX_1, -}; - -static const union AnimCmd *const sAnims_ARTICUNO[] = -{ - sAnim_GeneralFrame0, - sAnim_ARTICUNO_1, -}; - -static const union AnimCmd *const sAnims_ZAPDOS[] = -{ - sAnim_GeneralFrame0, - sAnim_ZAPDOS_1, -}; - -static const union AnimCmd *const sAnims_MOLTRES[] = -{ - sAnim_GeneralFrame0, - sAnim_MOLTRES_1, -}; - -static const union AnimCmd *const sAnims_DRATINI[] = -{ - sAnim_GeneralFrame0, - sAnim_DRATINI_1, -}; - -static const union AnimCmd *const sAnims_DRAGONAIR[] = -{ - sAnim_GeneralFrame0, - sAnim_DRAGONAIR_1, -}; - -static const union AnimCmd *const sAnims_DRAGONITE[] = -{ - sAnim_GeneralFrame0, - sAnim_DRAGONITE_1, -}; - -static const union AnimCmd *const sAnims_MEWTWO[] = -{ - sAnim_GeneralFrame0, - sAnim_MEWTWO_1, -}; - -static const union AnimCmd *const sAnims_MEW[] = -{ - sAnim_GeneralFrame0, - sAnim_MEW_1, -}; - -static const union AnimCmd *const sAnims_CHIKORITA[] = -{ - sAnim_GeneralFrame0, - sAnim_CHIKORITA_1, -}; - -static const union AnimCmd *const sAnims_BAYLEEF[] = -{ - sAnim_GeneralFrame0, - sAnim_BAYLEEF_1, -}; - -static const union AnimCmd *const sAnims_MEGANIUM[] = -{ - sAnim_GeneralFrame0, - sAnim_MEGANIUM_1, -}; - -static const union AnimCmd *const sAnims_CYNDAQUIL[] = -{ - sAnim_GeneralFrame0, - sAnim_CYNDAQUIL_1, -}; - -static const union AnimCmd *const sAnims_QUILAVA[] = -{ - sAnim_GeneralFrame0, - sAnim_QUILAVA_1, -}; - -static const union AnimCmd *const sAnims_TYPHLOSION[] = -{ - sAnim_GeneralFrame0, - sAnim_TYPHLOSION_1, -}; - -static const union AnimCmd *const sAnims_TOTODILE[] = -{ - sAnim_GeneralFrame0, - sAnim_TOTODILE_1, -}; - -static const union AnimCmd *const sAnims_CROCONAW[] = -{ - sAnim_GeneralFrame0, - sAnim_CROCONAW_1, -}; - -static const union AnimCmd *const sAnims_FERALIGATR[] = -{ - sAnim_GeneralFrame0, - sAnim_FERALIGATR_1, -}; - -static const union AnimCmd *const sAnims_SENTRET[] = -{ - sAnim_GeneralFrame0, - sAnim_SENTRET_1, -}; - -static const union AnimCmd *const sAnims_FURRET[] = -{ - sAnim_GeneralFrame0, - sAnim_FURRET_1, -}; - -static const union AnimCmd *const sAnims_HOOTHOOT[] = -{ - sAnim_GeneralFrame0, - sAnim_HOOTHOOT_1, -}; - -static const union AnimCmd *const sAnims_NOCTOWL[] = -{ - sAnim_GeneralFrame0, - sAnim_NOCTOWL_1, -}; - -static const union AnimCmd *const sAnims_LEDYBA[] = -{ - sAnim_GeneralFrame0, - sAnim_LEDYBA_1, -}; - -static const union AnimCmd *const sAnims_LEDIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_LEDIAN_1, -}; - -static const union AnimCmd *const sAnims_SPINARAK[] = -{ - sAnim_GeneralFrame0, - sAnim_SPINARAK_1, -}; - -static const union AnimCmd *const sAnims_ARIADOS[] = -{ - sAnim_GeneralFrame0, - sAnim_ARIADOS_1, -}; - -static const union AnimCmd *const sAnims_CROBAT[] = -{ - sAnim_GeneralFrame0, - sAnim_CROBAT_1, -}; - -static const union AnimCmd *const sAnims_CHINCHOU[] = -{ - sAnim_GeneralFrame0, - sAnim_CHINCHOU_1, - sAnim_CHINCHOU_2, -}; - -static const union AnimCmd *const sAnims_LANTURN[] = -{ - sAnim_GeneralFrame0, - sAnim_LANTURN_1, - sAnim_LANTURN_2, -}; - -static const union AnimCmd *const sAnims_PICHU[] = -{ - sAnim_GeneralFrame0, - sAnim_PICHU_1, - sAnim_PICHU_2, -}; - -static const union AnimCmd *const sAnims_CLEFFA[] = -{ - sAnim_GeneralFrame0, - sAnim_CLEFFA_1, -}; - -static const union AnimCmd *const sAnims_IGGLYBUFF[] = -{ - sAnim_GeneralFrame0, - sAnim_IGGLYBUFF_1, - sAnim_IGGLYBUFF_2, -}; - -static const union AnimCmd *const sAnims_TOGEPI[] = -{ - sAnim_GeneralFrame0, - sAnim_TOGEPI_1, -}; - -static const union AnimCmd *const sAnims_TOGETIC[] = -{ - sAnim_GeneralFrame0, - sAnim_TOGETIC_1, -}; - -static const union AnimCmd *const sAnims_NATU[] = -{ - sAnim_GeneralFrame0, - sAnim_NATU_1, - sAnim_NATU_2, -}; - -static const union AnimCmd *const sAnims_XATU[] = -{ - sAnim_GeneralFrame0, - sAnim_XATU_1, - sAnim_XATU_2, -}; - -static const union AnimCmd *const sAnims_MAREEP[] = -{ - sAnim_GeneralFrame0, - sAnim_MAREEP_1, -}; - -static const union AnimCmd *const sAnims_FLAAFFY[] = -{ - sAnim_GeneralFrame0, - sAnim_FLAAFFY_1, -}; - -static const union AnimCmd *const sAnims_AMPHAROS[] = -{ - sAnim_GeneralFrame0, - sAnim_AMPHAROS_1, -}; - -static const union AnimCmd *const sAnims_BELLOSSOM[] = -{ - sAnim_GeneralFrame0, - sAnim_BELLOSSOM_1, -}; - -static const union AnimCmd *const sAnims_MARILL[] = -{ - sAnim_GeneralFrame0, - sAnim_MARILL_1, -}; - -static const union AnimCmd *const sAnims_AZUMARILL[] = -{ - sAnim_GeneralFrame0, - sAnim_AZUMARILL_1, -}; - -static const union AnimCmd *const sAnims_SUDOWOODO[] = -{ - sAnim_GeneralFrame0, - sAnim_SUDOWOODO_1, -}; - -static const union AnimCmd *const sAnims_POLITOED[] = -{ - sAnim_GeneralFrame0, - sAnim_POLITOED_1, -}; - -static const union AnimCmd *const sAnims_HOPPIP[] = -{ - sAnim_GeneralFrame0, - sAnim_HOPPIP_1, -}; - -static const union AnimCmd *const sAnims_SKIPLOOM[] = -{ - sAnim_GeneralFrame0, - sAnim_SKIPLOOM_1, -}; - -static const union AnimCmd *const sAnims_JUMPLUFF[] = -{ - sAnim_GeneralFrame0, - sAnim_JUMPLUFF_1, -}; - -static const union AnimCmd *const sAnims_AIPOM[] = -{ - sAnim_GeneralFrame0, - sAnim_AIPOM_1, -}; - -static const union AnimCmd *const sAnims_SUNKERN[] = -{ - sAnim_GeneralFrame0, - sAnim_SUNKERN_1, -}; - -static const union AnimCmd *const sAnims_SUNFLORA[] = -{ - sAnim_GeneralFrame0, - sAnim_SUNFLORA_1, -}; - -static const union AnimCmd *const sAnims_YANMA[] = -{ - sAnim_GeneralFrame0, - sAnim_YANMA_1, -}; - -static const union AnimCmd *const sAnims_WOOPER[] = -{ - sAnim_GeneralFrame0, - sAnim_WOOPER_1, -}; - -static const union AnimCmd *const sAnims_QUAGSIRE[] = -{ - sAnim_GeneralFrame0, - sAnim_QUAGSIRE_1, -}; - -static const union AnimCmd *const sAnims_ESPEON[] = -{ - sAnim_GeneralFrame0, - sAnim_ESPEON_1, -}; - -static const union AnimCmd *const sAnims_UMBREON[] = -{ - sAnim_GeneralFrame0, - sAnim_UMBREON_1, -}; - -static const union AnimCmd *const sAnims_MURKROW[] = -{ - sAnim_GeneralFrame0, - sAnim_MURKROW_1, -}; - -static const union AnimCmd *const sAnims_SLOWKING[] = -{ - sAnim_GeneralFrame0, - sAnim_SLOWKING_1, -}; - -static const union AnimCmd *const sAnims_MISDREAVUS[] = -{ - sAnim_GeneralFrame0, - sAnim_MISDREAVUS_1, -}; - -static const union AnimCmd *const sAnims_UNOWN[] = -{ - sAnim_GeneralFrame0, - sAnim_UNOWN_1, -}; - -static const union AnimCmd *const sAnims_WOBBUFFET[] = -{ - sAnim_GeneralFrame0, - sAnim_WOBBUFFET_1, - sAnim_WOBBUFFET_2, -}; - -static const union AnimCmd *const sAnims_GIRAFARIG[] = -{ - sAnim_GeneralFrame0, - sAnim_GIRAFARIG_1, - sAnim_GIRAFARIG_2, -}; - -static const union AnimCmd *const sAnims_PINECO[] = -{ - sAnim_GeneralFrame0, - sAnim_PINECO_1, -}; - -static const union AnimCmd *const sAnims_FORRETRESS[] = -{ - sAnim_GeneralFrame0, - sAnim_FORRETRESS_1, -}; - -static const union AnimCmd *const sAnims_DUNSPARCE[] = -{ - sAnim_GeneralFrame0, - sAnim_DUNSPARCE_1, -}; - -static const union AnimCmd *const sAnims_GLIGAR[] = -{ - sAnim_GeneralFrame0, - sAnim_GLIGAR_1, -}; - -static const union AnimCmd *const sAnims_STEELIX[] = -{ - sAnim_GeneralFrame0, - sAnim_STEELIX_1, -}; - -static const union AnimCmd *const sAnims_SNUBBULL[] = -{ - sAnim_GeneralFrame0, - sAnim_SNUBBULL_1, -}; - -static const union AnimCmd *const sAnims_GRANBULL[] = -{ - sAnim_GeneralFrame0, - sAnim_GRANBULL_1, -}; - -static const union AnimCmd *const sAnims_QWILFISH[] = -{ - sAnim_GeneralFrame0, - sAnim_QWILFISH_1, -}; - -static const union AnimCmd *const sAnims_SCIZOR[] = -{ - sAnim_GeneralFrame0, - sAnim_SCIZOR_1, -}; - -static const union AnimCmd *const sAnims_SHUCKLE[] = -{ - sAnim_GeneralFrame0, - sAnim_SHUCKLE_1, -}; - -static const union AnimCmd *const sAnims_HERACROSS[] = -{ - sAnim_GeneralFrame0, - sAnim_HERACROSS_1, -}; - -static const union AnimCmd *const sAnims_SNEASEL[] = -{ - sAnim_GeneralFrame0, - sAnim_SNEASEL_1, -}; - -static const union AnimCmd *const sAnims_TEDDIURSA[] = -{ - sAnim_GeneralFrame0, - sAnim_TEDDIURSA_1, -}; - -static const union AnimCmd *const sAnims_URSARING[] = -{ - sAnim_GeneralFrame0, - sAnim_URSARING_1, -}; - -static const union AnimCmd *const sAnims_SLUGMA[] = -{ - sAnim_GeneralFrame0, - sAnim_SLUGMA_1, - sAnim_SLUGMA_2, -}; - -static const union AnimCmd *const sAnims_MAGCARGO[] = -{ - sAnim_GeneralFrame0, - sAnim_MAGCARGO_1, - sAnim_MAGCARGO_2, -}; - -static const union AnimCmd *const sAnims_SWINUB[] = -{ - sAnim_GeneralFrame0, - sAnim_SWINUB_1, -}; - -static const union AnimCmd *const sAnims_PILOSWINE[] = -{ - sAnim_GeneralFrame0, - sAnim_PILOSWINE_1, -}; - -static const union AnimCmd *const sAnims_CORSOLA[] = -{ - sAnim_GeneralFrame0, - sAnim_CORSOLA_1, - sAnim_CORSOLA_2, -}; - -static const union AnimCmd *const sAnims_REMORAID[] = -{ - sAnim_GeneralFrame0, - sAnim_REMORAID_1, -}; - -static const union AnimCmd *const sAnims_OCTILLERY[] = -{ - sAnim_GeneralFrame0, - sAnim_OCTILLERY_1, -}; - -static const union AnimCmd *const sAnims_DELIBIRD[] = -{ - sAnim_GeneralFrame0, - sAnim_DELIBIRD_1, -}; - -static const union AnimCmd *const sAnims_MANTINE[] = -{ - sAnim_GeneralFrame0, - sAnim_MANTINE_1, -}; - -static const union AnimCmd *const sAnims_SKARMORY[] = -{ - sAnim_GeneralFrame0, - sAnim_SKARMORY_1, -}; - -static const union AnimCmd *const sAnims_HOUNDOUR[] = -{ - sAnim_GeneralFrame0, - sAnim_HOUNDOUR_1, -}; - -static const union AnimCmd *const sAnims_HOUNDOOM[] = -{ - sAnim_GeneralFrame0, - sAnim_HOUNDOOM_1, -}; - -static const union AnimCmd *const sAnims_KINGDRA[] = -{ - sAnim_GeneralFrame0, - sAnim_KINGDRA_1, - sAnim_KINGDRA_2, -}; - -static const union AnimCmd *const sAnims_PHANPY[] = -{ - sAnim_GeneralFrame0, - sAnim_PHANPY_1, - sAnim_PHANPY_2, -}; - -static const union AnimCmd *const sAnims_DONPHAN[] = -{ - sAnim_GeneralFrame0, - sAnim_DONPHAN_1, -}; - -static const union AnimCmd *const sAnims_PORYGON2[] = -{ - sAnim_GeneralFrame0, - sAnim_PORYGON2_1, -}; - -static const union AnimCmd *const sAnims_STANTLER[] = -{ - sAnim_GeneralFrame0, - sAnim_STANTLER_1, -}; - -static const union AnimCmd *const sAnims_SMEARGLE[] = -{ - sAnim_GeneralFrame0, - sAnim_SMEARGLE_1, -}; - -static const union AnimCmd *const sAnims_TYROGUE[] = -{ - sAnim_GeneralFrame0, - sAnim_TYROGUE_1, -}; - -static const union AnimCmd *const sAnims_HITMONTOP[] = -{ - sAnim_GeneralFrame0, - sAnim_HITMONTOP_1, -}; - -static const union AnimCmd *const sAnims_SMOOCHUM[] = -{ - sAnim_GeneralFrame0, - sAnim_SMOOCHUM_1, -}; - -static const union AnimCmd *const sAnims_ELEKID[] = -{ - sAnim_GeneralFrame0, - sAnim_ELEKID_1, -}; - -static const union AnimCmd *const sAnims_MAGBY[] = -{ - sAnim_GeneralFrame0, - sAnim_MAGBY_1, -}; - -static const union AnimCmd *const sAnims_MILTANK[] = -{ - sAnim_GeneralFrame0, - sAnim_MILTANK_1, -}; - -static const union AnimCmd *const sAnims_BLISSEY[] = -{ - sAnim_GeneralFrame0, - sAnim_BLISSEY_1, -}; - -static const union AnimCmd *const sAnims_RAIKOU[] = -{ - sAnim_GeneralFrame0, - sAnim_RAIKOU_1, -}; - -static const union AnimCmd *const sAnims_ENTEI[] = -{ - sAnim_GeneralFrame0, - sAnim_ENTEI_1, -}; - -static const union AnimCmd *const sAnims_SUICUNE[] = -{ - sAnim_GeneralFrame0, - sAnim_SUICUNE_1, -}; - -static const union AnimCmd *const sAnims_LARVITAR[] = -{ - sAnim_GeneralFrame0, - sAnim_LARVITAR_1, -}; - -static const union AnimCmd *const sAnims_PUPITAR[] = -{ - sAnim_GeneralFrame0, - sAnim_PUPITAR_1, -}; - -static const union AnimCmd *const sAnims_TYRANITAR[] = -{ - sAnim_GeneralFrame0, - sAnim_TYRANITAR_1, -}; - -static const union AnimCmd *const sAnims_LUGIA[] = -{ - sAnim_GeneralFrame0, - sAnim_LUGIA_1, -}; - -static const union AnimCmd *const sAnims_HO_OH[] = -{ - sAnim_GeneralFrame0, - sAnim_HO_OH_1, -}; - -static const union AnimCmd *const sAnims_CELEBI[] = -{ - sAnim_GeneralFrame0, - sAnim_CELEBI_1, -}; - -static const union AnimCmd *const sAnims_OLD_UNOWN_B[] = -{ - sAnim_GeneralFrame0, - sAnim_OLD_UNOWN_B_1, -}; - -static const union AnimCmd *const sAnims_TREECKO[] = -{ - sAnim_GeneralFrame0, - sAnim_TREECKO_1, -}; - -static const union AnimCmd *const sAnims_GROVYLE[] = -{ - sAnim_GeneralFrame0, - sAnim_GROVYLE_1, -}; - -static const union AnimCmd *const sAnims_SCEPTILE[] = -{ - sAnim_GeneralFrame0, - sAnim_SCEPTILE_1, -}; - -static const union AnimCmd *const sAnims_TORCHIC[] = -{ - sAnim_GeneralFrame0, - sAnim_TORCHIC_1, -}; - -static const union AnimCmd *const sAnims_COMBUSKEN[] = -{ - sAnim_GeneralFrame0, - sAnim_COMBUSKEN_1, -}; - -static const union AnimCmd *const sAnims_BLAZIKEN[] = -{ - sAnim_GeneralFrame0, - sAnim_BLAZIKEN_1, - sAnim_BLAZIKEN_2, - sAnim_BLAZIKEN_3, - sAnim_BLAZIKEN_4, -}; - -static const union AnimCmd *const sAnims_MUDKIP[] = -{ - sAnim_GeneralFrame0, - sAnim_MUDKIP_1, -}; - -static const union AnimCmd *const sAnims_MARSHTOMP[] = -{ - sAnim_GeneralFrame0, - sAnim_MARSHTOMP_1, -}; - -static const union AnimCmd *const sAnims_SWAMPERT[] = -{ - sAnim_GeneralFrame0, - sAnim_SWAMPERT_1, -}; - -static const union AnimCmd *const sAnims_POOCHYENA[] = -{ - sAnim_GeneralFrame0, - sAnim_POOCHYENA_1, -}; - -static const union AnimCmd *const sAnims_MIGHTYENA[] = -{ - sAnim_GeneralFrame0, - sAnim_MIGHTYENA_1, -}; - -static const union AnimCmd *const sAnims_ZIGZAGOON[] = -{ - sAnim_GeneralFrame0, - sAnim_ZIGZAGOON_1, -}; - -static const union AnimCmd *const sAnims_LINOONE[] = -{ - sAnim_GeneralFrame0, - sAnim_LINOONE_1, -}; - -static const union AnimCmd *const sAnims_WURMPLE[] = -{ - sAnim_GeneralFrame0, - sAnim_WURMPLE_1, -}; - -static const union AnimCmd *const sAnims_SILCOON[] = -{ - sAnim_GeneralFrame0, - sAnim_SILCOON_1, - sAnim_SILCOON_2, -}; - -static const union AnimCmd *const sAnims_BEAUTIFLY[] = -{ - sAnim_GeneralFrame0, - sAnim_BEAUTIFLY_1, - sAnim_BEAUTIFLY_2, -}; - -static const union AnimCmd *const sAnims_CASCOON[] = -{ - sAnim_GeneralFrame0, - sAnim_CASCOON_1, - sAnim_CASCOON_2, -}; - -static const union AnimCmd *const sAnims_DUSTOX[] = -{ - sAnim_GeneralFrame0, - sAnim_DUSTOX_1, - sAnim_DUSTOX_2, -}; - -static const union AnimCmd *const sAnims_LOTAD[] = -{ - sAnim_GeneralFrame0, - sAnim_LOTAD_1, -}; - -static const union AnimCmd *const sAnims_LOMBRE[] = -{ - sAnim_GeneralFrame0, - sAnim_LOMBRE_1, -}; - -static const union AnimCmd *const sAnims_LUDICOLO[] = -{ - sAnim_GeneralFrame0, - sAnim_LUDICOLO_1, -}; - -static const union AnimCmd *const sAnims_SEEDOT[] = -{ - sAnim_GeneralFrame0, - sAnim_SEEDOT_1, -}; - -static const union AnimCmd *const sAnims_NUZLEAF[] = -{ - sAnim_GeneralFrame0, - sAnim_NUZLEAF_1, -}; - -static const union AnimCmd *const sAnims_SHIFTRY[] = -{ - sAnim_GeneralFrame0, - sAnim_SHIFTRY_1, -}; - -static const union AnimCmd *const sAnims_NINCADA[] = -{ - sAnim_GeneralFrame0, - sAnim_NINCADA_1, -}; - -static const union AnimCmd *const sAnims_NINJASK[] = -{ - sAnim_GeneralFrame0, - sAnim_NINJASK_1, -}; - -static const union AnimCmd *const sAnims_SHEDINJA[] = -{ - sAnim_GeneralFrame0, - sAnim_SHEDINJA_1, -}; - -static const union AnimCmd *const sAnims_TAILLOW[] = -{ - sAnim_GeneralFrame0, - sAnim_TAILLOW_1, -}; - -static const union AnimCmd *const sAnims_SWELLOW[] = -{ - sAnim_GeneralFrame0, - sAnim_SWELLOW_1, -}; - -static const union AnimCmd *const sAnims_SHROOMISH[] = -{ - sAnim_GeneralFrame0, - sAnim_SHROOMISH_1, -}; - -static const union AnimCmd *const sAnims_BRELOOM[] = -{ - sAnim_GeneralFrame0, - sAnim_BRELOOM_1, -}; - -static const union AnimCmd *const sAnims_SPINDA[] = -{ - sAnim_GeneralFrame0, -}; - -static const union AnimCmd *const sAnims_WINGULL[] = -{ - sAnim_GeneralFrame0, - sAnim_WINGULL_1, -}; - -static const union AnimCmd *const sAnims_PELIPPER[] = -{ - sAnim_GeneralFrame0, - sAnim_PELIPPER_1, -}; - -static const union AnimCmd *const sAnims_SURSKIT[] = -{ - sAnim_GeneralFrame0, - sAnim_SURSKIT_1, - sAnim_SURSKIT_2, -}; - -static const union AnimCmd *const sAnims_MASQUERAIN[] = -{ - sAnim_GeneralFrame0, - sAnim_MASQUERAIN_1, - sAnim_MASQUERAIN_2, -}; - -static const union AnimCmd *const sAnims_WAILMER[] = -{ - sAnim_GeneralFrame0, - sAnim_WAILMER_1, -}; - -static const union AnimCmd *const sAnims_WAILORD[] = -{ - sAnim_GeneralFrame0, - sAnim_WAILORD_1, -}; - -static const union AnimCmd *const sAnims_SKITTY[] = -{ - sAnim_GeneralFrame0, - sAnim_SKITTY_1, -}; - -static const union AnimCmd *const sAnims_DELCATTY[] = -{ - sAnim_GeneralFrame0, - sAnim_DELCATTY_1, -}; - -static const union AnimCmd *const sAnims_KECLEON[] = -{ - sAnim_GeneralFrame0, - sAnim_KECLEON_1, -}; - -static const union AnimCmd *const sAnims_BALTOY[] = -{ - sAnim_GeneralFrame0, - sAnim_BALTOY_1, -}; - -static const union AnimCmd *const sAnims_CLAYDOL[] = -{ - sAnim_GeneralFrame0, - sAnim_CLAYDOL_1, -}; - -static const union AnimCmd *const sAnims_NOSEPASS[] = -{ - sAnim_GeneralFrame0, - sAnim_NOSEPASS_1, -}; - -static const union AnimCmd *const sAnims_TORKOAL[] = -{ - sAnim_GeneralFrame0, - sAnim_TORKOAL_1, -}; - -static const union AnimCmd *const sAnims_SABLEYE[] = -{ - sAnim_GeneralFrame0, - sAnim_SABLEYE_1, -}; - -static const union AnimCmd *const sAnims_BARBOACH[] = -{ - sAnim_GeneralFrame0, - sAnim_BARBOACH_1, -}; - -static const union AnimCmd *const sAnims_WHISCASH[] = -{ - sAnim_GeneralFrame0, - sAnim_WHISCASH_1, -}; - -static const union AnimCmd *const sAnims_LUVDISC[] = -{ - sAnim_GeneralFrame0, - sAnim_LUVDISC_1, -}; - -static const union AnimCmd *const sAnims_CORPHISH[] = -{ - sAnim_GeneralFrame0, - sAnim_CORPHISH_1, -}; - -static const union AnimCmd *const sAnims_CRAWDAUNT[] = -{ - sAnim_GeneralFrame0, - sAnim_CRAWDAUNT_1, -}; - -static const union AnimCmd *const sAnims_FEEBAS[] = -{ - sAnim_GeneralFrame0, - sAnim_FEEBAS_1, -}; - -static const union AnimCmd *const sAnims_MILOTIC[] = -{ - sAnim_GeneralFrame0, - sAnim_MILOTIC_1, -}; - -static const union AnimCmd *const sAnims_CARVANHA[] = -{ - sAnim_GeneralFrame0, - sAnim_CARVANHA_1, -}; - -static const union AnimCmd *const sAnims_SHARPEDO[] = -{ - sAnim_GeneralFrame0, - sAnim_SHARPEDO_1, -}; - -static const union AnimCmd *const sAnims_TRAPINCH[] = -{ - sAnim_GeneralFrame0, - sAnim_TRAPINCH_1, -}; - -static const union AnimCmd *const sAnims_VIBRAVA[] = -{ - sAnim_GeneralFrame0, - sAnim_VIBRAVA_1, -}; - -static const union AnimCmd *const sAnims_FLYGON[] = -{ - sAnim_GeneralFrame0, - sAnim_FLYGON_1, -}; - -static const union AnimCmd *const sAnims_MAKUHITA[] = -{ - sAnim_GeneralFrame0, - sAnim_MAKUHITA_1, -}; - -static const union AnimCmd *const sAnims_HARIYAMA[] = -{ - sAnim_GeneralFrame0, - sAnim_HARIYAMA_1, -}; - -static const union AnimCmd *const sAnims_ELECTRIKE[] = -{ - sAnim_GeneralFrame0, - sAnim_ELECTRIKE_1, -}; - -static const union AnimCmd *const sAnims_MANECTRIC[] = -{ - sAnim_GeneralFrame0, - sAnim_MANECTRIC_1, -}; - -static const union AnimCmd *const sAnims_NUMEL[] = -{ - sAnim_GeneralFrame0, - sAnim_NUMEL_1, -}; - -static const union AnimCmd *const sAnims_CAMERUPT[] = -{ - sAnim_GeneralFrame0, - sAnim_CAMERUPT_1, -}; - -static const union AnimCmd *const sAnims_SPHEAL[] = -{ - sAnim_GeneralFrame0, - sAnim_SPHEAL_1, -}; - -static const union AnimCmd *const sAnims_SEALEO[] = -{ - sAnim_GeneralFrame0, - sAnim_SEALEO_1, -}; - -static const union AnimCmd *const sAnims_WALREIN[] = -{ - sAnim_GeneralFrame0, - sAnim_WALREIN_1, -}; - -static const union AnimCmd *const sAnims_CACNEA[] = -{ - sAnim_GeneralFrame0, - sAnim_CACNEA_1, -}; - -static const union AnimCmd *const sAnims_CACTURNE[] = -{ - sAnim_GeneralFrame0, - sAnim_CACTURNE_1, -}; - -static const union AnimCmd *const sAnims_SNORUNT[] = -{ - sAnim_GeneralFrame0, - sAnim_SNORUNT_1, -}; - -static const union AnimCmd *const sAnims_GLALIE[] = -{ - sAnim_GeneralFrame0, - sAnim_GLALIE_1, -}; - -static const union AnimCmd *const sAnims_LUNATONE[] = -{ - sAnim_GeneralFrame0, - sAnim_LUNATONE_1, - sAnim_LUNATONE_2, -}; - -static const union AnimCmd *const sAnims_SOLROCK[] = -{ - sAnim_GeneralFrame0, - sAnim_SOLROCK_1, - sAnim_SOLROCK_2, -}; - -static const union AnimCmd *const sAnims_AZURILL[] = -{ - sAnim_GeneralFrame0, - sAnim_AZURILL_1, -}; - -static const union AnimCmd *const sAnims_SPOINK[] = -{ - sAnim_GeneralFrame0, - sAnim_SPOINK_1, -}; - -static const union AnimCmd *const sAnims_GRUMPIG[] = -{ - sAnim_GeneralFrame0, - sAnim_GRUMPIG_1, -}; - -static const union AnimCmd *const sAnims_PLUSLE[] = -{ - sAnim_GeneralFrame0, - sAnim_PLUSLE_1, -}; - -static const union AnimCmd *const sAnims_MINUN[] = -{ - sAnim_GeneralFrame0, - sAnim_MINUN_1, -}; - -static const union AnimCmd *const sAnims_MAWILE[] = -{ - sAnim_GeneralFrame0, - sAnim_MAWILE_1, -}; - -static const union AnimCmd *const sAnims_MEDITITE[] = -{ - sAnim_GeneralFrame0, - sAnim_MEDITITE_1, -}; - -static const union AnimCmd *const sAnims_MEDICHAM[] = -{ - sAnim_GeneralFrame0, - sAnim_MEDICHAM_1, -}; - -static const union AnimCmd *const sAnims_SWABLU[] = -{ - sAnim_GeneralFrame0, - sAnim_SWABLU_1, - sAnim_SWABLU_2, -}; - -static const union AnimCmd *const sAnims_ALTARIA[] = -{ - sAnim_GeneralFrame0, - sAnim_ALTARIA_1, - sAnim_ALTARIA_2, -}; - -static const union AnimCmd *const sAnims_WYNAUT[] = -{ - sAnim_GeneralFrame0, - sAnim_WYNAUT_1, -}; - -static const union AnimCmd *const sAnims_DUSKULL[] = -{ - sAnim_GeneralFrame0, - sAnim_DUSKULL_1, -}; - -static const union AnimCmd *const sAnims_DUSCLOPS[] = -{ - sAnim_GeneralFrame0, - sAnim_DUSCLOPS_1, -}; - -static const union AnimCmd *const sAnims_ROSELIA[] = -{ - sAnim_GeneralFrame0, - sAnim_ROSELIA_1, -}; - -static const union AnimCmd *const sAnims_SLAKOTH[] = -{ - sAnim_GeneralFrame0, - sAnim_SLAKOTH_1, -}; - -static const union AnimCmd *const sAnims_VIGOROTH[] = -{ - sAnim_GeneralFrame0, - sAnim_VIGOROTH_1, -}; - -static const union AnimCmd *const sAnims_SLAKING[] = -{ - sAnim_GeneralFrame0, - sAnim_SLAKING_1, -}; - -static const union AnimCmd *const sAnims_GULPIN[] = -{ - sAnim_GeneralFrame0, - sAnim_GULPIN_1, -}; - -static const union AnimCmd *const sAnims_SWALOT[] = -{ - sAnim_GeneralFrame0, - sAnim_SWALOT_1, -}; - -static const union AnimCmd *const sAnims_TROPIUS[] = -{ - sAnim_GeneralFrame0, - sAnim_TROPIUS_1, -}; - -static const union AnimCmd *const sAnims_WHISMUR[] = -{ - sAnim_GeneralFrame0, - sAnim_WHISMUR_1, -}; - -static const union AnimCmd *const sAnims_LOUDRED[] = -{ - sAnim_GeneralFrame0, - sAnim_LOUDRED_1, -}; - -static const union AnimCmd *const sAnims_EXPLOUD[] = -{ - sAnim_GeneralFrame0, - sAnim_EXPLOUD_1, -}; - -static const union AnimCmd *const sAnims_CLAMPERL[] = -{ - sAnim_GeneralFrame0, - sAnim_CLAMPERL_1, -}; - -static const union AnimCmd *const sAnims_HUNTAIL[] = -{ - sAnim_GeneralFrame0, - sAnim_HUNTAIL_1, -}; - -static const union AnimCmd *const sAnims_GOREBYSS[] = -{ - sAnim_GeneralFrame0, - sAnim_GOREBYSS_1, -}; - -static const union AnimCmd *const sAnims_ABSOL[] = -{ - sAnim_GeneralFrame0, - sAnim_ABSOL_1, -}; - -static const union AnimCmd *const sAnims_SHUPPET[] = -{ - sAnim_GeneralFrame0, - sAnim_SHUPPET_1, -}; - -static const union AnimCmd *const sAnims_BANETTE[] = -{ - sAnim_GeneralFrame0, - sAnim_BANETTE_1, -}; - -static const union AnimCmd *const sAnims_SEVIPER[] = -{ - sAnim_GeneralFrame0, - sAnim_SEVIPER_1, -}; - -static const union AnimCmd *const sAnims_ZANGOOSE[] = -{ - sAnim_GeneralFrame0, - sAnim_ZANGOOSE_1, -}; - -static const union AnimCmd *const sAnims_RELICANTH[] = -{ - sAnim_GeneralFrame0, - sAnim_RELICANTH_1, -}; - -static const union AnimCmd *const sAnims_ARON[] = -{ - sAnim_GeneralFrame0, - sAnim_ARON_1, -}; - -static const union AnimCmd *const sAnims_LAIRON[] = -{ - sAnim_GeneralFrame0, - sAnim_LAIRON_1, -}; - -static const union AnimCmd *const sAnims_AGGRON[] = -{ - sAnim_GeneralFrame0, - sAnim_AGGRON_1, -}; - -static const union AnimCmd *const sAnims_CASTFORM[] = -{ - sAnim_CASTFORM_0, - sAnim_CASTFORM_1, - sAnim_CASTFORM_2, - sAnim_CASTFORM_3, -}; - -static const union AnimCmd *const sAnims_VOLBEAT[] = -{ - sAnim_GeneralFrame0, - sAnim_VOLBEAT_1, -}; - -static const union AnimCmd *const sAnims_ILLUMISE[] = -{ - sAnim_GeneralFrame0, - sAnim_ILLUMISE_1, -}; - -static const union AnimCmd *const sAnims_LILEEP[] = -{ - sAnim_GeneralFrame0, - sAnim_LILEEP_1, -}; - -static const union AnimCmd *const sAnims_CRADILY[] = -{ - sAnim_GeneralFrame0, - sAnim_CRADILY_1, -}; - -static const union AnimCmd *const sAnims_ANORITH[] = -{ - sAnim_GeneralFrame0, - sAnim_ANORITH_1, -}; - -static const union AnimCmd *const sAnims_ARMALDO[] = -{ - sAnim_GeneralFrame0, - sAnim_ARMALDO_1, -}; - -static const union AnimCmd *const sAnims_RALTS[] = -{ - sAnim_GeneralFrame0, - sAnim_RALTS_1, -}; - -static const union AnimCmd *const sAnims_KIRLIA[] = -{ - sAnim_GeneralFrame0, - sAnim_KIRLIA_1, -}; - -static const union AnimCmd *const sAnims_GARDEVOIR[] = -{ - sAnim_GeneralFrame0, - sAnim_GARDEVOIR_1, -}; - -static const union AnimCmd *const sAnims_BAGON[] = -{ - sAnim_GeneralFrame0, - sAnim_BAGON_1, -}; - -static const union AnimCmd *const sAnims_SHELGON[] = -{ - sAnim_GeneralFrame0, - sAnim_SHELGON_1, -}; - -static const union AnimCmd *const sAnims_SALAMENCE[] = -{ - sAnim_GeneralFrame0, - sAnim_SALAMENCE_1, -}; - -static const union AnimCmd *const sAnims_BELDUM[] = -{ - sAnim_GeneralFrame0, - sAnim_BELDUM_1, -}; - -static const union AnimCmd *const sAnims_METANG[] = -{ - sAnim_GeneralFrame0, - sAnim_METANG_1, -}; - -static const union AnimCmd *const sAnims_METAGROSS[] = -{ - sAnim_GeneralFrame0, - sAnim_METAGROSS_1, -}; - -static const union AnimCmd *const sAnims_REGIROCK[] = -{ - sAnim_GeneralFrame0, - sAnim_REGIROCK_1, - sAnim_REGIROCK_2, -}; - -static const union AnimCmd *const sAnims_REGICE[] = -{ - sAnim_GeneralFrame0, - sAnim_REGICE_1, -}; - -static const union AnimCmd *const sAnims_REGISTEEL[] = -{ - sAnim_GeneralFrame0, - sAnim_REGISTEEL_1, - sAnim_REGISTEEL_2, -}; - -static const union AnimCmd *const sAnims_KYOGRE[] = -{ - sAnim_GeneralFrame0, - sAnim_KYOGRE_1, - sAnim_KYOGRE_2, -}; - -static const union AnimCmd *const sAnims_GROUDON[] = -{ - sAnim_GeneralFrame0, - sAnim_GROUDON_1, - sAnim_GROUDON_2, -}; - -static const union AnimCmd *const sAnims_RAYQUAZA[] = -{ - sAnim_GeneralFrame0, - sAnim_RAYQUAZA_1, - sAnim_RAYQUAZA_2, -}; - -static const union AnimCmd *const sAnims_LATIAS[] = -{ - sAnim_GeneralFrame0, - sAnim_LATIAS_1, - sAnim_LATIAS_2, -}; - -static const union AnimCmd *const sAnims_LATIOS[] = -{ - sAnim_GeneralFrame0, - sAnim_LATIOS_1, - sAnim_LATIOS_2, -}; - -static const union AnimCmd *const sAnims_JIRACHI[] = -{ - sAnim_GeneralFrame0, - sAnim_JIRACHI_1, - sAnim_JIRACHI_2, -}; - -static const union AnimCmd *const sAnims_DEOXYS[] = -{ - sAnim_GeneralFrame0, - sAnim_DEOXYS_1, - sAnim_DEOXYS_2, -}; - -static const union AnimCmd *const sAnims_CHIMECHO[] = -{ - sAnim_GeneralFrame0, - sAnim_CHIMECHO_1, -}; - -static const union AnimCmd *const sAnims_EGG[] = -{ - sAnim_GeneralFrame0, - sAnim_EGG_1, -}; - -static const union AnimCmd *const sAnims_UNOWN_B[] = -{ - sAnim_GeneralFrame0, - sAnim_UNOWN_B_1, -}; - -static const union AnimCmd *const sAnims_UNOWN_C[] = -{ - sAnim_GeneralFrame0, - sAnim_UNOWN_C_1, -}; - -static const union AnimCmd *const sAnims_UNOWN_D[] = -{ - sAnim_GeneralFrame0, - sAnim_UNOWN_D_1, -}; - -static const union AnimCmd *const sAnims_UNOWN_E[] = -{ - sAnim_GeneralFrame0, - sAnim_UNOWN_E_1, -}; - -static const union AnimCmd *const sAnims_UNOWN_F[] = -{ - sAnim_GeneralFrame0, - sAnim_UNOWN_F_1, -}; - -static const union AnimCmd *const sAnims_UNOWN_G[] = -{ - sAnim_GeneralFrame0, - sAnim_UNOWN_G_1, -}; - -static const union AnimCmd *const sAnims_UNOWN_H[] = -{ - sAnim_GeneralFrame0, - sAnim_UNOWN_H_1, -}; - -static const union AnimCmd *const sAnims_UNOWN_I[] = -{ - sAnim_GeneralFrame0, - sAnim_UNOWN_I_1, -}; - -static const union AnimCmd *const sAnims_UNOWN_J[] = -{ - sAnim_GeneralFrame0, - sAnim_UNOWN_J_1, -}; - -static const union AnimCmd *const sAnims_UNOWN_K[] = -{ - sAnim_GeneralFrame0, - sAnim_UNOWN_K_1, -}; - -static const union AnimCmd *const sAnims_UNOWN_L[] = -{ - sAnim_GeneralFrame0, - sAnim_UNOWN_L_1, -}; - -static const union AnimCmd *const sAnims_UNOWN_M[] = -{ - sAnim_GeneralFrame0, - sAnim_UNOWN_M_1, -}; - -static const union AnimCmd *const sAnims_UNOWN_N[] = -{ - sAnim_GeneralFrame0, - sAnim_UNOWN_N_1, -}; - -static const union AnimCmd *const sAnims_UNOWN_O[] = -{ - sAnim_GeneralFrame0, - sAnim_UNOWN_O_1, -}; - -static const union AnimCmd *const sAnims_UNOWN_P[] = -{ - sAnim_GeneralFrame0, - sAnim_UNOWN_P_1, -}; - -static const union AnimCmd *const sAnims_UNOWN_Q[] = -{ - sAnim_GeneralFrame0, - sAnim_UNOWN_Q_1, -}; - -static const union AnimCmd *const sAnims_UNOWN_R[] = -{ - sAnim_GeneralFrame0, - sAnim_UNOWN_R_1, -}; - -static const union AnimCmd *const sAnims_UNOWN_S[] = -{ - sAnim_GeneralFrame0, - sAnim_UNOWN_S_1, -}; - -static const union AnimCmd *const sAnims_UNOWN_T[] = -{ - sAnim_GeneralFrame0, - sAnim_UNOWN_T_1, -}; - -static const union AnimCmd *const sAnims_UNOWN_U[] = -{ - sAnim_GeneralFrame0, - sAnim_UNOWN_U_1, -}; - -static const union AnimCmd *const sAnims_UNOWN_V[] = -{ - sAnim_GeneralFrame0, - sAnim_UNOWN_V_1, -}; - -static const union AnimCmd *const sAnims_UNOWN_W[] = -{ - sAnim_GeneralFrame0, - sAnim_UNOWN_W_1, -}; - -static const union AnimCmd *const sAnims_UNOWN_X[] = -{ - sAnim_GeneralFrame0, - sAnim_UNOWN_X_1, -}; - -static const union AnimCmd *const sAnims_UNOWN_Y[] = -{ - sAnim_GeneralFrame0, - sAnim_UNOWN_Y_1, -}; - -static const union AnimCmd *const sAnims_UNOWN_Z[] = -{ - sAnim_GeneralFrame0, - sAnim_UNOWN_Z_1, -}; - -static const union AnimCmd *const sAnims_UNOWN_EMARK[] = -{ - sAnim_GeneralFrame0, - sAnim_UNOWN_EMARK_1, -}; - -static const union AnimCmd *const sAnims_UNOWN_QMARK[] = -{ - sAnim_GeneralFrame0, - sAnim_UNOWN_QMARK_1, -}; - +#define SINGLE_ANIMATION(name) \ +static const union AnimCmd *const sAnims_##name[] = \ +{ \ + sAnim_GeneralFrame0, \ + sAnim_##name##_1, \ +} + +#define DOUBLE_ANIMATION(name) \ +static const union AnimCmd *const sAnims_##name[] = \ +{ \ + sAnim_GeneralFrame0, \ + sAnim_##name##_1, \ + sAnim_##name##_2, \ +} + +SINGLE_ANIMATION(None); +SINGLE_ANIMATION(Bulbasaur); +SINGLE_ANIMATION(Ivysaur); +SINGLE_ANIMATION(Venusaur); +SINGLE_ANIMATION(Charmander); +SINGLE_ANIMATION(Charmeleon); +SINGLE_ANIMATION(Charizard); +SINGLE_ANIMATION(Squirtle); +SINGLE_ANIMATION(Wartortle); +SINGLE_ANIMATION(Blastoise); +SINGLE_ANIMATION(Caterpie); +SINGLE_ANIMATION(Metapod); +SINGLE_ANIMATION(Butterfree); +SINGLE_ANIMATION(Weedle); +SINGLE_ANIMATION(Kakuna); +SINGLE_ANIMATION(Beedrill); +SINGLE_ANIMATION(Pidgey); +SINGLE_ANIMATION(Pidgeotto); +SINGLE_ANIMATION(Pidgeot); +SINGLE_ANIMATION(Rattata); +SINGLE_ANIMATION(Raticate); +SINGLE_ANIMATION(Spearow); +SINGLE_ANIMATION(Fearow); +SINGLE_ANIMATION(Ekans); +SINGLE_ANIMATION(Arbok); +DOUBLE_ANIMATION(Pikachu); +DOUBLE_ANIMATION(Raichu); +DOUBLE_ANIMATION(Sandshrew); +DOUBLE_ANIMATION(Sandslash); +SINGLE_ANIMATION(NidoranF); +SINGLE_ANIMATION(Nidorina); +SINGLE_ANIMATION(Nidoqueen); +SINGLE_ANIMATION(NidoranM); +SINGLE_ANIMATION(Nidorino); +SINGLE_ANIMATION(Nidoking); +SINGLE_ANIMATION(Clefairy); +SINGLE_ANIMATION(Clefable); +DOUBLE_ANIMATION(Vulpix); +DOUBLE_ANIMATION(Ninetales); +DOUBLE_ANIMATION(Jigglypuff); +DOUBLE_ANIMATION(Wigglytuff); +SINGLE_ANIMATION(Zubat); +SINGLE_ANIMATION(Golbat); +SINGLE_ANIMATION(Oddish); +SINGLE_ANIMATION(Gloom); +SINGLE_ANIMATION(Vileplume); +SINGLE_ANIMATION(Paras); +SINGLE_ANIMATION(Parasect); +SINGLE_ANIMATION(Venonat); +SINGLE_ANIMATION(Venomoth); +SINGLE_ANIMATION(Diglett); +SINGLE_ANIMATION(Dugtrio); +SINGLE_ANIMATION(Meowth); +SINGLE_ANIMATION(Persian); +DOUBLE_ANIMATION(Psyduck); +DOUBLE_ANIMATION(Golduck); +SINGLE_ANIMATION(Mankey); +SINGLE_ANIMATION(Primeape); +SINGLE_ANIMATION(Growlithe); +SINGLE_ANIMATION(Arcanine); +SINGLE_ANIMATION(Poliwag); +SINGLE_ANIMATION(Poliwhirl); +SINGLE_ANIMATION(Poliwrath); +SINGLE_ANIMATION(Abra); +SINGLE_ANIMATION(Kadabra); +SINGLE_ANIMATION(Alakazam); +SINGLE_ANIMATION(Machop); +SINGLE_ANIMATION(Machoke); +SINGLE_ANIMATION(Machamp); +SINGLE_ANIMATION(Bellsprout); +SINGLE_ANIMATION(Weepinbell); +SINGLE_ANIMATION(Victreebel); +SINGLE_ANIMATION(Tentacool); +SINGLE_ANIMATION(Tentacruel); +SINGLE_ANIMATION(Geodude); +SINGLE_ANIMATION(Graveler); +SINGLE_ANIMATION(Golem); +SINGLE_ANIMATION(Ponyta); +SINGLE_ANIMATION(Rapidash); +SINGLE_ANIMATION(Slowpoke); +SINGLE_ANIMATION(Slowbro); +SINGLE_ANIMATION(Magnemite); +SINGLE_ANIMATION(Magneton); +SINGLE_ANIMATION(Farfetchd); +SINGLE_ANIMATION(Doduo); +SINGLE_ANIMATION(Dodrio); +SINGLE_ANIMATION(Seel); +SINGLE_ANIMATION(Dewgong); +DOUBLE_ANIMATION(Grimer); +DOUBLE_ANIMATION(Muk); +SINGLE_ANIMATION(Shellder); +SINGLE_ANIMATION(Cloyster); +SINGLE_ANIMATION(Gastly); +SINGLE_ANIMATION(Haunter); +SINGLE_ANIMATION(Gengar); +SINGLE_ANIMATION(Onix); +SINGLE_ANIMATION(Drowzee); +SINGLE_ANIMATION(Hypno); +SINGLE_ANIMATION(Krabby); +SINGLE_ANIMATION(Kingler); +SINGLE_ANIMATION(Voltorb); +SINGLE_ANIMATION(Electrode); +SINGLE_ANIMATION(Exeggcute); +SINGLE_ANIMATION(Exeggutor); +SINGLE_ANIMATION(Cubone); +SINGLE_ANIMATION(Marowak); +SINGLE_ANIMATION(Hitmonlee); +SINGLE_ANIMATION(Hitmonchan); +SINGLE_ANIMATION(Lickitung); +DOUBLE_ANIMATION(Koffing); +DOUBLE_ANIMATION(Weezing); +DOUBLE_ANIMATION(Rhyhorn); +DOUBLE_ANIMATION(Rhydon); +SINGLE_ANIMATION(Chansey); +SINGLE_ANIMATION(Tangela); +SINGLE_ANIMATION(Kangaskhan); +DOUBLE_ANIMATION(Horsea); +DOUBLE_ANIMATION(Seadra); +SINGLE_ANIMATION(Goldeen); +SINGLE_ANIMATION(Seaking); +DOUBLE_ANIMATION(Staryu); +DOUBLE_ANIMATION(Starmie); +SINGLE_ANIMATION(MrMime); +SINGLE_ANIMATION(Scyther); +SINGLE_ANIMATION(Jynx); +SINGLE_ANIMATION(Electabuzz); +SINGLE_ANIMATION(Magmar); +DOUBLE_ANIMATION(Pinsir); +SINGLE_ANIMATION(Tauros); +SINGLE_ANIMATION(Magikarp); +SINGLE_ANIMATION(Gyarados); +SINGLE_ANIMATION(Lapras); +SINGLE_ANIMATION(Ditto); +SINGLE_ANIMATION(Eevee); +SINGLE_ANIMATION(Vaporeon); +SINGLE_ANIMATION(Jolteon); +SINGLE_ANIMATION(Flareon); +SINGLE_ANIMATION(Porygon); +SINGLE_ANIMATION(Omanyte); +SINGLE_ANIMATION(Omastar); +SINGLE_ANIMATION(Kabuto); +SINGLE_ANIMATION(Kabutops); +SINGLE_ANIMATION(Aerodactyl); +SINGLE_ANIMATION(Snorlax); +SINGLE_ANIMATION(Articuno); +SINGLE_ANIMATION(Zapdos); +SINGLE_ANIMATION(Moltres); +SINGLE_ANIMATION(Dratini); +SINGLE_ANIMATION(Dragonair); +SINGLE_ANIMATION(Dragonite); +SINGLE_ANIMATION(Mewtwo); +SINGLE_ANIMATION(Mew); +SINGLE_ANIMATION(Chikorita); +SINGLE_ANIMATION(Bayleef); +SINGLE_ANIMATION(Meganium); +SINGLE_ANIMATION(Cyndaquil); +SINGLE_ANIMATION(Quilava); +SINGLE_ANIMATION(Typhlosion); +SINGLE_ANIMATION(Totodile); +SINGLE_ANIMATION(Croconaw); +SINGLE_ANIMATION(Feraligatr); +SINGLE_ANIMATION(Sentret); +SINGLE_ANIMATION(Furret); +SINGLE_ANIMATION(Hoothoot); +SINGLE_ANIMATION(Noctowl); +SINGLE_ANIMATION(Ledyba); +SINGLE_ANIMATION(Ledian); +SINGLE_ANIMATION(Spinarak); +SINGLE_ANIMATION(Ariados); +SINGLE_ANIMATION(Crobat); +DOUBLE_ANIMATION(Chinchou); +DOUBLE_ANIMATION(Lanturn); +DOUBLE_ANIMATION(Pichu); +SINGLE_ANIMATION(Cleffa); +DOUBLE_ANIMATION(Igglybuff); +SINGLE_ANIMATION(Togepi); +SINGLE_ANIMATION(Togetic); +DOUBLE_ANIMATION(Natu); +DOUBLE_ANIMATION(Xatu); +SINGLE_ANIMATION(Mareep); +SINGLE_ANIMATION(Flaaffy); +SINGLE_ANIMATION(Ampharos); +SINGLE_ANIMATION(Bellossom); +SINGLE_ANIMATION(Marill); +SINGLE_ANIMATION(Azumarill); +SINGLE_ANIMATION(Sudowoodo); +SINGLE_ANIMATION(Politoed); +SINGLE_ANIMATION(Hoppip); +SINGLE_ANIMATION(Skiploom); +SINGLE_ANIMATION(Jumpluff); +SINGLE_ANIMATION(Aipom); +SINGLE_ANIMATION(Sunkern); +SINGLE_ANIMATION(Sunflora); +SINGLE_ANIMATION(Yanma); +SINGLE_ANIMATION(Wooper); +SINGLE_ANIMATION(Quagsire); +SINGLE_ANIMATION(Espeon); +SINGLE_ANIMATION(Umbreon); +SINGLE_ANIMATION(Murkrow); +SINGLE_ANIMATION(Slowking); +SINGLE_ANIMATION(Misdreavus); +SINGLE_ANIMATION(Unown); +DOUBLE_ANIMATION(Wobbuffet); +DOUBLE_ANIMATION(Girafarig); +SINGLE_ANIMATION(Pineco); +SINGLE_ANIMATION(Forretress); +SINGLE_ANIMATION(Dunsparce); +SINGLE_ANIMATION(Gligar); +SINGLE_ANIMATION(Steelix); +SINGLE_ANIMATION(Snubbull); +SINGLE_ANIMATION(Granbull); +SINGLE_ANIMATION(Qwilfish); +SINGLE_ANIMATION(Scizor); +SINGLE_ANIMATION(Shuckle); +SINGLE_ANIMATION(Heracross); +SINGLE_ANIMATION(Sneasel); +SINGLE_ANIMATION(Teddiursa); +SINGLE_ANIMATION(Ursaring); +DOUBLE_ANIMATION(Slugma); +DOUBLE_ANIMATION(Magcargo); +SINGLE_ANIMATION(Swinub); +SINGLE_ANIMATION(Piloswine); +DOUBLE_ANIMATION(Corsola); +SINGLE_ANIMATION(Remoraid); +SINGLE_ANIMATION(Octillery); +SINGLE_ANIMATION(Delibird); +SINGLE_ANIMATION(Mantine); +SINGLE_ANIMATION(Skarmory); +SINGLE_ANIMATION(Houndour); +SINGLE_ANIMATION(Houndoom); +DOUBLE_ANIMATION(Kingdra); +DOUBLE_ANIMATION(Phanpy); +SINGLE_ANIMATION(Donphan); +SINGLE_ANIMATION(Porygon2); +SINGLE_ANIMATION(Stantler); +SINGLE_ANIMATION(Smeargle); +SINGLE_ANIMATION(Tyrogue); +SINGLE_ANIMATION(Hitmontop); +SINGLE_ANIMATION(Smoochum); +SINGLE_ANIMATION(Elekid); +SINGLE_ANIMATION(Magby); +SINGLE_ANIMATION(Miltank); +SINGLE_ANIMATION(Blissey); +SINGLE_ANIMATION(Raikou); +SINGLE_ANIMATION(Entei); +SINGLE_ANIMATION(Suicune); +SINGLE_ANIMATION(Larvitar); +SINGLE_ANIMATION(Pupitar); +SINGLE_ANIMATION(Tyranitar); +SINGLE_ANIMATION(Lugia); +SINGLE_ANIMATION(HoOh); +SINGLE_ANIMATION(Celebi); +SINGLE_ANIMATION(OldUnownB); +SINGLE_ANIMATION(Treecko); +SINGLE_ANIMATION(Grovyle); +SINGLE_ANIMATION(Sceptile); +SINGLE_ANIMATION(Torchic); +SINGLE_ANIMATION(Combusken); +static const union AnimCmd *const sAnims_Blaziken[] ={ + sAnim_GeneralFrame0, + sAnim_Blaziken_1, + sAnim_Blaziken_2, + sAnim_Blaziken_3, + sAnim_Blaziken_4, +}; +SINGLE_ANIMATION(Mudkip); +SINGLE_ANIMATION(Marshtomp); +SINGLE_ANIMATION(Swampert); +SINGLE_ANIMATION(Poochyena); +SINGLE_ANIMATION(Mightyena); +SINGLE_ANIMATION(Zigzagoon); +SINGLE_ANIMATION(Linoone); +SINGLE_ANIMATION(Wurmple); +DOUBLE_ANIMATION(Silcoon); +DOUBLE_ANIMATION(Beautifly); +DOUBLE_ANIMATION(Cascoon); +DOUBLE_ANIMATION(Dustox); +SINGLE_ANIMATION(Lotad); +SINGLE_ANIMATION(Lombre); +SINGLE_ANIMATION(Ludicolo); +SINGLE_ANIMATION(Seedot); +SINGLE_ANIMATION(Nuzleaf); +SINGLE_ANIMATION(Shiftry); +SINGLE_ANIMATION(Nincada); +SINGLE_ANIMATION(Ninjask); +SINGLE_ANIMATION(Shedinja); +SINGLE_ANIMATION(Taillow); +SINGLE_ANIMATION(Swellow); +SINGLE_ANIMATION(Shroomish); +SINGLE_ANIMATION(Breloom); +static const union AnimCmd *const sAnims_Spinda[] ={ + sAnim_GeneralFrame0, +}; +SINGLE_ANIMATION(Wingull); +SINGLE_ANIMATION(Pelipper); +DOUBLE_ANIMATION(Surskit); +DOUBLE_ANIMATION(Masquerain); +SINGLE_ANIMATION(Wailmer); +SINGLE_ANIMATION(Wailord); +SINGLE_ANIMATION(Skitty); +SINGLE_ANIMATION(Delcatty); +SINGLE_ANIMATION(Kecleon); +SINGLE_ANIMATION(Baltoy); +SINGLE_ANIMATION(Claydol); +SINGLE_ANIMATION(Nosepass); +SINGLE_ANIMATION(Torkoal); +SINGLE_ANIMATION(Sableye); +SINGLE_ANIMATION(Barboach); +SINGLE_ANIMATION(Whiscash); +SINGLE_ANIMATION(Luvdisc); +SINGLE_ANIMATION(Corphish); +SINGLE_ANIMATION(Crawdaunt); +SINGLE_ANIMATION(Feebas); +SINGLE_ANIMATION(Milotic); +SINGLE_ANIMATION(Carvanha); +SINGLE_ANIMATION(Sharpedo); +SINGLE_ANIMATION(Trapinch); +SINGLE_ANIMATION(Vibrava); +SINGLE_ANIMATION(Flygon); +SINGLE_ANIMATION(Makuhita); +SINGLE_ANIMATION(Hariyama); +SINGLE_ANIMATION(Electrike); +SINGLE_ANIMATION(Manectric); +SINGLE_ANIMATION(Numel); +SINGLE_ANIMATION(Camerupt); +SINGLE_ANIMATION(Spheal); +SINGLE_ANIMATION(Sealeo); +SINGLE_ANIMATION(Walrein); +SINGLE_ANIMATION(Cacnea); +SINGLE_ANIMATION(Cacturne); +SINGLE_ANIMATION(Snorunt); +SINGLE_ANIMATION(Glalie); +DOUBLE_ANIMATION(Lunatone); +DOUBLE_ANIMATION(Solrock); +SINGLE_ANIMATION(Azurill); +SINGLE_ANIMATION(Spoink); +SINGLE_ANIMATION(Grumpig); +SINGLE_ANIMATION(Plusle); +SINGLE_ANIMATION(Minun); +SINGLE_ANIMATION(Mawile); +SINGLE_ANIMATION(Meditite); +SINGLE_ANIMATION(Medicham); +DOUBLE_ANIMATION(Swablu); +DOUBLE_ANIMATION(Altaria); +SINGLE_ANIMATION(Wynaut); +SINGLE_ANIMATION(Duskull); +SINGLE_ANIMATION(Dusclops); +SINGLE_ANIMATION(Roselia); +SINGLE_ANIMATION(Slakoth); +SINGLE_ANIMATION(Vigoroth); +SINGLE_ANIMATION(Slaking); +SINGLE_ANIMATION(Gulpin); +SINGLE_ANIMATION(Swalot); +SINGLE_ANIMATION(Tropius); +SINGLE_ANIMATION(Whismur); +SINGLE_ANIMATION(Loudred); +SINGLE_ANIMATION(Exploud); +SINGLE_ANIMATION(Clamperl); +SINGLE_ANIMATION(Huntail); +SINGLE_ANIMATION(Gorebyss); +SINGLE_ANIMATION(Absol); +SINGLE_ANIMATION(Shuppet); +SINGLE_ANIMATION(Banette); +SINGLE_ANIMATION(Seviper); +SINGLE_ANIMATION(Zangoose); +SINGLE_ANIMATION(Relicanth); +SINGLE_ANIMATION(Aron); +SINGLE_ANIMATION(Lairon); +SINGLE_ANIMATION(Aggron); +static const union AnimCmd *const sAnims_Castform[] ={ + sAnim_Castform_0, + sAnim_Castform_1, + sAnim_Castform_2, + sAnim_Castform_3, +}; +SINGLE_ANIMATION(Volbeat); +SINGLE_ANIMATION(Illumise); +SINGLE_ANIMATION(Lileep); +SINGLE_ANIMATION(Cradily); +SINGLE_ANIMATION(Anorith); +SINGLE_ANIMATION(Armaldo); +SINGLE_ANIMATION(Ralts); +SINGLE_ANIMATION(Kirlia); +SINGLE_ANIMATION(Gardevoir); +SINGLE_ANIMATION(Bagon); +SINGLE_ANIMATION(Shelgon); +SINGLE_ANIMATION(Salamence); +SINGLE_ANIMATION(Beldum); +SINGLE_ANIMATION(Metang); +SINGLE_ANIMATION(Metagross); +DOUBLE_ANIMATION(Regirock); +SINGLE_ANIMATION(Regice); +DOUBLE_ANIMATION(Registeel); +DOUBLE_ANIMATION(Kyogre); +DOUBLE_ANIMATION(Groudon); +DOUBLE_ANIMATION(Rayquaza); +DOUBLE_ANIMATION(Latias); +DOUBLE_ANIMATION(Latios); +DOUBLE_ANIMATION(Jirachi); +DOUBLE_ANIMATION(Deoxys); +SINGLE_ANIMATION(Chimecho); +SINGLE_ANIMATION(Egg); +SINGLE_ANIMATION(UnownB); +SINGLE_ANIMATION(UnownC); +SINGLE_ANIMATION(UnownD); +SINGLE_ANIMATION(UnownE); +SINGLE_ANIMATION(UnownF); +SINGLE_ANIMATION(UnownG); +SINGLE_ANIMATION(UnownH); +SINGLE_ANIMATION(UnownI); +SINGLE_ANIMATION(UnownJ); +SINGLE_ANIMATION(UnownK); +SINGLE_ANIMATION(UnownL); +SINGLE_ANIMATION(UnownM); +SINGLE_ANIMATION(UnownN); +SINGLE_ANIMATION(UnownO); +SINGLE_ANIMATION(UnownP); +SINGLE_ANIMATION(UnownQ); +SINGLE_ANIMATION(UnownR); +SINGLE_ANIMATION(UnownS); +SINGLE_ANIMATION(UnownT); +SINGLE_ANIMATION(UnownU); +SINGLE_ANIMATION(UnownV); +SINGLE_ANIMATION(UnownW); +SINGLE_ANIMATION(UnownX); +SINGLE_ANIMATION(UnownY); +SINGLE_ANIMATION(UnownZ); +SINGLE_ANIMATION(UnownEMark); +SINGLE_ANIMATION(UnownQMark); #if P_GEN_4_POKEMON == TRUE -static const union AnimCmd *const sAnims_TURTWIG[] = -{ - sAnim_GeneralFrame0, - sAnim_TURTWIG_1, -}; - -static const union AnimCmd *const sAnims_GROTLE[] = -{ - sAnim_GeneralFrame0, - sAnim_GROTLE_1, -}; - -static const union AnimCmd *const sAnims_TORTERRA[] = -{ - sAnim_GeneralFrame0, - sAnim_TORTERRA_1, -}; - -static const union AnimCmd *const sAnims_CHIMCHAR[] = -{ - sAnim_GeneralFrame0, - sAnim_CHIMCHAR_1, -}; - -static const union AnimCmd *const sAnims_MONFERNO[] = -{ - sAnim_GeneralFrame0, - sAnim_MONFERNO_1, -}; - -static const union AnimCmd *const sAnims_INFERNAPE[] = -{ - sAnim_GeneralFrame0, - sAnim_INFERNAPE_1, -}; - -static const union AnimCmd *const sAnims_PIPLUP[] = -{ - sAnim_GeneralFrame0, - sAnim_PIPLUP_1, -}; - -static const union AnimCmd *const sAnims_PRINPLUP[] = -{ - sAnim_GeneralFrame0, - sAnim_PRINPLUP_1, -}; - -static const union AnimCmd *const sAnims_EMPOLEON[] = -{ - sAnim_GeneralFrame0, - sAnim_EMPOLEON_1, -}; - -static const union AnimCmd *const sAnims_STARLY[] = -{ - sAnim_GeneralFrame0, - sAnim_STARLY_1, -}; - -static const union AnimCmd *const sAnims_STARAVIA[] = -{ - sAnim_GeneralFrame0, - sAnim_STARAVIA_1, -}; - -static const union AnimCmd *const sAnims_STARAPTOR[] = -{ - sAnim_GeneralFrame0, - sAnim_STARAPTOR_1, -}; - -static const union AnimCmd *const sAnims_BIDOOF[] = -{ - sAnim_GeneralFrame0, - sAnim_BIDOOF_1, -}; - -static const union AnimCmd *const sAnims_BIBAREL[] = -{ - sAnim_GeneralFrame0, - sAnim_BIBAREL_1, - sAnim_BIBAREL_2, -}; - -static const union AnimCmd *const sAnims_KRICKETOT[] = -{ - sAnim_GeneralFrame0, - sAnim_KRICKETOT_1, -}; - -static const union AnimCmd *const sAnims_KRICKETUNE[] = -{ - sAnim_GeneralFrame0, - sAnim_KRICKETUNE_1, -}; - -static const union AnimCmd *const sAnims_SHINX[] = -{ - sAnim_GeneralFrame0, - sAnim_SHINX_1, -}; - -static const union AnimCmd *const sAnims_LUXIO[] = -{ - sAnim_GeneralFrame0, - sAnim_LUXIO_1, -}; - -static const union AnimCmd *const sAnims_LUXRAY[] = -{ - sAnim_GeneralFrame0, - sAnim_LUXRAY_1, - sAnim_LUXRAY_2, -}; - -static const union AnimCmd *const sAnims_BUDEW[] = -{ - sAnim_GeneralFrame0, - sAnim_BUDEW_1, -}; - -static const union AnimCmd *const sAnims_ROSERADE[] = -{ - sAnim_GeneralFrame0, - sAnim_ROSERADE_1, -}; - -static const union AnimCmd *const sAnims_CRANIDOS[] = -{ - sAnim_GeneralFrame0, - sAnim_CRANIDOS_1, -}; - -static const union AnimCmd *const sAnims_RAMPARDOS[] = -{ - sAnim_GeneralFrame0, - sAnim_RAMPARDOS_1, -}; - -static const union AnimCmd *const sAnims_SHIELDON[] = -{ - sAnim_GeneralFrame0, - sAnim_SHIELDON_1, -}; - -static const union AnimCmd *const sAnims_BASTIODON[] = -{ - sAnim_GeneralFrame0, - sAnim_BASTIODON_1, -}; - -static const union AnimCmd *const sAnims_BURMY[] = -{ - sAnim_GeneralFrame0, - sAnim_BURMY_1, -}; - -static const union AnimCmd *const sAnims_WORMADAM[] = -{ - sAnim_GeneralFrame0, - sAnim_WORMADAM_1, -}; - -static const union AnimCmd *const sAnims_MOTHIM[] = -{ - sAnim_GeneralFrame0, - sAnim_MOTHIM_1, -}; - -static const union AnimCmd *const sAnims_COMBEE[] = -{ - sAnim_GeneralFrame0, - sAnim_COMBEE_1, -}; - -static const union AnimCmd *const sAnims_VESPIQUEN[] = -{ - sAnim_GeneralFrame0, - sAnim_VESPIQUEN_1, -}; - -static const union AnimCmd *const sAnims_PACHIRISU[] = -{ - sAnim_GeneralFrame0, - sAnim_PACHIRISU_1, -}; - -static const union AnimCmd *const sAnims_BUIZEL[] = -{ - sAnim_GeneralFrame0, - sAnim_BUIZEL_1, -}; - -static const union AnimCmd *const sAnims_FLOATZEL[] = -{ - sAnim_GeneralFrame0, - sAnim_FLOATZEL_1, -}; - -static const union AnimCmd *const sAnims_CHERUBI[] = -{ - sAnim_GeneralFrame0, - sAnim_CHERUBI_1, -}; - -static const union AnimCmd *const sAnims_CHERRIM[] = -{ - sAnim_GeneralFrame0, - sAnim_CHERRIM_NORMAL, - sAnim_CHERRIM_NORMAL_2, -}; - -static const union AnimCmd *const sAnims_CHERRIM_SUNSHINE[] ={ - sAnim_GeneralFrame0, - sAnim_CHERRIM_SUNSHINE, -}; - -static const union AnimCmd *const sAnims_SHELLOS[] = -{ - sAnim_GeneralFrame0, - sAnim_SHELLOS_1, -}; - -static const union AnimCmd *const sAnims_GASTRODON[] = -{ - sAnim_GeneralFrame0, - sAnim_GASTRODON_1, -}; - -static const union AnimCmd *const sAnims_AMBIPOM[] = -{ - sAnim_GeneralFrame0, - sAnim_AMBIPOM_1, -}; - -static const union AnimCmd *const sAnims_DRIFLOON[] = -{ - sAnim_GeneralFrame0, - sAnim_DRIFLOON_1, -}; - -static const union AnimCmd *const sAnims_DRIFBLIM[] = -{ - sAnim_GeneralFrame0, - sAnim_DRIFBLIM_1, -}; - -static const union AnimCmd *const sAnims_BUNEARY[] = -{ - sAnim_GeneralFrame0, - sAnim_BUNEARY_1, -}; - -static const union AnimCmd *const sAnims_LOPUNNY[] = -{ - sAnim_GeneralFrame0, - sAnim_LOPUNNY_1, -}; - -static const union AnimCmd *const sAnims_MISMAGIUS[] = -{ - sAnim_GeneralFrame0, - sAnim_MISMAGIUS_1, -}; - -static const union AnimCmd *const sAnims_HONCHKROW[] = -{ - sAnim_GeneralFrame0, - sAnim_HONCHKROW_1, -}; - -static const union AnimCmd *const sAnims_GLAMEOW[] = -{ - sAnim_GeneralFrame0, - sAnim_GLAMEOW_1, -}; - -static const union AnimCmd *const sAnims_PURUGLY[] = -{ - sAnim_GeneralFrame0, - sAnim_PURUGLY_1, -}; - -static const union AnimCmd *const sAnims_CHINGLING[] = -{ - sAnim_GeneralFrame0, - sAnim_CHINGLING_1, -}; - -static const union AnimCmd *const sAnims_STUNKY[] = -{ - sAnim_GeneralFrame0, - sAnim_STUNKY_1, -}; - -static const union AnimCmd *const sAnims_SKUNTANK[] = -{ - sAnim_GeneralFrame0, - sAnim_SKUNTANK_1, -}; - -static const union AnimCmd *const sAnims_BRONZOR[] = -{ - sAnim_GeneralFrame0, - sAnim_BRONZOR_1, -}; - -static const union AnimCmd *const sAnims_BRONZONG[] = -{ - sAnim_GeneralFrame0, - sAnim_BRONZONG_1, - sAnim_BRONZONG_2, -}; - -static const union AnimCmd *const sAnims_BONSLY[] = -{ - sAnim_GeneralFrame0, - sAnim_BONSLY_1, -}; - -static const union AnimCmd *const sAnims_MIME_JR[] = -{ - sAnim_GeneralFrame0, - sAnim_MIME_JR_1, -}; - -static const union AnimCmd *const sAnims_HAPPINY[] = -{ - sAnim_GeneralFrame0, - sAnim_HAPPINY_1, -}; - -static const union AnimCmd *const sAnims_CHATOT[] = -{ - sAnim_GeneralFrame0, - sAnim_CHATOT_1, -}; - -static const union AnimCmd *const sAnims_SPIRITOMB[] = -{ - sAnim_GeneralFrame0, - sAnim_SPIRITOMB_1, -}; - -static const union AnimCmd *const sAnims_GIBLE[] = -{ - sAnim_GeneralFrame0, - sAnim_GIBLE_1, -}; - -static const union AnimCmd *const sAnims_GABITE[] = -{ - sAnim_GeneralFrame0, - sAnim_GABITE_1, -}; - -static const union AnimCmd *const sAnims_GARCHOMP[] = -{ - sAnim_GeneralFrame0, - sAnim_GARCHOMP_1, -}; - -static const union AnimCmd *const sAnims_MUNCHLAX[] = -{ - sAnim_GeneralFrame0, - sAnim_MUNCHLAX_1, -}; - -static const union AnimCmd *const sAnims_RIOLU[] = -{ - sAnim_GeneralFrame0, - sAnim_RIOLU_1, -}; - -static const union AnimCmd *const sAnims_LUCARIO[] = -{ - sAnim_GeneralFrame0, - sAnim_LUCARIO_1, -}; - -static const union AnimCmd *const sAnims_HIPPOPOTAS[] = -{ - sAnim_GeneralFrame0, - sAnim_HIPPOPOTAS_1, -}; - -static const union AnimCmd *const sAnims_HIPPOWDON[] = -{ - sAnim_GeneralFrame0, - sAnim_HIPPOWDON_1, -}; - -static const union AnimCmd *const sAnims_SKORUPI[] = -{ - sAnim_GeneralFrame0, - sAnim_SKORUPI_1, -}; - -static const union AnimCmd *const sAnims_DRAPION[] = -{ - sAnim_GeneralFrame0, - sAnim_DRAPION_1, -}; - -static const union AnimCmd *const sAnims_CROAGUNK[] = -{ - sAnim_GeneralFrame0, - sAnim_CROAGUNK_1, -}; - -static const union AnimCmd *const sAnims_TOXICROAK[] = -{ - sAnim_GeneralFrame0, - sAnim_TOXICROAK_1, -}; - -static const union AnimCmd *const sAnims_CARNIVINE[] = -{ - sAnim_GeneralFrame0, - sAnim_CARNIVINE_1, -}; - -static const union AnimCmd *const sAnims_FINNEON[] = -{ - sAnim_GeneralFrame0, - sAnim_FINNEON_1, -}; - -static const union AnimCmd *const sAnims_LUMINEON[] = -{ - sAnim_GeneralFrame0, - sAnim_LUMINEON_1, -}; - -static const union AnimCmd *const sAnims_MANTYKE[] = -{ - sAnim_GeneralFrame0, - sAnim_MANTYKE_1, -}; - -static const union AnimCmd *const sAnims_SNOVER[] = -{ - sAnim_GeneralFrame0, - sAnim_SNOVER_1, -}; - -static const union AnimCmd *const sAnims_ABOMASNOW[] = -{ - sAnim_GeneralFrame0, - sAnim_ABOMASNOW_1, -}; - -static const union AnimCmd *const sAnims_WEAVILE[] = -{ - sAnim_GeneralFrame0, - sAnim_WEAVILE_1, -}; - -static const union AnimCmd *const sAnims_MAGNEZONE[] = -{ - sAnim_GeneralFrame0, - sAnim_MAGNEZONE_1, -}; - -static const union AnimCmd *const sAnims_LICKILICKY[] = -{ - sAnim_GeneralFrame0, - sAnim_LICKILICKY_1, -}; - -static const union AnimCmd *const sAnims_RHYPERIOR[] = -{ - sAnim_GeneralFrame0, - sAnim_RHYPERIOR_1, -}; - -static const union AnimCmd *const sAnims_TANGROWTH[] = -{ - sAnim_GeneralFrame0, - sAnim_TANGROWTH_1, -}; - -static const union AnimCmd *const sAnims_ELECTIVIRE[] = -{ - sAnim_GeneralFrame0, - sAnim_ELECTIVIRE_1, -}; - -static const union AnimCmd *const sAnims_MAGMORTAR[] = -{ - sAnim_GeneralFrame0, - sAnim_MAGMORTAR_1, -}; - -static const union AnimCmd *const sAnims_TOGEKISS[] = -{ - sAnim_GeneralFrame0, - sAnim_TOGEKISS_1, -}; - -static const union AnimCmd *const sAnims_YANMEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_YANMEGA_1, -}; - -static const union AnimCmd *const sAnims_LEAFEON[] = -{ - sAnim_GeneralFrame0, - sAnim_LEAFEON_1, -}; - -static const union AnimCmd *const sAnims_GLACEON[] = -{ - sAnim_GeneralFrame0, - sAnim_GLACEON_1, -}; - -static const union AnimCmd *const sAnims_GLISCOR[] = -{ - sAnim_GeneralFrame0, - sAnim_GLISCOR_1, -}; - -static const union AnimCmd *const sAnims_MAMOSWINE[] = -{ - sAnim_GeneralFrame0, - sAnim_MAMOSWINE_1, -}; - -static const union AnimCmd *const sAnims_PORYGON_Z[] = -{ - sAnim_GeneralFrame0, - sAnim_PORYGON_Z_1, -}; - -static const union AnimCmd *const sAnims_GALLADE[] = -{ - sAnim_GeneralFrame0, - sAnim_GALLADE_1, -}; - -static const union AnimCmd *const sAnims_PROBOPASS[] = -{ - sAnim_GeneralFrame0, - sAnim_PROBOPASS_1, - sAnim_PROBOPASS_2, -}; - -static const union AnimCmd *const sAnims_DUSKNOIR[] = -{ - sAnim_GeneralFrame0, - sAnim_DUSKNOIR_1, -}; - -static const union AnimCmd *const sAnims_FROSLASS[] = -{ - sAnim_GeneralFrame0, - sAnim_FROSLASS_1, -}; - -static const union AnimCmd *const sAnims_ROTOM[] = -{ - sAnim_GeneralFrame0, - sAnim_ROTOM_1, - sAnim_ROTOM_2, -}; - -static const union AnimCmd *const sAnims_ROTOM_HEAT[] = -{ - sAnim_GeneralFrame0, - sAnim_RotomHeat_1, -}; - -static const union AnimCmd *const sAnims_ROTOM_FROST[] = -{ - sAnim_GeneralFrame0, - sAnim_RotomFrost_1, -}; - -static const union AnimCmd *const sAnims_ROTOM_FAN[] = -{ - sAnim_GeneralFrame0, - sAnim_RotomFan_1, -}; - -static const union AnimCmd *const sAnims_ROTOM_MOW[] = -{ - sAnim_GeneralFrame0, - sAnim_RotomMow_1, -}; - -static const union AnimCmd *const sAnims_ROTOM_WASH[] = -{ - sAnim_GeneralFrame0, - sAnim_RotomWash_1, -}; - -static const union AnimCmd *const sAnims_UXIE[] = -{ - sAnim_GeneralFrame0, - sAnim_UXIE_1, -}; - -static const union AnimCmd *const sAnims_MESPRIT[] = -{ - sAnim_GeneralFrame0, - sAnim_MESPRIT_1, -}; - -static const union AnimCmd *const sAnims_AZELF[] = -{ - sAnim_GeneralFrame0, - sAnim_AZELF_1, -}; - -static const union AnimCmd *const sAnims_DIALGA[] = -{ - sAnim_GeneralFrame0, - sAnim_DIALGA_1, -}; - -static const union AnimCmd *const sAnims_PALKIA[] = -{ - sAnim_GeneralFrame0, - sAnim_PALKIA_1, -}; - -static const union AnimCmd *const sAnims_HEATRAN[] = -{ - sAnim_GeneralFrame0, - sAnim_HEATRAN_1, -}; - -static const union AnimCmd *const sAnims_REGIGIGAS[] = -{ - sAnim_GeneralFrame0, - sAnim_REGIGIGAS_1, -}; - -static const union AnimCmd *const sAnims_GIRATINA[] = -{ - sAnim_GeneralFrame0, - sAnim_GIRATINA_1, -}; - -static const union AnimCmd *const sAnims_CRESSELIA[] = -{ - sAnim_GeneralFrame0, - sAnim_CRESSELIA_1, -}; - -static const union AnimCmd *const sAnims_PHIONE[] = -{ - sAnim_GeneralFrame0, - sAnim_PHIONE_1, -}; - -static const union AnimCmd *const sAnims_MANAPHY[] = -{ - sAnim_GeneralFrame0, - sAnim_MANAPHY_1, -}; - -static const union AnimCmd *const sAnims_DARKRAI[] = -{ - sAnim_GeneralFrame0, - sAnim_DARKRAI_1, -}; - -static const union AnimCmd *const sAnims_SHAYMIN[] = -{ - sAnim_GeneralFrame0, - sAnim_SHAYMIN_1, -}; - -static const union AnimCmd *const sAnims_ARCEUS[] = -{ - sAnim_GeneralFrame0, - sAnim_ARCEUS_1, -}; +SINGLE_ANIMATION(Turtwig); +SINGLE_ANIMATION(Grotle); +SINGLE_ANIMATION(Torterra); +SINGLE_ANIMATION(Chimchar); +SINGLE_ANIMATION(Monferno); +SINGLE_ANIMATION(Infernape); +SINGLE_ANIMATION(Piplup); +SINGLE_ANIMATION(Prinplup); +SINGLE_ANIMATION(Empoleon); +SINGLE_ANIMATION(Starly); +SINGLE_ANIMATION(Staravia); +SINGLE_ANIMATION(Staraptor); +SINGLE_ANIMATION(Bidoof); +DOUBLE_ANIMATION(Bibarel); +SINGLE_ANIMATION(Kricketot); +SINGLE_ANIMATION(Kricketune); +SINGLE_ANIMATION(Shinx); +SINGLE_ANIMATION(Luxio); +DOUBLE_ANIMATION(Luxray); +SINGLE_ANIMATION(Budew); +SINGLE_ANIMATION(Roserade); +SINGLE_ANIMATION(Cranidos); +SINGLE_ANIMATION(Rampardos); +SINGLE_ANIMATION(Shieldon); +SINGLE_ANIMATION(Bastiodon); +SINGLE_ANIMATION(Burmy); +SINGLE_ANIMATION(Wormadam); +SINGLE_ANIMATION(Mothim); +SINGLE_ANIMATION(Combee); +SINGLE_ANIMATION(Vespiquen); +SINGLE_ANIMATION(Pachirisu); +SINGLE_ANIMATION(Buizel); +SINGLE_ANIMATION(Floatzel); +SINGLE_ANIMATION(Cherubi); +DOUBLE_ANIMATION(CherrimOvercast); +SINGLE_ANIMATION(CherrimSunshine); +SINGLE_ANIMATION(Shellos); +SINGLE_ANIMATION(Gastrodon); +SINGLE_ANIMATION(Ambipom); +SINGLE_ANIMATION(Drifloon); +SINGLE_ANIMATION(Drifblim); +SINGLE_ANIMATION(Buneary); +SINGLE_ANIMATION(Lopunny); +SINGLE_ANIMATION(Mismagius); +SINGLE_ANIMATION(Honchkrow); +SINGLE_ANIMATION(Glameow); +SINGLE_ANIMATION(Purugly); +SINGLE_ANIMATION(Chingling); +SINGLE_ANIMATION(Stunky); +SINGLE_ANIMATION(Skuntank); +SINGLE_ANIMATION(Bronzor); +DOUBLE_ANIMATION(Bronzong); +SINGLE_ANIMATION(Bonsly); +SINGLE_ANIMATION(MimeJr); +SINGLE_ANIMATION(Happiny); +SINGLE_ANIMATION(Chatot); +SINGLE_ANIMATION(Spiritomb); +SINGLE_ANIMATION(Gible); +SINGLE_ANIMATION(Gabite); +SINGLE_ANIMATION(Garchomp); +SINGLE_ANIMATION(Munchlax); +SINGLE_ANIMATION(Riolu); +SINGLE_ANIMATION(Lucario); +SINGLE_ANIMATION(Hippopotas); +SINGLE_ANIMATION(Hippowdon); +SINGLE_ANIMATION(Skorupi); +SINGLE_ANIMATION(Drapion); +SINGLE_ANIMATION(Croagunk); +SINGLE_ANIMATION(Toxicroak); +SINGLE_ANIMATION(Carnivine); +SINGLE_ANIMATION(Finneon); +SINGLE_ANIMATION(Lumineon); +SINGLE_ANIMATION(Mantyke); +SINGLE_ANIMATION(Snover); +SINGLE_ANIMATION(Abomasnow); +SINGLE_ANIMATION(Weavile); +SINGLE_ANIMATION(Magnezone); +SINGLE_ANIMATION(Lickilicky); +SINGLE_ANIMATION(Rhyperior); +SINGLE_ANIMATION(Tangrowth); +SINGLE_ANIMATION(Electivire); +SINGLE_ANIMATION(Magmortar); +SINGLE_ANIMATION(Togekiss); +SINGLE_ANIMATION(Yanmega); +SINGLE_ANIMATION(Leafeon); +SINGLE_ANIMATION(Glaceon); +SINGLE_ANIMATION(Gliscor); +SINGLE_ANIMATION(Mamoswine); +SINGLE_ANIMATION(PORYGON_Z); +SINGLE_ANIMATION(Gallade); +DOUBLE_ANIMATION(Probopass); +SINGLE_ANIMATION(Dusknoir); +SINGLE_ANIMATION(Froslass); +DOUBLE_ANIMATION(Rotom); +SINGLE_ANIMATION(RotomHeat); +SINGLE_ANIMATION(RotomFrost); +SINGLE_ANIMATION(RotomFan); +SINGLE_ANIMATION(RotomMow); +SINGLE_ANIMATION(RotomWash); +SINGLE_ANIMATION(Uxie); +SINGLE_ANIMATION(Mesprit); +SINGLE_ANIMATION(Azelf); +SINGLE_ANIMATION(Dialga); +SINGLE_ANIMATION(Palkia); +SINGLE_ANIMATION(Heatran); +SINGLE_ANIMATION(Regigigas); +SINGLE_ANIMATION(Giratina); +SINGLE_ANIMATION(Cresselia); +SINGLE_ANIMATION(Phione); +SINGLE_ANIMATION(Manaphy); +SINGLE_ANIMATION(Darkrai); +SINGLE_ANIMATION(Shaymin); +SINGLE_ANIMATION(Arceus); #endif - #if P_GEN_5_POKEMON == TRUE -static const union AnimCmd *const sAnims_VICTINI[] = -{ - sAnim_GeneralFrame0, - sAnim_VICTINI_1, -}; - -static const union AnimCmd *const sAnims_SNIVY[] = -{ - sAnim_GeneralFrame0, - sAnim_SNIVY_1, -}; - -static const union AnimCmd *const sAnims_SERVINE[] = -{ - sAnim_GeneralFrame0, - sAnim_SERVINE_1, -}; - -static const union AnimCmd *const sAnims_SERPERIOR[] = -{ - sAnim_GeneralFrame0, - sAnim_SERPERIOR_1, - sAnim_SERPERIOR_2, -}; - -static const union AnimCmd *const sAnims_TEPIG[] = -{ - sAnim_GeneralFrame0, - sAnim_TEPIG_1, -}; - -static const union AnimCmd *const sAnims_PIGNITE[] = -{ - sAnim_GeneralFrame0, - sAnim_PIGNITE_1, -}; - -static const union AnimCmd *const sAnims_EMBOAR[] = -{ - sAnim_GeneralFrame0, - sAnim_EMBOAR_1, -}; - -static const union AnimCmd *const sAnims_OSHAWOTT[] = -{ - sAnim_GeneralFrame0, - sAnim_OSHAWOTT_1, -}; - -static const union AnimCmd *const sAnims_DEWOTT[] = -{ - sAnim_GeneralFrame0, - sAnim_DEWOTT_1, -}; - -static const union AnimCmd *const sAnims_SAMUROTT[] = -{ - sAnim_GeneralFrame0, - sAnim_SAMUROTT_1, -}; - -static const union AnimCmd *const sAnims_PATRAT[] = -{ - sAnim_GeneralFrame0, - sAnim_PATRAT_1, -}; - -static const union AnimCmd *const sAnims_WATCHOG[] = -{ - sAnim_GeneralFrame0, - sAnim_WATCHOG_1, -}; - -static const union AnimCmd *const sAnims_LILLIPUP[] = -{ - sAnim_GeneralFrame0, - sAnim_LILLIPUP_1, -}; - -static const union AnimCmd *const sAnims_HERDIER[] = -{ - sAnim_GeneralFrame0, - sAnim_HERDIER_1, -}; - -static const union AnimCmd *const sAnims_STOUTLAND[] = -{ - sAnim_GeneralFrame0, - sAnim_STOUTLAND_1, -}; - -static const union AnimCmd *const sAnims_PURRLOIN[] = -{ - sAnim_GeneralFrame0, - sAnim_PURRLOIN_1, -}; - -static const union AnimCmd *const sAnims_LIEPARD[] = -{ - sAnim_GeneralFrame0, - sAnim_LIEPARD_1, -}; - -static const union AnimCmd *const sAnims_PANSAGE[] = -{ - sAnim_GeneralFrame0, - sAnim_PANSAGE_1, -}; - -static const union AnimCmd *const sAnims_SIMISAGE[] = -{ - sAnim_GeneralFrame0, - sAnim_SIMISAGE_1, -}; - -static const union AnimCmd *const sAnims_PANSEAR[] = -{ - sAnim_GeneralFrame0, - sAnim_PANSEAR_1, -}; - -static const union AnimCmd *const sAnims_SIMISEAR[] = -{ - sAnim_GeneralFrame0, - sAnim_SIMISEAR_1, - sAnim_SIMISEAR_2, -}; - -static const union AnimCmd *const sAnims_PANPOUR[] = -{ - sAnim_GeneralFrame0, - sAnim_PANPOUR_1, -}; - -static const union AnimCmd *const sAnims_SIMIPOUR[] = -{ - sAnim_GeneralFrame0, - sAnim_SIMIPOUR_1, -}; - -static const union AnimCmd *const sAnims_MUNNA[] = -{ - sAnim_GeneralFrame0, - sAnim_MUNNA_1, -}; - -static const union AnimCmd *const sAnims_MUSHARNA[] = -{ - sAnim_GeneralFrame0, - sAnim_MUSHARNA_1, - sAnim_MUSHARNA_2, -}; - -static const union AnimCmd *const sAnims_PIDOVE[] = -{ - sAnim_GeneralFrame0, - sAnim_PIDOVE_1, -}; - -static const union AnimCmd *const sAnims_TRANQUILL[] = -{ - sAnim_GeneralFrame0, - sAnim_TRANQUILL_1, -}; - -static const union AnimCmd *const sAnims_UNFEZANT[] = -{ - sAnim_GeneralFrame0, - sAnim_UNFEZANT_1, -}; - -static const union AnimCmd *const sAnims_BLITZLE[] = -{ - sAnim_GeneralFrame0, - sAnim_BLITZLE_1, -}; - -static const union AnimCmd *const sAnims_ZEBSTRIKA[] = -{ - sAnim_GeneralFrame0, - sAnim_ZEBSTRIKA_1, -}; - -static const union AnimCmd *const sAnims_ROGGENROLA[] = -{ - sAnim_GeneralFrame0, - sAnim_ROGGENROLA_1, -}; - -static const union AnimCmd *const sAnims_BOLDORE[] = -{ - sAnim_GeneralFrame0, - sAnim_BOLDORE_1, -}; - -static const union AnimCmd *const sAnims_GIGALITH[] = -{ - sAnim_GeneralFrame0, - sAnim_GIGALITH_1, -}; - -static const union AnimCmd *const sAnims_WOOBAT[] = -{ - sAnim_GeneralFrame0, - sAnim_WOOBAT_1, -}; - -static const union AnimCmd *const sAnims_SWOOBAT[] = -{ - sAnim_GeneralFrame0, - sAnim_SWOOBAT_1, -}; - -static const union AnimCmd *const sAnims_DRILBUR[] = -{ - sAnim_GeneralFrame0, - sAnim_DRILBUR_1, - sAnim_DRILBUR_2, -}; - -static const union AnimCmd *const sAnims_EXCADRILL[] = -{ - sAnim_GeneralFrame0, - sAnim_EXCADRILL_1, -}; - -static const union AnimCmd *const sAnims_AUDINO[] = -{ - sAnim_GeneralFrame0, - sAnim_AUDINO_1, -}; - -static const union AnimCmd *const sAnims_TIMBURR[] = -{ - sAnim_GeneralFrame0, - sAnim_TIMBURR_1, -}; - -static const union AnimCmd *const sAnims_GURDURR[] = -{ - sAnim_GeneralFrame0, - sAnim_GURDURR_1, -}; - -static const union AnimCmd *const sAnims_CONKELDURR[] = -{ - sAnim_GeneralFrame0, - sAnim_CONKELDURR_1, -}; - -static const union AnimCmd *const sAnims_TYMPOLE[] = -{ - sAnim_GeneralFrame0, - sAnim_TYMPOLE_1, -}; - -static const union AnimCmd *const sAnims_PALPITOAD[] = -{ - sAnim_GeneralFrame0, - sAnim_PALPITOAD_1, -}; - -static const union AnimCmd *const sAnims_SEISMITOAD[] = -{ - sAnim_GeneralFrame0, - sAnim_SEISMITOAD_1, -}; - -static const union AnimCmd *const sAnims_THROH[] = -{ - sAnim_GeneralFrame0, - sAnim_THROH_1, -}; - -static const union AnimCmd *const sAnims_SAWK[] = -{ - sAnim_GeneralFrame0, - sAnim_SAWK_1, -}; - -static const union AnimCmd *const sAnims_SEWADDLE[] = -{ - sAnim_GeneralFrame0, - sAnim_SEWADDLE_1, - sAnim_SEWADDLE_2, -}; - -static const union AnimCmd *const sAnims_SWADLOON[] = -{ - sAnim_GeneralFrame0, - sAnim_SWADLOON_1, -}; - -static const union AnimCmd *const sAnims_LEAVANNY[] = -{ - sAnim_GeneralFrame0, - sAnim_LEAVANNY_1, -}; - -static const union AnimCmd *const sAnims_VENIPEDE[] = -{ - sAnim_GeneralFrame0, - sAnim_VENIPEDE_1, -}; - -static const union AnimCmd *const sAnims_WHIRLIPEDE[] = -{ - sAnim_GeneralFrame0, - sAnim_WHIRLIPEDE_1, -}; - -static const union AnimCmd *const sAnims_SCOLIPEDE[] = -{ - sAnim_GeneralFrame0, - sAnim_SCOLIPEDE_1, -}; - -static const union AnimCmd *const sAnims_COTTONEE[] = -{ - sAnim_GeneralFrame0, - sAnim_COTTONEE_1, -}; - -static const union AnimCmd *const sAnims_WHIMSICOTT[] = -{ - sAnim_GeneralFrame0, - sAnim_WHIMSICOTT_1, -}; - -static const union AnimCmd *const sAnims_PETILIL[] = -{ - sAnim_GeneralFrame0, - sAnim_PETILIL_1, -}; - -static const union AnimCmd *const sAnims_LILLIGANT[] = -{ - sAnim_GeneralFrame0, - sAnim_LILLIGANT_1, -}; - -static const union AnimCmd *const sAnims_BASCULIN[] = -{ - sAnim_GeneralFrame0, - sAnim_BASCULIN_1, -}; - -static const union AnimCmd *const sAnims_SANDILE[] = -{ - sAnim_GeneralFrame0, - sAnim_SANDILE_1, -}; - -static const union AnimCmd *const sAnims_KROKOROK[] = -{ - sAnim_GeneralFrame0, - sAnim_KROKOROK_1, -}; - -static const union AnimCmd *const sAnims_KROOKODILE[] = -{ - sAnim_GeneralFrame0, - sAnim_KROOKODILE_1, - sAnim_KROOKODILE_2, -}; - -static const union AnimCmd *const sAnims_DARUMAKA[] = -{ - sAnim_GeneralFrame0, - sAnim_DARUMAKA_1, -}; - -static const union AnimCmd *const sAnims_DARMANITAN[] = -{ - sAnim_GeneralFrame0, - sAnim_DARMANITAN_1, -}; - -static const union AnimCmd *const sAnims_MARACTUS[] = -{ - sAnim_GeneralFrame0, - sAnim_MARACTUS_1, -}; - -static const union AnimCmd *const sAnims_DWEBBLE[] = -{ - sAnim_GeneralFrame0, - sAnim_DWEBBLE_1, -}; - -static const union AnimCmd *const sAnims_CRUSTLE[] = -{ - sAnim_GeneralFrame0, - sAnim_CRUSTLE_1, -}; - -static const union AnimCmd *const sAnims_SCRAGGY[] = -{ - sAnim_GeneralFrame0, - sAnim_SCRAGGY_1, -}; - -static const union AnimCmd *const sAnims_SCRAFTY[] = -{ - sAnim_GeneralFrame0, - sAnim_SCRAFTY_1, -}; - -static const union AnimCmd *const sAnims_SIGILYPH[] = -{ - sAnim_GeneralFrame0, - sAnim_SIGILYPH_1, -}; - -static const union AnimCmd *const sAnims_YAMASK[] = -{ - sAnim_GeneralFrame0, - sAnim_YAMASK_1, -}; - -static const union AnimCmd *const sAnims_COFAGRIGUS[] = -{ - sAnim_GeneralFrame0, - sAnim_COFAGRIGUS_1, -}; - -static const union AnimCmd *const sAnims_TIRTOUGA[] = -{ - sAnim_GeneralFrame0, - sAnim_TIRTOUGA_1, -}; - -static const union AnimCmd *const sAnims_CARRACOSTA[] = -{ - sAnim_GeneralFrame0, - sAnim_CARRACOSTA_1, -}; - -static const union AnimCmd *const sAnims_ARCHEN[] = -{ - sAnim_GeneralFrame0, - sAnim_ARCHEN_1, -}; - -static const union AnimCmd *const sAnims_ARCHEOPS[] = -{ - sAnim_GeneralFrame0, - sAnim_ARCHEOPS_1, -}; - -static const union AnimCmd *const sAnims_TRUBBISH[] = -{ - sAnim_GeneralFrame0, - sAnim_TRUBBISH_1, -}; - -static const union AnimCmd *const sAnims_GARBODOR[] = -{ - sAnim_GeneralFrame0, - sAnim_GARBODOR_1, -}; - -static const union AnimCmd *const sAnims_ZORUA[] = -{ - sAnim_GeneralFrame0, - sAnim_ZORUA_1, -}; - -static const union AnimCmd *const sAnims_ZOROARK[] = -{ - sAnim_GeneralFrame0, - sAnim_ZOROARK_1, -}; - -static const union AnimCmd *const sAnims_MINCCINO[] = -{ - sAnim_GeneralFrame0, - sAnim_MINCCINO_1, -}; - -static const union AnimCmd *const sAnims_CINCCINO[] = -{ - sAnim_GeneralFrame0, - sAnim_CINCCINO_1, -}; - -static const union AnimCmd *const sAnims_GOTHITA[] = -{ - sAnim_GeneralFrame0, - sAnim_GOTHITA_1, -}; - -static const union AnimCmd *const sAnims_GOTHORITA[] = -{ - sAnim_GeneralFrame0, - sAnim_GOTHORITA_1, - sAnim_GOTHORITA_2, -}; - -static const union AnimCmd *const sAnims_GOTHITELLE[] = -{ - sAnim_GeneralFrame0, - sAnim_GOTHITELLE_1, -}; - -static const union AnimCmd *const sAnims_SOLOSIS[] = -{ - sAnim_GeneralFrame0, - sAnim_SOLOSIS_1, -}; - -static const union AnimCmd *const sAnims_DUOSION[] = -{ - sAnim_GeneralFrame0, - sAnim_DUOSION_1, -}; - -static const union AnimCmd *const sAnims_REUNICLUS[] = -{ - sAnim_GeneralFrame0, - sAnim_REUNICLUS_1, -}; - -static const union AnimCmd *const sAnims_DUCKLETT[] = -{ - sAnim_GeneralFrame0, - sAnim_DUCKLETT_1, -}; - -static const union AnimCmd *const sAnims_SWANNA[] = -{ - sAnim_GeneralFrame0, - sAnim_SWANNA_1, -}; - -static const union AnimCmd *const sAnims_VANILLITE[] = -{ - sAnim_GeneralFrame0, - sAnim_VANILLITE_1, -}; - -static const union AnimCmd *const sAnims_VANILLISH[] = -{ - sAnim_GeneralFrame0, - sAnim_VANILLISH_1, -}; - -static const union AnimCmd *const sAnims_VANILLUXE[] = -{ - sAnim_GeneralFrame0, - sAnim_VANILLUXE_1, -}; - -static const union AnimCmd *const sAnims_DEERLING[] = -{ - sAnim_GeneralFrame0, - sAnim_DEERLING_1, -}; - -static const union AnimCmd *const sAnims_SAWSBUCK[] = -{ - sAnim_GeneralFrame0, - sAnim_SAWSBUCK_1, -}; - -static const union AnimCmd *const sAnims_EMOLGA[] = -{ - sAnim_GeneralFrame0, - sAnim_EMOLGA_1, -}; - -static const union AnimCmd *const sAnims_KARRABLAST[] = -{ - sAnim_GeneralFrame0, - sAnim_KARRABLAST_1, -}; - -static const union AnimCmd *const sAnims_ESCAVALIER[] = -{ - sAnim_GeneralFrame0, - sAnim_ESCAVALIER_1, -}; - -static const union AnimCmd *const sAnims_FOONGUS[] = -{ - sAnim_GeneralFrame0, - sAnim_FOONGUS_1, - sAnim_FOONGUS_2, -}; - -static const union AnimCmd *const sAnims_AMOONGUSS[] = -{ - sAnim_GeneralFrame0, - sAnim_AMOONGUSS_1, -}; - -static const union AnimCmd *const sAnims_FRILLISH[] = -{ - sAnim_GeneralFrame0, - sAnim_FRILLISH_1, -}; - -static const union AnimCmd *const sAnims_JELLICENT[] = -{ - sAnim_GeneralFrame0, - sAnim_JELLICENT_1, -}; - -static const union AnimCmd *const sAnims_ALOMOMOLA[] = -{ - sAnim_GeneralFrame0, - sAnim_ALOMOMOLA_1, -}; - -static const union AnimCmd *const sAnims_JOLTIK[] = -{ - sAnim_GeneralFrame0, - sAnim_JOLTIK_1, -}; - -static const union AnimCmd *const sAnims_GALVANTULA[] = -{ - sAnim_GeneralFrame0, - sAnim_GALVANTULA_1, -}; - -static const union AnimCmd *const sAnims_FERROSEED[] = -{ - sAnim_GeneralFrame0, - sAnim_FERROSEED_1, -}; - -static const union AnimCmd *const sAnims_FERROTHORN[] = -{ - sAnim_GeneralFrame0, - sAnim_FERROTHORN_1, - sAnim_FERROTHORN_2, -}; - -static const union AnimCmd *const sAnims_KLINK[] = -{ - sAnim_GeneralFrame0, - sAnim_KLINK_1, -}; - -static const union AnimCmd *const sAnims_KLANG[] = -{ - sAnim_GeneralFrame0, - sAnim_KLANG_1, -}; - -static const union AnimCmd *const sAnims_KLINKLANG[] = -{ - sAnim_GeneralFrame0, - sAnim_KLINKLANG_1, -}; - -static const union AnimCmd *const sAnims_TYNAMO[] = -{ - sAnim_GeneralFrame0, - sAnim_TYNAMO_1, -}; - -static const union AnimCmd *const sAnims_EELEKTRIK[] = -{ - sAnim_GeneralFrame0, - sAnim_EELEKTRIK_1, -}; - -static const union AnimCmd *const sAnims_EELEKTROSS[] = -{ - sAnim_GeneralFrame0, - sAnim_EELEKTROSS_1, -}; - -static const union AnimCmd *const sAnims_ELGYEM[] = -{ - sAnim_GeneralFrame0, - sAnim_ELGYEM_1, -}; - -static const union AnimCmd *const sAnims_BEHEEYEM[] = -{ - sAnim_GeneralFrame0, - sAnim_BEHEEYEM_1, -}; - -static const union AnimCmd *const sAnims_LITWICK[] = -{ - sAnim_GeneralFrame0, - sAnim_LITWICK_1, -}; - -static const union AnimCmd *const sAnims_LAMPENT[] = -{ - sAnim_GeneralFrame0, - sAnim_LAMPENT_1, -}; - -static const union AnimCmd *const sAnims_CHANDELURE[] = -{ - sAnim_GeneralFrame0, - sAnim_CHANDELURE_1, -}; - -static const union AnimCmd *const sAnims_AXEW[] = -{ - sAnim_GeneralFrame0, - sAnim_AXEW_1, -}; - -static const union AnimCmd *const sAnims_FRAXURE[] = -{ - sAnim_GeneralFrame0, - sAnim_FRAXURE_1, -}; - -static const union AnimCmd *const sAnims_HAXORUS[] = -{ - sAnim_GeneralFrame0, - sAnim_HAXORUS_1, -}; - -static const union AnimCmd *const sAnims_CUBCHOO[] = -{ - sAnim_GeneralFrame0, - sAnim_CUBCHOO_1, -}; - -static const union AnimCmd *const sAnims_BEARTIC[] = -{ - sAnim_GeneralFrame0, - sAnim_BEARTIC_1, -}; - -static const union AnimCmd *const sAnims_CRYOGONAL[] = -{ - sAnim_GeneralFrame0, - sAnim_CRYOGONAL_1, - sAnim_CRYOGONAL_2, -}; - -static const union AnimCmd *const sAnims_SHELMET[] = -{ - sAnim_GeneralFrame0, - sAnim_SHELMET_1, -}; - -static const union AnimCmd *const sAnims_ACCELGOR[] = -{ - sAnim_GeneralFrame0, - sAnim_ACCELGOR_1, -}; - -static const union AnimCmd *const sAnims_STUNFISK[] = -{ - sAnim_GeneralFrame0, - sAnim_STUNFISK_1, -}; - -static const union AnimCmd *const sAnims_MIENFOO[] = -{ - sAnim_GeneralFrame0, - sAnim_MIENFOO_1, -}; - -static const union AnimCmd *const sAnims_MIENSHAO[] = -{ - sAnim_GeneralFrame0, - sAnim_MIENSHAO_1, -}; - -static const union AnimCmd *const sAnims_DRUDDIGON[] = -{ - sAnim_GeneralFrame0, - sAnim_DRUDDIGON_1, -}; - -static const union AnimCmd *const sAnims_GOLETT[] = -{ - sAnim_GeneralFrame0, - sAnim_GOLETT_1, -}; - -static const union AnimCmd *const sAnims_GOLURK[] = -{ - sAnim_GeneralFrame0, - sAnim_GOLURK_1, -}; - -static const union AnimCmd *const sAnims_PAWNIARD[] = -{ - sAnim_GeneralFrame0, - sAnim_PAWNIARD_1, -}; - -static const union AnimCmd *const sAnims_BISHARP[] = -{ - sAnim_GeneralFrame0, - sAnim_BISHARP_1, -}; - -static const union AnimCmd *const sAnims_BOUFFALANT[] = -{ - sAnim_GeneralFrame0, - sAnim_BOUFFALANT_1, -}; - -static const union AnimCmd *const sAnims_RUFFLET[] = -{ - sAnim_GeneralFrame0, - sAnim_RUFFLET_1, -}; - -static const union AnimCmd *const sAnims_BRAVIARY[] = -{ - sAnim_GeneralFrame0, - sAnim_BRAVIARY_1, -}; - -static const union AnimCmd *const sAnims_VULLABY[] = -{ - sAnim_GeneralFrame0, - sAnim_VULLABY_1, -}; - -static const union AnimCmd *const sAnims_MANDIBUZZ[] = -{ - sAnim_GeneralFrame0, - sAnim_MANDIBUZZ_1, -}; - -static const union AnimCmd *const sAnims_HEATMOR[] = -{ - sAnim_GeneralFrame0, - sAnim_HEATMOR_1, -}; - -static const union AnimCmd *const sAnims_DURANT[] = -{ - sAnim_GeneralFrame0, - sAnim_DURANT_1, -}; - -static const union AnimCmd *const sAnims_DEINO[] = -{ - sAnim_GeneralFrame0, - sAnim_DEINO_1, -}; - -static const union AnimCmd *const sAnims_ZWEILOUS[] = -{ - sAnim_GeneralFrame0, - sAnim_ZWEILOUS_1, -}; - -static const union AnimCmd *const sAnims_HYDREIGON[] = -{ - sAnim_GeneralFrame0, - sAnim_HYDREIGON_1, -}; - -static const union AnimCmd *const sAnims_LARVESTA[] = -{ - sAnim_GeneralFrame0, - sAnim_LARVESTA_1, -}; - -static const union AnimCmd *const sAnims_VOLCARONA[] = -{ - sAnim_GeneralFrame0, - sAnim_VOLCARONA_1, -}; - -static const union AnimCmd *const sAnims_COBALION[] = -{ - sAnim_GeneralFrame0, - sAnim_COBALION_1, -}; - -static const union AnimCmd *const sAnims_TERRAKION[] = -{ - sAnim_GeneralFrame0, - sAnim_TERRAKION_1, - sAnim_TERRAKION_2, -}; - -static const union AnimCmd *const sAnims_VIRIZION[] = -{ - sAnim_GeneralFrame0, - sAnim_VIRIZION_1, -}; - -static const union AnimCmd *const sAnims_TORNADUS[] = -{ - sAnim_GeneralFrame0, - sAnim_TORNADUS_1, -}; - -static const union AnimCmd *const sAnims_THUNDURUS[] = -{ - sAnim_GeneralFrame0, - sAnim_THUNDURUS_1, -}; - -static const union AnimCmd *const sAnims_RESHIRAM[] = -{ - sAnim_GeneralFrame0, - sAnim_RESHIRAM_1, -}; - -static const union AnimCmd *const sAnims_ZEKROM[] = -{ - sAnim_GeneralFrame0, - sAnim_ZEKROM_1, -}; - -static const union AnimCmd *const sAnims_LANDORUS[] = -{ - sAnim_GeneralFrame0, - sAnim_LANDORUS_1, -}; - -static const union AnimCmd *const sAnims_KYUREM[] = -{ - sAnim_GeneralFrame0, - sAnim_KYUREM_1, -}; - -static const union AnimCmd *const sAnims_KELDEO[] = -{ - sAnim_GeneralFrame0, - sAnim_KELDEO_1, -}; - -static const union AnimCmd *const sAnims_MELOETTA[] = -{ - sAnim_GeneralFrame0, - sAnim_MELOETTA_1, - sAnim_MELOETTA_2, -}; - -static const union AnimCmd *const sAnims_GENESECT[] = -{ - sAnim_GeneralFrame0, - sAnim_GENESECT_1, -}; +SINGLE_ANIMATION(Victini); +SINGLE_ANIMATION(Snivy); +SINGLE_ANIMATION(Servine); +DOUBLE_ANIMATION(Serperior); +SINGLE_ANIMATION(Tepig); +SINGLE_ANIMATION(Pignite); +SINGLE_ANIMATION(Emboar); +SINGLE_ANIMATION(Oshawott); +SINGLE_ANIMATION(Dewott); +SINGLE_ANIMATION(Samurott); +SINGLE_ANIMATION(Patrat); +SINGLE_ANIMATION(Watchog); +SINGLE_ANIMATION(Lillipup); +SINGLE_ANIMATION(Herdier); +SINGLE_ANIMATION(Stoutland); +SINGLE_ANIMATION(Purrloin); +SINGLE_ANIMATION(Liepard); +SINGLE_ANIMATION(Pansage); +SINGLE_ANIMATION(Simisage); +SINGLE_ANIMATION(Pansear); +DOUBLE_ANIMATION(Simisear); +SINGLE_ANIMATION(Panpour); +SINGLE_ANIMATION(Simipour); +SINGLE_ANIMATION(Munna); +DOUBLE_ANIMATION(Musharna); +SINGLE_ANIMATION(Pidove); +SINGLE_ANIMATION(Tranquill); +SINGLE_ANIMATION(Unfezant); +SINGLE_ANIMATION(Blitzle); +SINGLE_ANIMATION(Zebstrika); +SINGLE_ANIMATION(Roggenrola); +SINGLE_ANIMATION(Boldore); +SINGLE_ANIMATION(Gigalith); +SINGLE_ANIMATION(Woobat); +SINGLE_ANIMATION(Swoobat); +DOUBLE_ANIMATION(Drilbur); +SINGLE_ANIMATION(Excadrill); +SINGLE_ANIMATION(Audino); +SINGLE_ANIMATION(Timburr); +SINGLE_ANIMATION(Gurdurr); +SINGLE_ANIMATION(Conkeldurr); +SINGLE_ANIMATION(Tympole); +SINGLE_ANIMATION(Palpitoad); +SINGLE_ANIMATION(Seismitoad); +SINGLE_ANIMATION(Throh); +SINGLE_ANIMATION(Sawk); +DOUBLE_ANIMATION(Sewaddle); +SINGLE_ANIMATION(Swadloon); +SINGLE_ANIMATION(Leavanny); +SINGLE_ANIMATION(Venipede); +SINGLE_ANIMATION(Whirlipede); +SINGLE_ANIMATION(Scolipede); +SINGLE_ANIMATION(Cottonee); +SINGLE_ANIMATION(Whimsicott); +SINGLE_ANIMATION(Petilil); +SINGLE_ANIMATION(Lilligant); +SINGLE_ANIMATION(Basculin); +SINGLE_ANIMATION(Sandile); +SINGLE_ANIMATION(Krokorok); +DOUBLE_ANIMATION(Krookodile); +SINGLE_ANIMATION(Darumaka); +SINGLE_ANIMATION(Darmanitan); +SINGLE_ANIMATION(Maractus); +SINGLE_ANIMATION(Dwebble); +SINGLE_ANIMATION(Crustle); +SINGLE_ANIMATION(Scraggy); +SINGLE_ANIMATION(Scrafty); +SINGLE_ANIMATION(Sigilyph); +SINGLE_ANIMATION(Yamask); +SINGLE_ANIMATION(Cofagrigus); +SINGLE_ANIMATION(Tirtouga); +SINGLE_ANIMATION(Carracosta); +SINGLE_ANIMATION(Archen); +SINGLE_ANIMATION(Archeops); +SINGLE_ANIMATION(Trubbish); +SINGLE_ANIMATION(Garbodor); +SINGLE_ANIMATION(Zorua); +SINGLE_ANIMATION(Zoroark); +SINGLE_ANIMATION(Minccino); +SINGLE_ANIMATION(Cinccino); +SINGLE_ANIMATION(Gothita); +DOUBLE_ANIMATION(Gothorita); +SINGLE_ANIMATION(Gothitelle); +SINGLE_ANIMATION(Solosis); +SINGLE_ANIMATION(Duosion); +SINGLE_ANIMATION(Reuniclus); +SINGLE_ANIMATION(Ducklett); +SINGLE_ANIMATION(Swanna); +SINGLE_ANIMATION(Vanillite); +SINGLE_ANIMATION(Vanillish); +SINGLE_ANIMATION(Vanilluxe); +SINGLE_ANIMATION(Deerling); +SINGLE_ANIMATION(Sawsbuck); +SINGLE_ANIMATION(Emolga); +SINGLE_ANIMATION(Karrablast); +SINGLE_ANIMATION(Escavalier); +DOUBLE_ANIMATION(Foongus); +SINGLE_ANIMATION(Amoonguss); +SINGLE_ANIMATION(Frillish); +SINGLE_ANIMATION(Jellicent); +SINGLE_ANIMATION(Alomomola); +SINGLE_ANIMATION(Joltik); +SINGLE_ANIMATION(Galvantula); +SINGLE_ANIMATION(Ferroseed); +DOUBLE_ANIMATION(Ferrothorn); +SINGLE_ANIMATION(Klink); +SINGLE_ANIMATION(Klang); +SINGLE_ANIMATION(Klinklang); +SINGLE_ANIMATION(Tynamo); +SINGLE_ANIMATION(Eelektrik); +SINGLE_ANIMATION(Eelektross); +SINGLE_ANIMATION(Elgyem); +SINGLE_ANIMATION(Beheeyem); +SINGLE_ANIMATION(Litwick); +SINGLE_ANIMATION(Lampent); +SINGLE_ANIMATION(Chandelure); +SINGLE_ANIMATION(Axew); +SINGLE_ANIMATION(Fraxure); +SINGLE_ANIMATION(Haxorus); +SINGLE_ANIMATION(Cubchoo); +SINGLE_ANIMATION(Beartic); +DOUBLE_ANIMATION(Cryogonal); +SINGLE_ANIMATION(Shelmet); +SINGLE_ANIMATION(Accelgor); +SINGLE_ANIMATION(Stunfisk); +SINGLE_ANIMATION(Mienfoo); +SINGLE_ANIMATION(Mienshao); +SINGLE_ANIMATION(Druddigon); +SINGLE_ANIMATION(Golett); +SINGLE_ANIMATION(Golurk); +SINGLE_ANIMATION(Pawniard); +SINGLE_ANIMATION(Bisharp); +SINGLE_ANIMATION(Bouffalant); +SINGLE_ANIMATION(Rufflet); +SINGLE_ANIMATION(Braviary); +SINGLE_ANIMATION(Vullaby); +SINGLE_ANIMATION(Mandibuzz); +SINGLE_ANIMATION(Heatmor); +SINGLE_ANIMATION(Durant); +SINGLE_ANIMATION(Deino); +SINGLE_ANIMATION(Zweilous); +SINGLE_ANIMATION(Hydreigon); +SINGLE_ANIMATION(Larvesta); +SINGLE_ANIMATION(Volcarona); +SINGLE_ANIMATION(Cobalion); +DOUBLE_ANIMATION(Terrakion); +SINGLE_ANIMATION(Virizion); +SINGLE_ANIMATION(Tornadus); +SINGLE_ANIMATION(Thundurus); +SINGLE_ANIMATION(Reshiram); +SINGLE_ANIMATION(Zekrom); +SINGLE_ANIMATION(Landorus); +SINGLE_ANIMATION(Kyurem); +SINGLE_ANIMATION(Keldeo); +DOUBLE_ANIMATION(Meloetta); +SINGLE_ANIMATION(Genesect); #endif - #if P_GEN_6_POKEMON == TRUE -static const union AnimCmd *const sAnims_CHESPIN[] = -{ - sAnim_GeneralFrame0, - sAnim_CHESPIN_1, -}; - -static const union AnimCmd *const sAnims_QUILLADIN[] = -{ - sAnim_GeneralFrame0, - sAnim_QUILLADIN_1, - sAnim_QUILLADIN_2, -}; - -static const union AnimCmd *const sAnims_CHESNAUGHT[] = -{ - sAnim_GeneralFrame0, - sAnim_CHESNAUGHT_1, -}; - -static const union AnimCmd *const sAnims_FENNEKIN[] = -{ - sAnim_GeneralFrame0, - sAnim_FENNEKIN_1, -}; - -static const union AnimCmd *const sAnims_BRAIXEN[] = -{ - sAnim_GeneralFrame0, - sAnim_BRAIXEN_1, -}; - -static const union AnimCmd *const sAnims_DELPHOX[] = -{ - sAnim_GeneralFrame0, - sAnim_DELPHOX_1, -}; - -static const union AnimCmd *const sAnims_FROAKIE[] = -{ - sAnim_GeneralFrame0, - sAnim_FROAKIE_1, -}; - -static const union AnimCmd *const sAnims_FROGADIER[] = -{ - sAnim_GeneralFrame0, - sAnim_FROGADIER_1, -}; - -static const union AnimCmd *const sAnims_GRENINJA[] = -{ - sAnim_GeneralFrame0, - sAnim_GRENINJA_1, -}; - -static const union AnimCmd *const sAnims_GRENINJA_ASH[] ={ - sAnim_GeneralFrame0, - sAnim_GRENINJA_ASH_1, -}; - -static const union AnimCmd *const sAnims_BUNNELBY[] = -{ - sAnim_GeneralFrame0, - sAnim_BUNNELBY_1, -}; - -static const union AnimCmd *const sAnims_DIGGERSBY[] = -{ - sAnim_GeneralFrame0, - sAnim_DIGGERSBY_1, -}; - -static const union AnimCmd *const sAnims_FLETCHLING[] = -{ - sAnim_GeneralFrame0, - sAnim_FLETCHLING_1, -}; - -static const union AnimCmd *const sAnims_FLETCHINDER[] = -{ - sAnim_GeneralFrame0, - sAnim_FLETCHINDER_1, -}; - -static const union AnimCmd *const sAnims_TALONFLAME[] = -{ - sAnim_GeneralFrame0, - sAnim_TALONFLAME_1, - sAnim_TALONFLAME_2, -}; - -static const union AnimCmd *const sAnims_SCATTERBUG[] = -{ - sAnim_GeneralFrame0, - sAnim_SCATTERBUG_1, -}; - -static const union AnimCmd *const sAnims_SPEWPA[] = -{ - sAnim_GeneralFrame0, - sAnim_SPEWPA_1, -}; - -static const union AnimCmd *const sAnims_VIVILLON[] = -{ - sAnim_GeneralFrame0, - sAnim_VIVILLON_1, -}; - -static const union AnimCmd *const sAnims_LITLEO[] = -{ - sAnim_GeneralFrame0, - sAnim_LITLEO_1, -}; - -static const union AnimCmd *const sAnims_PYROAR[] = -{ - sAnim_GeneralFrame0, - sAnim_PYROAR_1, -}; - -static const union AnimCmd *const sAnims_FLABEBE[] = -{ - sAnim_GeneralFrame0, - sAnim_FLABEBE_1, - sAnim_FLABEBE_2, -}; - -static const union AnimCmd *const sAnims_FLOETTE[] = -{ - sAnim_GeneralFrame0, - sAnim_FLOETTE_1, -}; - -static const union AnimCmd *const sAnims_FLORGES[] = -{ - sAnim_GeneralFrame0, - sAnim_FLORGES_1, - sAnim_FLORGES_2, -}; - -static const union AnimCmd *const sAnims_SKIDDO[] = -{ - sAnim_GeneralFrame0, - sAnim_SKIDDO_1, -}; - -static const union AnimCmd *const sAnims_GOGOAT[] = -{ - sAnim_GeneralFrame0, - sAnim_GOGOAT_1, -}; - -static const union AnimCmd *const sAnims_PANCHAM[] = -{ - sAnim_GeneralFrame0, - sAnim_PANCHAM_1, -}; - -static const union AnimCmd *const sAnims_PANGORO[] = -{ - sAnim_GeneralFrame0, - sAnim_PANGORO_1, -}; - -static const union AnimCmd *const sAnims_FURFROU[] = -{ - sAnim_GeneralFrame0, - sAnim_FURFROU_1, -}; - -static const union AnimCmd *const sAnims_ESPURR[] = -{ - sAnim_GeneralFrame0, - sAnim_ESPURR_1, -}; - -static const union AnimCmd *const sAnims_MEOWSTIC[] = -{ - sAnim_GeneralFrame0, - sAnim_MEOWSTIC_1, -}; - -static const union AnimCmd *const sAnims_HONEDGE[] = -{ - sAnim_GeneralFrame0, - sAnim_HONEDGE_1, -}; - -static const union AnimCmd *const sAnims_DOUBLADE[] = -{ - sAnim_GeneralFrame0, - sAnim_DOUBLADE_1, - sAnim_DOUBLADE_2, -}; - -static const union AnimCmd *const sAnims_AEGISLASH[] = -{ - sAnim_GeneralFrame0, - sAnim_AEGISLASH_1, -}; - -static const union AnimCmd *const sAnims_SPRITZEE[] = -{ - sAnim_GeneralFrame0, - sAnim_SPRITZEE_1, -}; - -static const union AnimCmd *const sAnims_AROMATISSE[] = -{ - sAnim_GeneralFrame0, - sAnim_AROMATISSE_1, -}; - -static const union AnimCmd *const sAnims_SWIRLIX[] = -{ - sAnim_GeneralFrame0, - sAnim_SWIRLIX_1, -}; - -static const union AnimCmd *const sAnims_SLURPUFF[] = -{ - sAnim_GeneralFrame0, - sAnim_SLURPUFF_1, -}; - -static const union AnimCmd *const sAnims_INKAY[] = -{ - sAnim_GeneralFrame0, - sAnim_INKAY_1, -}; - -static const union AnimCmd *const sAnims_MALAMAR[] = -{ - sAnim_GeneralFrame0, - sAnim_MALAMAR_1, -}; - -static const union AnimCmd *const sAnims_BINACLE[] = -{ - sAnim_GeneralFrame0, - sAnim_BINACLE_1, -}; - -static const union AnimCmd *const sAnims_BARBARACLE[] = -{ - sAnim_GeneralFrame0, - sAnim_BARBARACLE_1, -}; - -static const union AnimCmd *const sAnims_SKRELP[] = -{ - sAnim_GeneralFrame0, - sAnim_SKRELP_1, -}; - -static const union AnimCmd *const sAnims_DRAGALGE[] = -{ - sAnim_GeneralFrame0, - sAnim_DRAGALGE_1, -}; - -static const union AnimCmd *const sAnims_CLAUNCHER[] = -{ - sAnim_GeneralFrame0, - sAnim_CLAUNCHER_1, -}; - -static const union AnimCmd *const sAnims_CLAWITZER[] = -{ - sAnim_GeneralFrame0, - sAnim_CLAWITZER_1, -}; - -static const union AnimCmd *const sAnims_HELIOPTILE[] = -{ - sAnim_GeneralFrame0, - sAnim_HELIOPTILE_1, -}; - -static const union AnimCmd *const sAnims_HELIOLISK[] = -{ - sAnim_GeneralFrame0, - sAnim_HELIOLISK_1, -}; - -static const union AnimCmd *const sAnims_TYRUNT[] = -{ - sAnim_GeneralFrame0, - sAnim_TYRUNT_1, -}; - -static const union AnimCmd *const sAnims_TYRANTRUM[] = -{ - sAnim_GeneralFrame0, - sAnim_TYRANTRUM_1, -}; - -static const union AnimCmd *const sAnims_AMAURA[] = -{ - sAnim_GeneralFrame0, - sAnim_AMAURA_1, -}; - -static const union AnimCmd *const sAnims_AURORUS[] = -{ - sAnim_GeneralFrame0, - sAnim_AURORUS_1, -}; - -static const union AnimCmd *const sAnims_SYLVEON[] = -{ - sAnim_GeneralFrame0, - sAnim_SYLVEON_1, -}; - -static const union AnimCmd *const sAnims_HAWLUCHA[] = -{ - sAnim_GeneralFrame0, - sAnim_HAWLUCHA_1, -}; - -static const union AnimCmd *const sAnims_DEDENNE[] = -{ - sAnim_GeneralFrame0, - sAnim_DEDENNE_1, -}; - -static const union AnimCmd *const sAnims_CARBINK[] = -{ - sAnim_GeneralFrame0, - sAnim_CARBINK_1, -}; - -static const union AnimCmd *const sAnims_GOOMY[] = -{ - sAnim_GeneralFrame0, - sAnim_GOOMY_1, -}; - -static const union AnimCmd *const sAnims_SLIGGOO[] = -{ - sAnim_GeneralFrame0, - sAnim_SLIGGOO_1, -}; - -static const union AnimCmd *const sAnims_GOODRA[] = -{ - sAnim_GeneralFrame0, - sAnim_GOODRA_1, -}; - -static const union AnimCmd *const sAnims_KLEFKI[] = -{ - sAnim_GeneralFrame0, - sAnim_KLEFKI_1, -}; - -static const union AnimCmd *const sAnims_PHANTUMP[] = -{ - sAnim_GeneralFrame0, - sAnim_PHANTUMP_1, -}; - -static const union AnimCmd *const sAnims_TREVENANT[] = -{ - sAnim_GeneralFrame0, - sAnim_TREVENANT_1, -}; - -static const union AnimCmd *const sAnims_PUMPKABOO[] = -{ - sAnim_GeneralFrame0, - sAnim_PUMPKABOO_1, -}; - -static const union AnimCmd *const sAnims_GOURGEIST[] = -{ - sAnim_GeneralFrame0, - sAnim_GOURGEIST_1, -}; - -static const union AnimCmd *const sAnims_BERGMITE[] = -{ - sAnim_GeneralFrame0, - sAnim_BERGMITE_1, - sAnim_BERGMITE_2, -}; - -static const union AnimCmd *const sAnims_AVALUGG[] = -{ - sAnim_GeneralFrame0, - sAnim_AVALUGG_1, -}; - -static const union AnimCmd *const sAnims_NOIBAT[] = -{ - sAnim_GeneralFrame0, - sAnim_NOIBAT_1, -}; - -static const union AnimCmd *const sAnims_NOIVERN[] = -{ - sAnim_GeneralFrame0, - sAnim_NOIVERN_1, -}; - -static const union AnimCmd *const sAnims_XERNEAS[] = -{ - sAnim_GeneralFrame0, - sAnim_XERNEAS_1, -}; - -static const union AnimCmd *const sAnims_YVELTAL[] = -{ - sAnim_GeneralFrame0, - sAnim_YVELTAL_1, -}; - -static const union AnimCmd *const sAnims_ZYGARDE[] = -{ - sAnim_GeneralFrame0, - sAnim_ZYGARDE_1, -}; - -static const union AnimCmd *const sAnims_DIANCIE[] = -{ - sAnim_GeneralFrame0, - sAnim_DIANCIE_1, -}; - -static const union AnimCmd *const sAnims_HOOPA[] = -{ - sAnim_GeneralFrame0, - sAnim_HOOPA_1, -}; - -static const union AnimCmd *const sAnims_VOLCANION[] = -{ - sAnim_GeneralFrame0, - sAnim_VOLCANION_1, -}; +SINGLE_ANIMATION(Chespin); +DOUBLE_ANIMATION(Quilladin); +SINGLE_ANIMATION(Chesnaught); +SINGLE_ANIMATION(Fennekin); +SINGLE_ANIMATION(Braixen); +SINGLE_ANIMATION(Delphox); +SINGLE_ANIMATION(Froakie); +SINGLE_ANIMATION(Frogadier); +SINGLE_ANIMATION(Greninja); +SINGLE_ANIMATION(GreninjaAsh); +SINGLE_ANIMATION(Bunnelby); +SINGLE_ANIMATION(Diggersby); +SINGLE_ANIMATION(Fletchling); +SINGLE_ANIMATION(Fletchinder); +DOUBLE_ANIMATION(Talonflame); +SINGLE_ANIMATION(Scatterbug); +SINGLE_ANIMATION(Spewpa); +SINGLE_ANIMATION(Vivillon); +SINGLE_ANIMATION(Litleo); +SINGLE_ANIMATION(Pyroar); +DOUBLE_ANIMATION(Flabebe); +SINGLE_ANIMATION(Floette); +DOUBLE_ANIMATION(Florges); +SINGLE_ANIMATION(Skiddo); +SINGLE_ANIMATION(Gogoat); +SINGLE_ANIMATION(Pancham); +SINGLE_ANIMATION(Pangoro); +SINGLE_ANIMATION(Furfrou); +SINGLE_ANIMATION(Espurr); +SINGLE_ANIMATION(Meowstic); +SINGLE_ANIMATION(Honedge); +DOUBLE_ANIMATION(Doublade); +SINGLE_ANIMATION(Aegislash); +SINGLE_ANIMATION(Spritzee); +SINGLE_ANIMATION(Aromatisse); +SINGLE_ANIMATION(Swirlix); +SINGLE_ANIMATION(Slurpuff); +SINGLE_ANIMATION(Inkay); +SINGLE_ANIMATION(Malamar); +SINGLE_ANIMATION(Binacle); +SINGLE_ANIMATION(Barbaracle); +SINGLE_ANIMATION(Skrelp); +SINGLE_ANIMATION(Dragalge); +SINGLE_ANIMATION(Clauncher); +SINGLE_ANIMATION(Clawitzer); +SINGLE_ANIMATION(Helioptile); +SINGLE_ANIMATION(Heliolisk); +SINGLE_ANIMATION(Tyrunt); +SINGLE_ANIMATION(Tyrantrum); +SINGLE_ANIMATION(Amaura); +SINGLE_ANIMATION(Aurorus); +SINGLE_ANIMATION(Sylveon); +SINGLE_ANIMATION(Hawlucha); +SINGLE_ANIMATION(Dedenne); +SINGLE_ANIMATION(Carbink); +SINGLE_ANIMATION(Goomy); +SINGLE_ANIMATION(Sliggoo); +SINGLE_ANIMATION(Goodra); +SINGLE_ANIMATION(Klefki); +SINGLE_ANIMATION(Phantump); +SINGLE_ANIMATION(Trevenant); +SINGLE_ANIMATION(Pumpkaboo); +SINGLE_ANIMATION(Gourgeist); +DOUBLE_ANIMATION(Bergmite); +SINGLE_ANIMATION(Avalugg); +SINGLE_ANIMATION(Noibat); +SINGLE_ANIMATION(Noivern); +SINGLE_ANIMATION(Xerneas); +SINGLE_ANIMATION(Yveltal); +SINGLE_ANIMATION(Zygarde); +SINGLE_ANIMATION(Diancie); +SINGLE_ANIMATION(Hoopa); +SINGLE_ANIMATION(Volcanion); #endif - #if P_GEN_7_POKEMON == TRUE -static const union AnimCmd *const sAnims_ROWLET[] = -{ - sAnim_GeneralFrame0, - sAnim_ROWLET_1, -}; - -static const union AnimCmd *const sAnims_DARTRIX[] = -{ - sAnim_GeneralFrame0, - sAnim_DARTRIX_1, -}; - -static const union AnimCmd *const sAnims_DECIDUEYE[] = -{ - sAnim_GeneralFrame0, - sAnim_DECIDUEYE_1, -}; - -static const union AnimCmd *const sAnims_LITTEN[] = -{ - sAnim_GeneralFrame0, - sAnim_LITTEN_1, -}; - -static const union AnimCmd *const sAnims_TORRACAT[] = -{ - sAnim_GeneralFrame0, - sAnim_TORRACAT_1, -}; - -static const union AnimCmd *const sAnims_INCINEROAR[] = -{ - sAnim_GeneralFrame0, - sAnim_INCINEROAR_1, -}; - -static const union AnimCmd *const sAnims_POPPLIO[] = -{ - sAnim_GeneralFrame0, - sAnim_POPPLIO_1, -}; - -static const union AnimCmd *const sAnims_BRIONNE[] = -{ - sAnim_GeneralFrame0, - sAnim_BRIONNE_1, -}; - -static const union AnimCmd *const sAnims_PRIMARINA[] = -{ - sAnim_GeneralFrame0, - sAnim_PRIMARINA_1, -}; - -static const union AnimCmd *const sAnims_PIKIPEK[] = -{ - sAnim_GeneralFrame0, - sAnim_PIKIPEK_1, -}; - -static const union AnimCmd *const sAnims_TRUMBEAK[] = -{ - sAnim_GeneralFrame0, - sAnim_TRUMBEAK_1, -}; - -static const union AnimCmd *const sAnims_TOUCANNON[] = -{ - sAnim_GeneralFrame0, - sAnim_TOUCANNON_1, -}; - -static const union AnimCmd *const sAnims_YUNGOOS[] = -{ - sAnim_GeneralFrame0, - sAnim_YUNGOOS_1, -}; - -static const union AnimCmd *const sAnims_GUMSHOOS[] = -{ - sAnim_GeneralFrame0, - sAnim_GUMSHOOS_1, -}; - -static const union AnimCmd *const sAnims_GRUBBIN[] = -{ - sAnim_GeneralFrame0, - sAnim_GRUBBIN_1, -}; - -static const union AnimCmd *const sAnims_CHARJABUG[] = -{ - sAnim_GeneralFrame0, - sAnim_CHARJABUG_1, -}; - -static const union AnimCmd *const sAnims_VIKAVOLT[] = -{ - sAnim_GeneralFrame0, - sAnim_VIKAVOLT_1, -}; - -static const union AnimCmd *const sAnims_CRABRAWLER[] = -{ - sAnim_GeneralFrame0, - sAnim_CRABRAWLER_1, -}; - -static const union AnimCmd *const sAnims_CRABOMINABLE[] = -{ - sAnim_GeneralFrame0, - sAnim_CRABOMINABLE_1, -}; - -static const union AnimCmd *const sAnims_ORICORIO[] = -{ - sAnim_GeneralFrame0, - sAnim_ORICORIO_1, -}; - -static const union AnimCmd *const sAnims_CUTIEFLY[] = -{ - sAnim_GeneralFrame0, - sAnim_CUTIEFLY_1, -}; - -static const union AnimCmd *const sAnims_RIBOMBEE[] = -{ - sAnim_GeneralFrame0, - sAnim_RIBOMBEE_1, -}; - -static const union AnimCmd *const sAnims_ROCKRUFF[] = -{ - sAnim_GeneralFrame0, - sAnim_ROCKRUFF_1, -}; - -static const union AnimCmd *const sAnims_LYCANROC[] = -{ - sAnim_GeneralFrame0, - sAnim_LYCANROC_1, -}; - -static const union AnimCmd *const sAnims_WISHIWASHI[] = -{ - sAnim_GeneralFrame0, - sAnim_WISHIWASHI_1, -}; - -static const union AnimCmd *const sAnims_MAREANIE[] = -{ - sAnim_GeneralFrame0, - sAnim_MAREANIE_1, -}; - -static const union AnimCmd *const sAnims_TOXAPEX[] = -{ - sAnim_GeneralFrame0, - sAnim_TOXAPEX_1, -}; - -static const union AnimCmd *const sAnims_MUDBRAY[] = -{ - sAnim_GeneralFrame0, - sAnim_MUDBRAY_1, -}; - -static const union AnimCmd *const sAnims_MUDSDALE[] = -{ - sAnim_GeneralFrame0, - sAnim_MUDSDALE_1, -}; - -static const union AnimCmd *const sAnims_DEWPIDER[] = -{ - sAnim_GeneralFrame0, - sAnim_DEWPIDER_1, -}; - -static const union AnimCmd *const sAnims_ARAQUANID[] = -{ - sAnim_GeneralFrame0, - sAnim_ARAQUANID_1, -}; - -static const union AnimCmd *const sAnims_FOMANTIS[] = -{ - sAnim_GeneralFrame0, - sAnim_FOMANTIS_1, -}; - -static const union AnimCmd *const sAnims_LURANTIS[] = -{ - sAnim_GeneralFrame0, - sAnim_LURANTIS_1, -}; - -static const union AnimCmd *const sAnims_MORELULL[] = -{ - sAnim_GeneralFrame0, - sAnim_MORELULL_1, -}; - -static const union AnimCmd *const sAnims_SHIINOTIC[] = -{ - sAnim_GeneralFrame0, - sAnim_SHIINOTIC_1, -}; - -static const union AnimCmd *const sAnims_SALANDIT[] = -{ - sAnim_GeneralFrame0, - sAnim_SALANDIT_1, -}; - -static const union AnimCmd *const sAnims_SALAZZLE[] = -{ - sAnim_GeneralFrame0, - sAnim_SALAZZLE_1, -}; - -static const union AnimCmd *const sAnims_STUFFUL[] = -{ - sAnim_GeneralFrame0, - sAnim_STUFFUL_1, -}; - -static const union AnimCmd *const sAnims_BEWEAR[] = -{ - sAnim_GeneralFrame0, - sAnim_BEWEAR_1, -}; - -static const union AnimCmd *const sAnims_BOUNSWEET[] = -{ - sAnim_GeneralFrame0, - sAnim_BOUNSWEET_1, -}; - -static const union AnimCmd *const sAnims_STEENEE[] = -{ - sAnim_GeneralFrame0, - sAnim_STEENEE_1, -}; - -static const union AnimCmd *const sAnims_TSAREENA[] = -{ - sAnim_GeneralFrame0, - sAnim_TSAREENA_1, -}; - -static const union AnimCmd *const sAnims_COMFEY[] = -{ - sAnim_GeneralFrame0, - sAnim_COMFEY_1, -}; - -static const union AnimCmd *const sAnims_ORANGURU[] = -{ - sAnim_GeneralFrame0, - sAnim_ORANGURU_1, -}; - -static const union AnimCmd *const sAnims_PASSIMIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_PASSIMIAN_1, -}; - -static const union AnimCmd *const sAnims_WIMPOD[] = -{ - sAnim_GeneralFrame0, - sAnim_WIMPOD_1, -}; - -static const union AnimCmd *const sAnims_GOLISOPOD[] = -{ - sAnim_GeneralFrame0, - sAnim_GOLISOPOD_1, -}; - -static const union AnimCmd *const sAnims_SANDYGAST[] = -{ - sAnim_GeneralFrame0, - sAnim_SANDYGAST_1, -}; - -static const union AnimCmd *const sAnims_PALOSSAND[] = -{ - sAnim_GeneralFrame0, - sAnim_PALOSSAND_1, -}; - -static const union AnimCmd *const sAnims_PYUKUMUKU[] = -{ - sAnim_GeneralFrame0, - sAnim_PYUKUMUKU_1, -}; - -static const union AnimCmd *const sAnims_TYPE_NULL[] = -{ - sAnim_GeneralFrame0, - sAnim_TYPE_NULL_1, -}; - -static const union AnimCmd *const sAnims_SILVALLY[] = -{ - sAnim_GeneralFrame0, - sAnim_SILVALLY_1, -}; - -static const union AnimCmd *const sAnims_MINIOR[] = -{ - sAnim_GeneralFrame0, - sAnim_MINIOR_1, -}; - -static const union AnimCmd *const sAnims_KOMALA[] = -{ - sAnim_GeneralFrame0, - sAnim_KOMALA_1, -}; - -static const union AnimCmd *const sAnims_TURTONATOR[] = -{ - sAnim_GeneralFrame0, - sAnim_TURTONATOR_1, -}; - -static const union AnimCmd *const sAnims_TOGEDEMARU[] = -{ - sAnim_GeneralFrame0, - sAnim_TOGEDEMARU_1, -}; - -static const union AnimCmd *const sAnims_MIMIKYU[] = -{ - sAnim_GeneralFrame0, - sAnim_MIMIKYU_1, -}; - -static const union AnimCmd *const sAnims_BRUXISH[] = -{ - sAnim_GeneralFrame0, - sAnim_BRUXISH_1, -}; - -static const union AnimCmd *const sAnims_DRAMPA[] = -{ - sAnim_GeneralFrame0, - sAnim_DRAMPA_1, -}; - -static const union AnimCmd *const sAnims_DHELMISE[] = -{ - sAnim_GeneralFrame0, - sAnim_DHELMISE_1, -}; - -static const union AnimCmd *const sAnims_JANGMO_O[] = -{ - sAnim_GeneralFrame0, - sAnim_JANGMO_O_1, -}; - -static const union AnimCmd *const sAnims_HAKAMO_O[] = -{ - sAnim_GeneralFrame0, - sAnim_HAKAMO_O_1, -}; - -static const union AnimCmd *const sAnims_KOMMO_O[] = -{ - sAnim_GeneralFrame0, - sAnim_KOMMO_O_1, -}; - -static const union AnimCmd *const sAnims_TAPU_KOKO[] = -{ - sAnim_GeneralFrame0, - sAnim_TAPU_KOKO_1, -}; - -static const union AnimCmd *const sAnims_TAPU_LELE[] = -{ - sAnim_GeneralFrame0, - sAnim_TAPU_LELE_1, -}; - -static const union AnimCmd *const sAnims_TAPU_BULU[] = -{ - sAnim_GeneralFrame0, - sAnim_TAPU_BULU_1, -}; - -static const union AnimCmd *const sAnims_TAPU_FINI[] = -{ - sAnim_GeneralFrame0, - sAnim_TAPU_FINI_1, -}; - -static const union AnimCmd *const sAnims_COSMOG[] = -{ - sAnim_GeneralFrame0, - sAnim_COSMOG_1, -}; - -static const union AnimCmd *const sAnims_COSMOEM[] = -{ - sAnim_GeneralFrame0, - sAnim_COSMOEM_1, -}; - -static const union AnimCmd *const sAnims_SOLGALEO[] = -{ - sAnim_GeneralFrame0, - sAnim_SOLGALEO_1, -}; - -static const union AnimCmd *const sAnims_LUNALA[] = -{ - sAnim_GeneralFrame0, - sAnim_LUNALA_1, -}; - -static const union AnimCmd *const sAnims_NIHILEGO[] = -{ - sAnim_GeneralFrame0, - sAnim_NIHILEGO_1, -}; - -static const union AnimCmd *const sAnims_BUZZWOLE[] = -{ - sAnim_GeneralFrame0, - sAnim_BUZZWOLE_1, -}; - -static const union AnimCmd *const sAnims_PHEROMOSA[] = -{ - sAnim_GeneralFrame0, - sAnim_PHEROMOSA_1, -}; - -static const union AnimCmd *const sAnims_XURKITREE[] = -{ - sAnim_GeneralFrame0, - sAnim_XURKITREE_1, -}; - -static const union AnimCmd *const sAnims_CELESTEELA[] = -{ - sAnim_GeneralFrame0, - sAnim_CELESTEELA_1, -}; - -static const union AnimCmd *const sAnims_KARTANA[] = -{ - sAnim_GeneralFrame0, - sAnim_KARTANA_1, -}; - -static const union AnimCmd *const sAnims_GUZZLORD[] = -{ - sAnim_GeneralFrame0, - sAnim_GUZZLORD_1, -}; - -static const union AnimCmd *const sAnims_NECROZMA[] = -{ - sAnim_GeneralFrame0, - sAnim_NECROZMA_1, -}; - -static const union AnimCmd *const sAnims_MAGEARNA[] = -{ - sAnim_GeneralFrame0, - sAnim_MAGEARNA_1, -}; - -static const union AnimCmd *const sAnims_MARSHADOW[] = -{ - sAnim_GeneralFrame0, - sAnim_MARSHADOW_1, -}; - -static const union AnimCmd *const sAnims_POIPOLE[] = -{ - sAnim_GeneralFrame0, - sAnim_POIPOLE_1, -}; - -static const union AnimCmd *const sAnims_NAGANADEL[] = -{ - sAnim_GeneralFrame0, - sAnim_NAGANADEL_1, -}; - -static const union AnimCmd *const sAnims_STAKATAKA[] = -{ - sAnim_GeneralFrame0, - sAnim_STAKATAKA_1, -}; - -static const union AnimCmd *const sAnims_BLACEPHALON[] = -{ - sAnim_GeneralFrame0, - sAnim_BLACEPHALON_1, -}; - -static const union AnimCmd *const sAnims_ZERAORA[] = -{ - sAnim_GeneralFrame0, - sAnim_ZERAORA_1, -}; - -static const union AnimCmd *const sAnims_MELTAN[] = -{ - sAnim_GeneralFrame0, - sAnim_MELTAN_1, -}; - -static const union AnimCmd *const sAnims_MELMETAL[] = -{ - sAnim_GeneralFrame0, - sAnim_MELMETAL_1, -}; +SINGLE_ANIMATION(Rowlet); +SINGLE_ANIMATION(Dartrix); +SINGLE_ANIMATION(Decidueye); +SINGLE_ANIMATION(Litten); +SINGLE_ANIMATION(Torracat); +SINGLE_ANIMATION(Incineroar); +SINGLE_ANIMATION(Popplio); +SINGLE_ANIMATION(Brionne); +SINGLE_ANIMATION(Primarina); +SINGLE_ANIMATION(Pikipek); +SINGLE_ANIMATION(Trumbeak); +SINGLE_ANIMATION(Toucannon); +SINGLE_ANIMATION(Yungoos); +SINGLE_ANIMATION(Gumshoos); +SINGLE_ANIMATION(Grubbin); +SINGLE_ANIMATION(Charjabug); +SINGLE_ANIMATION(Vikavolt); +SINGLE_ANIMATION(Crabrawler); +SINGLE_ANIMATION(Crabominable); +SINGLE_ANIMATION(Oricorio); +SINGLE_ANIMATION(Cutiefly); +SINGLE_ANIMATION(Ribombee); +SINGLE_ANIMATION(Rockruff); +SINGLE_ANIMATION(Lycanroc); +SINGLE_ANIMATION(Wishiwashi); +SINGLE_ANIMATION(Mareanie); +SINGLE_ANIMATION(Toxapex); +SINGLE_ANIMATION(Mudbray); +SINGLE_ANIMATION(Mudsdale); +SINGLE_ANIMATION(Dewpider); +SINGLE_ANIMATION(Araquanid); +SINGLE_ANIMATION(Fomantis); +SINGLE_ANIMATION(Lurantis); +SINGLE_ANIMATION(Morelull); +SINGLE_ANIMATION(Shiinotic); +SINGLE_ANIMATION(Salandit); +SINGLE_ANIMATION(Salazzle); +SINGLE_ANIMATION(Stufful); +SINGLE_ANIMATION(Bewear); +SINGLE_ANIMATION(Bounsweet); +SINGLE_ANIMATION(Steenee); +SINGLE_ANIMATION(Tsareena); +SINGLE_ANIMATION(Comfey); +SINGLE_ANIMATION(Oranguru); +SINGLE_ANIMATION(Passimian); +SINGLE_ANIMATION(Wimpod); +SINGLE_ANIMATION(Golisopod); +SINGLE_ANIMATION(Sandygast); +SINGLE_ANIMATION(Palossand); +SINGLE_ANIMATION(Pyukumuku); +SINGLE_ANIMATION(TypeNull); +SINGLE_ANIMATION(Silvally); +SINGLE_ANIMATION(Minior); +SINGLE_ANIMATION(Komala); +SINGLE_ANIMATION(Turtonator); +SINGLE_ANIMATION(Togedemaru); +SINGLE_ANIMATION(Mimikyu); +SINGLE_ANIMATION(Bruxish); +SINGLE_ANIMATION(Drampa); +SINGLE_ANIMATION(Dhelmise); +SINGLE_ANIMATION(JANGMO_O); +SINGLE_ANIMATION(HAKAMO_O); +SINGLE_ANIMATION(KOMMO_O); +SINGLE_ANIMATION(TapuKoko); +SINGLE_ANIMATION(TapuLele); +SINGLE_ANIMATION(TapuBulu); +SINGLE_ANIMATION(TapuFini); +SINGLE_ANIMATION(Cosmog); +SINGLE_ANIMATION(Cosmoem); +SINGLE_ANIMATION(Solgaleo); +SINGLE_ANIMATION(Lunala); +SINGLE_ANIMATION(Nihilego); +SINGLE_ANIMATION(Buzzwole); +SINGLE_ANIMATION(Pheromosa); +SINGLE_ANIMATION(Xurkitree); +SINGLE_ANIMATION(Celesteela); +SINGLE_ANIMATION(Kartana); +SINGLE_ANIMATION(Guzzlord); +SINGLE_ANIMATION(Necrozma); +SINGLE_ANIMATION(Magearna); +SINGLE_ANIMATION(Marshadow); +SINGLE_ANIMATION(Poipole); +SINGLE_ANIMATION(Naganadel); +SINGLE_ANIMATION(Stakataka); +SINGLE_ANIMATION(Blacephalon); +SINGLE_ANIMATION(Zeraora); +SINGLE_ANIMATION(Meltan); +SINGLE_ANIMATION(Melmetal); #endif - #if P_GEN_8_POKEMON == TRUE -static const union AnimCmd *const sAnims_GROOKEY[] = -{ - sAnim_GeneralFrame0, - sAnim_GROOKEY_1, -}; - -static const union AnimCmd *const sAnims_THWACKEY[] = -{ - sAnim_GeneralFrame0, - sAnim_THWACKEY_1, -}; - -static const union AnimCmd *const sAnims_RILLABOOM[] = -{ - sAnim_GeneralFrame0, - sAnim_RILLABOOM_1, -}; - -static const union AnimCmd *const sAnims_SCORBUNNY[] = -{ - sAnim_GeneralFrame0, - sAnim_SCORBUNNY_1, -}; - -static const union AnimCmd *const sAnims_RABOOT[] = -{ - sAnim_GeneralFrame0, - sAnim_RABOOT_1, -}; - -static const union AnimCmd *const sAnims_CINDERACE[] = -{ - sAnim_GeneralFrame0, - sAnim_CINDERACE_1, -}; - -static const union AnimCmd *const sAnims_SOBBLE[] = -{ - sAnim_GeneralFrame0, - sAnim_SOBBLE_1, -}; - -static const union AnimCmd *const sAnims_DRIZZILE[] = -{ - sAnim_GeneralFrame0, - sAnim_DRIZZILE_1, -}; - -static const union AnimCmd *const sAnims_INTELEON[] = -{ - sAnim_GeneralFrame0, - sAnim_INTELEON_1, -}; - -static const union AnimCmd *const sAnims_SKWOVET[] = -{ - sAnim_GeneralFrame0, - sAnim_SKWOVET_1, -}; - -static const union AnimCmd *const sAnims_GREEDENT[] = -{ - sAnim_GeneralFrame0, - sAnim_GREEDENT_1, -}; - -static const union AnimCmd *const sAnims_ROOKIDEE[] = -{ - sAnim_GeneralFrame0, - sAnim_ROOKIDEE_1, -}; - -static const union AnimCmd *const sAnims_CORVISQUIRE[] = -{ - sAnim_GeneralFrame0, - sAnim_CORVISQUIRE_1, -}; - -static const union AnimCmd *const sAnims_CORVIKNIGHT[] = -{ - sAnim_GeneralFrame0, - sAnim_CORVIKNIGHT_1, -}; - -static const union AnimCmd *const sAnims_BLIPBUG[] = -{ - sAnim_GeneralFrame0, - sAnim_BLIPBUG_1, -}; - -static const union AnimCmd *const sAnims_DOTTLER[] = -{ - sAnim_GeneralFrame0, - sAnim_DOTTLER_1, -}; - -static const union AnimCmd *const sAnims_ORBEETLE[] = -{ - sAnim_GeneralFrame0, - sAnim_ORBEETLE_1, -}; - -static const union AnimCmd *const sAnims_NICKIT[] = -{ - sAnim_GeneralFrame0, - sAnim_NICKIT_1, -}; - -static const union AnimCmd *const sAnims_THIEVUL[] = -{ - sAnim_GeneralFrame0, - sAnim_THIEVUL_1, -}; - -static const union AnimCmd *const sAnims_GOSSIFLEUR[] = -{ - sAnim_GeneralFrame0, - sAnim_GOSSIFLEUR_1, -}; - -static const union AnimCmd *const sAnims_ELDEGOSS[] = -{ - sAnim_GeneralFrame0, - sAnim_ELDEGOSS_1, -}; - -static const union AnimCmd *const sAnims_WOOLOO[] = -{ - sAnim_GeneralFrame0, - sAnim_WOOLOO_1, -}; - -static const union AnimCmd *const sAnims_DUBWOOL[] = -{ - sAnim_GeneralFrame0, - sAnim_DUBWOOL_1, -}; - -static const union AnimCmd *const sAnims_CHEWTLE[] = -{ - sAnim_GeneralFrame0, - sAnim_CHEWTLE_1, -}; - -static const union AnimCmd *const sAnims_DREDNAW[] = -{ - sAnim_GeneralFrame0, - sAnim_DREDNAW_1, -}; - -static const union AnimCmd *const sAnims_YAMPER[] = -{ - sAnim_GeneralFrame0, - sAnim_YAMPER_1, -}; - -static const union AnimCmd *const sAnims_BOLTUND[] = -{ - sAnim_GeneralFrame0, - sAnim_BOLTUND_1, -}; - -static const union AnimCmd *const sAnims_ROLYCOLY[] = -{ - sAnim_GeneralFrame0, - sAnim_ROLYCOLY_1, -}; - -static const union AnimCmd *const sAnims_CARKOL[] = -{ - sAnim_GeneralFrame0, - sAnim_CARKOL_1, -}; - -static const union AnimCmd *const sAnims_COALOSSAL[] = -{ - sAnim_GeneralFrame0, - sAnim_COALOSSAL_1, -}; - -static const union AnimCmd *const sAnims_APPLIN[] = -{ - sAnim_GeneralFrame0, - sAnim_APPLIN_1, -}; - -static const union AnimCmd *const sAnims_FLAPPLE[] = -{ - sAnim_GeneralFrame0, - sAnim_FLAPPLE_1, -}; - -static const union AnimCmd *const sAnims_APPLETUN[] = -{ - sAnim_GeneralFrame0, - sAnim_APPLETUN_1, -}; - -static const union AnimCmd *const sAnims_SILICOBRA[] = -{ - sAnim_GeneralFrame0, - sAnim_SILICOBRA_1, -}; - -static const union AnimCmd *const sAnims_SANDACONDA[] = -{ - sAnim_GeneralFrame0, - sAnim_SANDACONDA_1, -}; - -static const union AnimCmd *const sAnims_CRAMORANT[] = -{ - sAnim_GeneralFrame0, - sAnim_CRAMORANT_1, -}; - -static const union AnimCmd *const sAnims_ARROKUDA[] = -{ - sAnim_GeneralFrame0, - sAnim_ARROKUDA_1, -}; - -static const union AnimCmd *const sAnims_BARRASKEWDA[] = -{ - sAnim_GeneralFrame0, - sAnim_BARRASKEWDA_1, -}; - -static const union AnimCmd *const sAnims_TOXEL[] = -{ - sAnim_GeneralFrame0, - sAnim_TOXEL_1, -}; - -static const union AnimCmd *const sAnims_TOXTRICITY[] = -{ - sAnim_GeneralFrame0, - sAnim_TOXTRICITY_1, -}; - -static const union AnimCmd *const sAnims_SIZZLIPEDE[] = -{ - sAnim_GeneralFrame0, - sAnim_SIZZLIPEDE_1, -}; - -static const union AnimCmd *const sAnims_CENTISKORCH[] = -{ - sAnim_GeneralFrame0, - sAnim_CENTISKORCH_1, -}; - -static const union AnimCmd *const sAnims_CLOBBOPUS[] = -{ - sAnim_GeneralFrame0, - sAnim_CLOBBOPUS_1, -}; - -static const union AnimCmd *const sAnims_GRAPPLOCT[] = -{ - sAnim_GeneralFrame0, - sAnim_GRAPPLOCT_1, -}; - -static const union AnimCmd *const sAnims_SINISTEA[] = -{ - sAnim_GeneralFrame0, - sAnim_SINISTEA_1, -}; - -static const union AnimCmd *const sAnims_POLTEAGEIST[] = -{ - sAnim_GeneralFrame0, - sAnim_POLTEAGEIST_1, -}; - -static const union AnimCmd *const sAnims_HATENNA[] = -{ - sAnim_GeneralFrame0, - sAnim_HATENNA_1, -}; - -static const union AnimCmd *const sAnims_HATTREM[] = -{ - sAnim_GeneralFrame0, - sAnim_HATTREM_1, -}; - -static const union AnimCmd *const sAnims_HATTERENE[] = -{ - sAnim_GeneralFrame0, - sAnim_HATTERENE_1, -}; - -static const union AnimCmd *const sAnims_IMPIDIMP[] = -{ - sAnim_GeneralFrame0, - sAnim_IMPIDIMP_1, -}; - -static const union AnimCmd *const sAnims_MORGREM[] = -{ - sAnim_GeneralFrame0, - sAnim_MORGREM_1, -}; - -static const union AnimCmd *const sAnims_GRIMMSNARL[] = -{ - sAnim_GeneralFrame0, - sAnim_GRIMMSNARL_1, -}; - -static const union AnimCmd *const sAnims_OBSTAGOON[] = -{ - sAnim_GeneralFrame0, - sAnim_OBSTAGOON_1, -}; - -static const union AnimCmd *const sAnims_PERRSERKER[] = -{ - sAnim_GeneralFrame0, - sAnim_PERRSERKER_1, -}; - -static const union AnimCmd *const sAnims_CURSOLA[] = -{ - sAnim_GeneralFrame0, - sAnim_CURSOLA_1, -}; - -static const union AnimCmd *const sAnims_SIRFETCHD[] = -{ - sAnim_GeneralFrame0, - sAnim_SIRFETCHD_1, -}; - -static const union AnimCmd *const sAnims_MR_RIME[] = -{ - sAnim_GeneralFrame0, - sAnim_MR_RIME_1, -}; - -static const union AnimCmd *const sAnims_RUNERIGUS[] = -{ - sAnim_GeneralFrame0, - sAnim_RUNERIGUS_1, -}; - -static const union AnimCmd *const sAnims_MILCERY[] = -{ - sAnim_GeneralFrame0, - sAnim_MILCERY_1, -}; - -static const union AnimCmd *const sAnims_ALCREMIE[] = -{ - sAnim_GeneralFrame0, - sAnim_ALCREMIE_1, -}; - -static const union AnimCmd *const sAnims_FALINKS[] = -{ - sAnim_GeneralFrame0, - sAnim_FALINKS_1, -}; - -static const union AnimCmd *const sAnims_PINCURCHIN[] = -{ - sAnim_GeneralFrame0, - sAnim_PINCURCHIN_1, -}; - -static const union AnimCmd *const sAnims_SNOM[] = -{ - sAnim_GeneralFrame0, - sAnim_SNOM_1, -}; - -static const union AnimCmd *const sAnims_FROSMOTH[] = -{ - sAnim_GeneralFrame0, - sAnim_FROSMOTH_1, -}; - -static const union AnimCmd *const sAnims_STONJOURNER[] = -{ - sAnim_GeneralFrame0, - sAnim_STONJOURNER_1, -}; - -static const union AnimCmd *const sAnims_EISCUE[] = -{ - sAnim_GeneralFrame0, - sAnim_EISCUE_1, -}; - -static const union AnimCmd *const sAnims_INDEEDEE[] = -{ - sAnim_GeneralFrame0, - sAnim_INDEEDEE_1, -}; - -static const union AnimCmd *const sAnims_MORPEKO[] = -{ - sAnim_GeneralFrame0, - sAnim_MORPEKO_1, -}; - -static const union AnimCmd *const sAnims_CUFANT[] = -{ - sAnim_GeneralFrame0, - sAnim_CUFANT_1, -}; - -static const union AnimCmd *const sAnims_COPPERAJAH[] = -{ - sAnim_GeneralFrame0, - sAnim_COPPERAJAH_1, -}; - -static const union AnimCmd *const sAnims_DRACOZOLT[] = -{ - sAnim_GeneralFrame0, - sAnim_DRACOZOLT_1, -}; - -static const union AnimCmd *const sAnims_ARCTOZOLT[] = -{ - sAnim_GeneralFrame0, - sAnim_ARCTOZOLT_1, -}; - -static const union AnimCmd *const sAnims_DRACOVISH[] = -{ - sAnim_GeneralFrame0, - sAnim_DRACOVISH_1, -}; - -static const union AnimCmd *const sAnims_ARCTOVISH[] = -{ - sAnim_GeneralFrame0, - sAnim_ARCTOVISH_1, -}; - -static const union AnimCmd *const sAnims_DURALUDON[] = -{ - sAnim_GeneralFrame0, - sAnim_DURALUDON_1, -}; - -static const union AnimCmd *const sAnims_DREEPY[] = -{ - sAnim_GeneralFrame0, - sAnim_DREEPY_1, -}; - -static const union AnimCmd *const sAnims_DRAKLOAK[] = -{ - sAnim_GeneralFrame0, - sAnim_DRAKLOAK_1, -}; - -static const union AnimCmd *const sAnims_DRAGAPULT[] = -{ - sAnim_GeneralFrame0, - sAnim_DRAGAPULT_1, -}; - -static const union AnimCmd *const sAnims_ZACIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_ZACIAN_1, -}; - -static const union AnimCmd *const sAnims_ZAMAZENTA[] = -{ - sAnim_GeneralFrame0, - sAnim_ZAMAZENTA_1, -}; - -static const union AnimCmd *const sAnims_ETERNATUS[] = -{ - sAnim_GeneralFrame0, - sAnim_ETERNATUS_1, -}; - -static const union AnimCmd *const sAnims_KUBFU[] = -{ - sAnim_GeneralFrame0, - sAnim_KUBFU_1, -}; - -static const union AnimCmd *const sAnims_URSHIFU[] = -{ - sAnim_GeneralFrame0, - sAnim_URSHIFU_1, -}; - -static const union AnimCmd *const sAnims_ZARUDE[] = -{ - sAnim_GeneralFrame0, - sAnim_ZARUDE_1, -}; - -static const union AnimCmd *const sAnims_REGIELEKI[] = -{ - sAnim_GeneralFrame0, - sAnim_REGIELEKI_1, -}; - -static const union AnimCmd *const sAnims_REGIDRAGO[] = -{ - sAnim_GeneralFrame0, - sAnim_REGIDRAGO_1, -}; - -static const union AnimCmd *const sAnims_GLASTRIER[] = -{ - sAnim_GeneralFrame0, - sAnim_GLASTRIER_1, -}; - -static const union AnimCmd *const sAnims_SPECTRIER[] = -{ - sAnim_GeneralFrame0, - sAnim_SPECTRIER_1, -}; - -static const union AnimCmd *const sAnims_CALYREX[] = -{ - sAnim_GeneralFrame0, - sAnim_CALYREX_1, -}; - -static const union AnimCmd *const sAnims_WYRDEER[] = -{ - sAnim_GeneralFrame0, - sAnim_WYRDEER_1, -}; - -static const union AnimCmd *const sAnims_KLEAVOR[] = -{ - sAnim_GeneralFrame0, - sAnim_KLEAVOR_1, -}; - -static const union AnimCmd *const sAnims_URSALUNA[] = -{ - sAnim_GeneralFrame0, - sAnim_URSALUNA_1, -}; - -static const union AnimCmd *const sAnims_BASCULEGION[] = -{ - sAnim_GeneralFrame0, - sAnim_BASCULEGION_1, -}; - -static const union AnimCmd *const sAnims_SNEASLER[] = -{ - sAnim_GeneralFrame0, - sAnim_SNEASLER_1, -}; - -static const union AnimCmd *const sAnims_OVERQWIL[] = -{ - sAnim_GeneralFrame0, - sAnim_OVERQWIL_1, -}; - -static const union AnimCmd *const sAnims_ENAMORUS[] = -{ - sAnim_GeneralFrame0, - sAnim_ENAMORUS_1, -}; +SINGLE_ANIMATION(Grookey); +SINGLE_ANIMATION(Thwackey); +SINGLE_ANIMATION(Rillaboom); +SINGLE_ANIMATION(Scorbunny); +SINGLE_ANIMATION(Raboot); +SINGLE_ANIMATION(Cinderace); +SINGLE_ANIMATION(Sobble); +SINGLE_ANIMATION(Drizzile); +SINGLE_ANIMATION(Inteleon); +SINGLE_ANIMATION(Skwovet); +SINGLE_ANIMATION(Greedent); +SINGLE_ANIMATION(Rookidee); +SINGLE_ANIMATION(Corvisquire); +SINGLE_ANIMATION(Corviknight); +SINGLE_ANIMATION(Blipbug); +SINGLE_ANIMATION(Dottler); +SINGLE_ANIMATION(Orbeetle); +SINGLE_ANIMATION(Nickit); +SINGLE_ANIMATION(Thievul); +SINGLE_ANIMATION(Gossifleur); +SINGLE_ANIMATION(Eldegoss); +SINGLE_ANIMATION(Wooloo); +SINGLE_ANIMATION(Dubwool); +SINGLE_ANIMATION(Chewtle); +SINGLE_ANIMATION(Drednaw); +SINGLE_ANIMATION(Yamper); +SINGLE_ANIMATION(Boltund); +SINGLE_ANIMATION(Rolycoly); +SINGLE_ANIMATION(Carkol); +SINGLE_ANIMATION(Coalossal); +SINGLE_ANIMATION(Applin); +SINGLE_ANIMATION(Flapple); +SINGLE_ANIMATION(Appletun); +SINGLE_ANIMATION(Silicobra); +SINGLE_ANIMATION(Sandaconda); +SINGLE_ANIMATION(Cramorant); +SINGLE_ANIMATION(Arrokuda); +SINGLE_ANIMATION(Barraskewda); +SINGLE_ANIMATION(Toxel); +SINGLE_ANIMATION(Toxtricity); +SINGLE_ANIMATION(Sizzlipede); +SINGLE_ANIMATION(Centiskorch); +SINGLE_ANIMATION(Clobbopus); +SINGLE_ANIMATION(Grapploct); +SINGLE_ANIMATION(Sinistea); +SINGLE_ANIMATION(Polteageist); +SINGLE_ANIMATION(Hatenna); +SINGLE_ANIMATION(Hattrem); +SINGLE_ANIMATION(Hatterene); +SINGLE_ANIMATION(Impidimp); +SINGLE_ANIMATION(Morgrem); +SINGLE_ANIMATION(Grimmsnarl); +SINGLE_ANIMATION(Obstagoon); +SINGLE_ANIMATION(Perrserker); +SINGLE_ANIMATION(Cursola); +SINGLE_ANIMATION(Sirfetchd); +SINGLE_ANIMATION(MrRime); +SINGLE_ANIMATION(Runerigus); +SINGLE_ANIMATION(Milcery); +SINGLE_ANIMATION(Alcremie); +SINGLE_ANIMATION(Falinks); +SINGLE_ANIMATION(Pincurchin); +SINGLE_ANIMATION(Snom); +SINGLE_ANIMATION(Frosmoth); +SINGLE_ANIMATION(Stonjourner); +SINGLE_ANIMATION(Eiscue); +SINGLE_ANIMATION(Indeedee); +SINGLE_ANIMATION(Morpeko); +SINGLE_ANIMATION(Cufant); +SINGLE_ANIMATION(Copperajah); +SINGLE_ANIMATION(Dracozolt); +SINGLE_ANIMATION(Arctozolt); +SINGLE_ANIMATION(Dracovish); +SINGLE_ANIMATION(Arctovish); +SINGLE_ANIMATION(Duraludon); +SINGLE_ANIMATION(Dreepy); +SINGLE_ANIMATION(Drakloak); +SINGLE_ANIMATION(Dragapult); +SINGLE_ANIMATION(Zacian); +SINGLE_ANIMATION(Zamazenta); +SINGLE_ANIMATION(Eternatus); +SINGLE_ANIMATION(Kubfu); +SINGLE_ANIMATION(Urshifu); +SINGLE_ANIMATION(Zarude); +SINGLE_ANIMATION(Regieleki); +SINGLE_ANIMATION(Regidrago); +SINGLE_ANIMATION(Glastrier); +SINGLE_ANIMATION(Spectrier); +SINGLE_ANIMATION(Calyrex); +SINGLE_ANIMATION(Wyrdeer); +SINGLE_ANIMATION(Kleavor); +SINGLE_ANIMATION(Ursaluna); +SINGLE_ANIMATION(Basculegion); +SINGLE_ANIMATION(Sneasler); +SINGLE_ANIMATION(Overqwil); +SINGLE_ANIMATION(Enamorus); #endif - -static const union AnimCmd *const sAnims_VENUSAUR_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_VENUSAUR_MEGA_1, -}; - -static const union AnimCmd *const sAnims_CHARIZARD_MEGA_X[] = -{ - sAnim_GeneralFrame0, - sAnim_CHARIZARD_MEGA_X_1, -}; - -static const union AnimCmd *const sAnims_CHARIZARD_MEGA_Y[] = -{ - sAnim_GeneralFrame0, - sAnim_CHARIZARD_MEGA_Y_1, -}; - -static const union AnimCmd *const sAnims_BLASTOISE_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_BLASTOISE_MEGA_1, -}; - -static const union AnimCmd *const sAnims_BEEDRILL_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_BEEDRILL_MEGA_1, -}; - -static const union AnimCmd *const sAnims_PIDGEOT_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_PIDGEOT_MEGA_1, -}; - -static const union AnimCmd *const sAnims_ALAKAZAM_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_ALAKAZAM_MEGA_1, -}; - -static const union AnimCmd *const sAnims_SLOWBRO_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_SLOWBRO_MEGA_1, -}; - -static const union AnimCmd *const sAnims_GENGAR_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_GENGAR_MEGA_1, -}; - -static const union AnimCmd *const sAnims_KANGASKHAN_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_KANGASKHAN_MEGA_1, -}; - -static const union AnimCmd *const sAnims_PINSIR_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_PINSIR_MEGA_1, -}; - -static const union AnimCmd *const sAnims_GYARADOS_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_GYARADOS_MEGA_1, -}; - -static const union AnimCmd *const sAnims_AERODACTYL_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_AERODACTYL_MEGA_1, -}; - -static const union AnimCmd *const sAnims_MEWTWO_MEGA_X[] = -{ - sAnim_GeneralFrame0, - sAnim_MEWTWO_MEGA_X_1, -}; - -static const union AnimCmd *const sAnims_MEWTWO_MEGA_Y[] = -{ - sAnim_GeneralFrame0, - sAnim_MEWTWO_MEGA_Y_1, -}; - -static const union AnimCmd *const sAnims_AMPHAROS_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_AMPHAROS_MEGA_1, -}; - -static const union AnimCmd *const sAnims_STEELIX_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_STEELIX_MEGA_1, -}; - -static const union AnimCmd *const sAnims_SCIZOR_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_SCIZOR_MEGA_1, -}; - -static const union AnimCmd *const sAnims_HERACROSS_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_HERACROSS_MEGA_1, -}; - -static const union AnimCmd *const sAnims_HOUNDOOM_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_HOUNDOOM_MEGA_1, -}; - -static const union AnimCmd *const sAnims_TYRANITAR_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_TYRANITAR_MEGA_1, -}; - -static const union AnimCmd *const sAnims_SCEPTILE_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_SCEPTILE_MEGA_1, -}; - -static const union AnimCmd *const sAnims_BLAZIKEN_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_BLAZIKEN_MEGA_1, -}; - -static const union AnimCmd *const sAnims_SWAMPERT_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_SWAMPERT_MEGA_1, -}; - -static const union AnimCmd *const sAnims_GARDEVOIR_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_GARDEVOIR_MEGA_1, -}; - -static const union AnimCmd *const sAnims_SABLEYE_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_SABLEYE_MEGA_1, -}; - -static const union AnimCmd *const sAnims_MAWILE_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_MAWILE_MEGA_1, -}; - -static const union AnimCmd *const sAnims_AGGRON_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_AGGRON_MEGA_1, -}; - -static const union AnimCmd *const sAnims_MEDICHAM_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_MEDICHAM_MEGA_1, -}; - -static const union AnimCmd *const sAnims_MANECTRIC_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_MANECTRIC_MEGA_1, -}; - -static const union AnimCmd *const sAnims_SHARPEDO_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_SHARPEDO_MEGA_1, -}; - -static const union AnimCmd *const sAnims_CAMERUPT_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_CAMERUPT_MEGA_1, -}; - -static const union AnimCmd *const sAnims_ALTARIA_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_ALTARIA_MEGA_1, -}; - -static const union AnimCmd *const sAnims_BANETTE_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_BANETTE_MEGA_1, -}; - -static const union AnimCmd *const sAnims_ABSOL_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_ABSOL_MEGA_1, -}; - -static const union AnimCmd *const sAnims_GLALIE_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_GLALIE_MEGA_1, -}; - -static const union AnimCmd *const sAnims_SALAMENCE_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_SALAMENCE_MEGA_1, -}; - -static const union AnimCmd *const sAnims_METAGROSS_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_METAGROSS_MEGA_1, -}; - -static const union AnimCmd *const sAnims_LATIAS_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_LATIAS_MEGA_1, -}; - -static const union AnimCmd *const sAnims_LATIOS_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_LATIOS_MEGA_1, -}; - -static const union AnimCmd *const sAnims_KYOGRE_PRIMAL[] = -{ - sAnim_GeneralFrame0, - sAnim_KYOGRE_PRIMAL_1, -}; - -static const union AnimCmd *const sAnims_GROUDON_PRIMAL[] = -{ - sAnim_GeneralFrame0, - sAnim_GROUDON_PRIMAL_1, -}; - -static const union AnimCmd *const sAnims_RAYQUAZA_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_RAYQUAZA_MEGA_1, -}; - +SINGLE_ANIMATION(VenusaurMega); +SINGLE_ANIMATION(CHARIZARD_MEGA_X); +SINGLE_ANIMATION(CHARIZARD_MEGA_Y); +SINGLE_ANIMATION(BlastoiseMega); +SINGLE_ANIMATION(BeedrillMega); +SINGLE_ANIMATION(PidgeotMega); +SINGLE_ANIMATION(AlakazamMega); +SINGLE_ANIMATION(SlowbroMega); +SINGLE_ANIMATION(GengarMega); +SINGLE_ANIMATION(KangaskhanMega); +SINGLE_ANIMATION(PinsirMega); +SINGLE_ANIMATION(GyaradosMega); +SINGLE_ANIMATION(AerodactylMega); +SINGLE_ANIMATION(MEWTWO_MEGA_X); +SINGLE_ANIMATION(MEWTWO_MEGA_Y); +SINGLE_ANIMATION(AmpharosMega); +SINGLE_ANIMATION(SteelixMega); +SINGLE_ANIMATION(ScizorMega); +SINGLE_ANIMATION(HeracrossMega); +SINGLE_ANIMATION(HoundoomMega); +SINGLE_ANIMATION(TyranitarMega); +SINGLE_ANIMATION(SceptileMega); +SINGLE_ANIMATION(BlazikenMega); +SINGLE_ANIMATION(SwampertMega); +SINGLE_ANIMATION(GardevoirMega); +SINGLE_ANIMATION(SableyeMega); +SINGLE_ANIMATION(MawileMega); +SINGLE_ANIMATION(AggronMega); +SINGLE_ANIMATION(MedichamMega); +SINGLE_ANIMATION(ManectricMega); +SINGLE_ANIMATION(SharpedoMega); +SINGLE_ANIMATION(CameruptMega); +SINGLE_ANIMATION(AltariaMega); +SINGLE_ANIMATION(BanetteMega); +SINGLE_ANIMATION(AbsolMega); +SINGLE_ANIMATION(GlalieMega); +SINGLE_ANIMATION(SalamenceMega); +SINGLE_ANIMATION(MetagrossMega); +SINGLE_ANIMATION(LatiasMega); +SINGLE_ANIMATION(LatiosMega); +SINGLE_ANIMATION(KyogrePrimal); +SINGLE_ANIMATION(GroudonPrimal); +SINGLE_ANIMATION(RayquazaMega); #if P_GEN_4_POKEMON == TRUE -static const union AnimCmd *const sAnims_LOPUNNY_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_LOPUNNY_MEGA_1, -}; - -static const union AnimCmd *const sAnims_GARCHOMP_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_GARCHOMP_MEGA_1, -}; - -static const union AnimCmd *const sAnims_LUCARIO_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_LUCARIO_MEGA_1, -}; - -static const union AnimCmd *const sAnims_ABOMASNOW_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_ABOMASNOW_MEGA_1, -}; - -static const union AnimCmd *const sAnims_GALLADE_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_GALLADE_MEGA_1, -}; +SINGLE_ANIMATION(LopunnyMega); +SINGLE_ANIMATION(GarchompMega); +SINGLE_ANIMATION(LucarioMega); +SINGLE_ANIMATION(AbomasnowMega); +SINGLE_ANIMATION(GalladeMega); #endif - #if P_GEN_5_POKEMON == TRUE -static const union AnimCmd *const sAnims_AUDINO_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_AUDINO_MEGA_1, -}; +SINGLE_ANIMATION(AudinoMega); #endif - #if P_GEN_6_POKEMON == TRUE -static const union AnimCmd *const sAnims_DIANCIE_MEGA[] = -{ - sAnim_GeneralFrame0, - sAnim_DIANCIE_MEGA_1, -}; +SINGLE_ANIMATION(DiancieMega); #endif - -static const union AnimCmd *const sAnims_RATTATA_ALOLAN[] = -{ - sAnim_GeneralFrame0, - sAnim_RATTATA_ALOLAN_1, -}; - -static const union AnimCmd *const sAnims_RATICATE_ALOLAN[] = -{ - sAnim_GeneralFrame0, - sAnim_RATICATE_ALOLAN_1, -}; - -static const union AnimCmd *const sAnims_RAICHU_ALOLAN[] = -{ - sAnim_GeneralFrame0, - sAnim_RAICHU_ALOLAN_1, -}; - -static const union AnimCmd *const sAnims_SANDSHREW_ALOLAN[] = -{ - sAnim_GeneralFrame0, - sAnim_SANDSHREW_ALOLAN_1, -}; - -static const union AnimCmd *const sAnims_SANDSLASH_ALOLAN[] = -{ - sAnim_GeneralFrame0, - sAnim_SANDSLASH_ALOLAN_1, -}; - -static const union AnimCmd *const sAnims_VULPIX_ALOLAN[] = -{ - sAnim_GeneralFrame0, - sAnim_VULPIX_ALOLAN_1, -}; - -static const union AnimCmd *const sAnims_NINETALES_ALOLAN[] = -{ - sAnim_GeneralFrame0, - sAnim_NINETALES_ALOLAN_1, -}; - -static const union AnimCmd *const sAnims_DIGLETT_ALOLAN[] = -{ - sAnim_GeneralFrame0, - sAnim_DIGLETT_ALOLAN_1, -}; - -static const union AnimCmd *const sAnims_DUGTRIO_ALOLAN[] = -{ - sAnim_GeneralFrame0, - sAnim_DUGTRIO_ALOLAN_1, -}; - -static const union AnimCmd *const sAnims_MEOWTH_ALOLAN[] = -{ - sAnim_GeneralFrame0, - sAnim_MEOWTH_ALOLAN_1, -}; - -static const union AnimCmd *const sAnims_PERSIAN_ALOLAN[] = -{ - sAnim_GeneralFrame0, - sAnim_PERSIAN_ALOLAN_1, -}; - -static const union AnimCmd *const sAnims_GEODUDE_ALOLAN[] = -{ - sAnim_GeneralFrame0, - sAnim_GEODUDE_ALOLAN_1, -}; - -static const union AnimCmd *const sAnims_GRAVELER_ALOLAN[] = -{ - sAnim_GeneralFrame0, - sAnim_GRAVELER_ALOLAN_1, -}; - -static const union AnimCmd *const sAnims_GOLEM_ALOLAN[] = -{ - sAnim_GeneralFrame0, - sAnim_GOLEM_ALOLAN_1, -}; - -static const union AnimCmd *const sAnims_GRIMER_ALOLAN[] = -{ - sAnim_GeneralFrame0, - sAnim_GRIMER_ALOLAN_1, -}; - -static const union AnimCmd *const sAnims_MUK_ALOLAN[] = -{ - sAnim_GeneralFrame0, - sAnim_MUK_ALOLAN_1, -}; - -static const union AnimCmd *const sAnims_EXEGGUTOR_ALOLAN[] = -{ - sAnim_GeneralFrame0, - sAnim_EXEGGUTOR_ALOLAN_1, -}; - -static const union AnimCmd *const sAnims_MAROWAK_ALOLAN[] = -{ - sAnim_GeneralFrame0, - sAnim_MAROWAK_ALOLAN_1, -}; - -static const union AnimCmd *const sAnims_MEOWTH_GALARIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_MEOWTH_GALARIAN_1, -}; - -static const union AnimCmd *const sAnims_PONYTA_GALARIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_PONYTA_GALARIAN_1, -}; - -static const union AnimCmd *const sAnims_RAPIDASH_GALARIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_RAPIDASH_GALARIAN_1, -}; - -static const union AnimCmd *const sAnims_SLOWPOKE_GALARIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_SLOWPOKE_GALARIAN_1, -}; - -static const union AnimCmd *const sAnims_SLOWBRO_GALARIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_SLOWBRO_GALARIAN_1, -}; - -static const union AnimCmd *const sAnims_FARFETCHD_GALARIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_FARFETCHD_GALARIAN_1, -}; - -static const union AnimCmd *const sAnims_WEEZING_GALARIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_WEEZING_GALARIAN_1, -}; - -static const union AnimCmd *const sAnims_MR_MIME_GALARIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_MR_MIME_GALARIAN_1, -}; - -static const union AnimCmd *const sAnims_ARTICUNO_GALARIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_ARTICUNO_GALARIAN_1, -}; - -static const union AnimCmd *const sAnims_ZAPDOS_GALARIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_ZAPDOS_GALARIAN_1, -}; - -static const union AnimCmd *const sAnims_MOLTRES_GALARIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_MOLTRES_GALARIAN_1, -}; - -static const union AnimCmd *const sAnims_SLOWKING_GALARIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_SLOWKING_GALARIAN_1, -}; - -static const union AnimCmd *const sAnims_CORSOLA_GALARIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_CORSOLA_GALARIAN_1, -}; - -static const union AnimCmd *const sAnims_ZIGZAGOON_GALARIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_ZIGZAGOON_GALARIAN_1, -}; - -static const union AnimCmd *const sAnims_LINOONE_GALARIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_LINOONE_GALARIAN_1, -}; - +SINGLE_ANIMATION(RattataAlolan); +SINGLE_ANIMATION(RaticateAlolan); +SINGLE_ANIMATION(RaichuAlolan); +SINGLE_ANIMATION(SandshrewAlolan); +SINGLE_ANIMATION(SandslashAlolan); +SINGLE_ANIMATION(VulpixAlolan); +SINGLE_ANIMATION(NinetalesAlolan); +SINGLE_ANIMATION(DiglettAlolan); +SINGLE_ANIMATION(DugtrioAlolan); +SINGLE_ANIMATION(MeowthAlolan); +SINGLE_ANIMATION(PersianAlolan); +SINGLE_ANIMATION(GeodudeAlolan); +SINGLE_ANIMATION(GravelerAlolan); +SINGLE_ANIMATION(GolemAlolan); +SINGLE_ANIMATION(GrimerAlolan); +SINGLE_ANIMATION(MukAlolan); +SINGLE_ANIMATION(ExeggutorAlolan); +SINGLE_ANIMATION(MarowakAlolan); +SINGLE_ANIMATION(MeowthGalarian); +SINGLE_ANIMATION(PonytaGalarian); +SINGLE_ANIMATION(RapidashGalarian); +SINGLE_ANIMATION(SlowpokeGalarian); +SINGLE_ANIMATION(SlowbroGalarian); +SINGLE_ANIMATION(FarfetchdGalarian); +SINGLE_ANIMATION(WeezingGalarian); +SINGLE_ANIMATION(MrMimeGalarian); +SINGLE_ANIMATION(ArticunoGalarian); +SINGLE_ANIMATION(ZapdosGalarian); +SINGLE_ANIMATION(MoltresGalarian); +SINGLE_ANIMATION(SlowkingGalarian); +SINGLE_ANIMATION(CorsolaGalarian); +SINGLE_ANIMATION(ZigzagoonGalarian); +SINGLE_ANIMATION(LinooneGalarian); #if P_GEN_5_POKEMON == TRUE -static const union AnimCmd *const sAnims_DARUMAKA_GALARIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_DARUMAKA_GALARIAN_1, -}; - -static const union AnimCmd *const sAnims_DARMANITAN_GALARIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_DARMANITAN_GALARIAN_1, -}; - -static const union AnimCmd *const sAnims_YAMASK_GALARIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_YAMASK_GALARIAN_1, -}; - -static const union AnimCmd *const sAnims_STUNFISK_GALARIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_STUNFISK_GALARIAN_1, -}; +SINGLE_ANIMATION(DarumakaGalarian); +SINGLE_ANIMATION(DarmanitanGalarian); +SINGLE_ANIMATION(YamaskGalarian); +SINGLE_ANIMATION(StunfiskGalarian); #endif - -static const union AnimCmd *const sAnims_GROWLITHE_HISUIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_GROWLITHE_HISUIAN_1, -}; - -static const union AnimCmd *const sAnims_ARCANINE_HISUIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_ARCANINE_HISUIAN_1, -}; - -static const union AnimCmd *const sAnims_VOLTORB_HISUIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_VOLTORB_HISUIAN_1, -}; - -static const union AnimCmd *const sAnims_ELECTRODE_HISUIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_ELECTRODE_HISUIAN_1, -}; - -static const union AnimCmd *const sAnims_TYPHLOSION_HISUIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_TYPHLOSION_HISUIAN_1, -}; - -static const union AnimCmd *const sAnims_QWILFISH_HISUIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_QWILFISH_HISUIAN_1, -}; - -static const union AnimCmd *const sAnims_SNEASEL_HISUIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_SNEASEL_HISUIAN_1, -}; - +SINGLE_ANIMATION(GrowlitheHisuian); +SINGLE_ANIMATION(ArcanineHisuian); +SINGLE_ANIMATION(VoltorbHisuian); +SINGLE_ANIMATION(ElectrodeHisuian); +SINGLE_ANIMATION(TyphlosionHisuian); +SINGLE_ANIMATION(QwilfishHisuian); +SINGLE_ANIMATION(SneaselHisuian); #if P_GEN_5_POKEMON == TRUE -static const union AnimCmd *const sAnims_SAMUROTT_HISUIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_SAMUROTT_HISUIAN_1, -}; - -static const union AnimCmd *const sAnims_LILLIGANT_HISUIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_LILLIGANT_HISUIAN_1, -}; - -static const union AnimCmd *const sAnims_ZORUA_HISUIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_ZORUA_HISUIAN_1, -}; - -static const union AnimCmd *const sAnims_ZOROARK_HISUIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_ZOROARK_HISUIAN_1, -}; - -static const union AnimCmd *const sAnims_BRAVIARY_HISUIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_BRAVIARY_HISUIAN_1, -}; +SINGLE_ANIMATION(SamurottHisuian); +SINGLE_ANIMATION(LilligantHisuian); +SINGLE_ANIMATION(ZoruaHisuian); +SINGLE_ANIMATION(ZoroarkHisuian); +SINGLE_ANIMATION(BraviaryHisuian); #endif - #if P_GEN_6_POKEMON == TRUE -static const union AnimCmd *const sAnims_SLIGGOO_HISUIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_SLIGGOO_HISUIAN_1, -}; - -static const union AnimCmd *const sAnims_GOODRA_HISUIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_GOODRA_HISUIAN_1, -}; - -static const union AnimCmd *const sAnims_AVALUGG_HISUIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_AVALUGG_HISUIAN_1, -}; +SINGLE_ANIMATION(SliggooHisuian); +SINGLE_ANIMATION(GoodraHisuian); +SINGLE_ANIMATION(AvaluggHisuian); #endif - #if P_GEN_7_POKEMON == TRUE -static const union AnimCmd *const sAnims_DECIDUEYE_HISUIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_DECIDUEYE_HISUIAN_1, -}; +SINGLE_ANIMATION(DecidueyeHisuian); #endif - -static const union AnimCmd *const sAnims_PIKACHU_COSPLAY[] = -{ - sAnim_GeneralFrame0, - sAnim_PIKACHU_COSPLAY_1, -}; - -static const union AnimCmd *const sAnims_PIKACHU_ROCK_STAR[] = -{ - sAnim_GeneralFrame0, - sAnim_PIKACHU_ROCK_STAR_1, -}; - -static const union AnimCmd *const sAnims_PIKACHU_BELLE[] = -{ - sAnim_GeneralFrame0, - sAnim_PIKACHU_BELLE_1, -}; - -static const union AnimCmd *const sAnims_PIKACHU_POP_STAR[] = -{ - sAnim_GeneralFrame0, - sAnim_PIKACHU_POP_STAR_1, -}; - -static const union AnimCmd *const sAnims_PIKACHU_PH_D[] = -{ - sAnim_GeneralFrame0, - sAnim_PIKACHU_PH_D_1, -}; - -static const union AnimCmd *const sAnims_PIKACHU_LIBRE[] = -{ - sAnim_GeneralFrame0, - sAnim_PIKACHU_LIBRE_1, -}; - -static const union AnimCmd *const sAnims_PIKACHU_ORIGINAL_CAP[] = -{ - sAnim_GeneralFrame0, - sAnim_PIKACHU_ORIGINAL_CAP_1, -}; - -static const union AnimCmd *const sAnims_PIKACHU_HOENN_CAP[] = -{ - sAnim_GeneralFrame0, - sAnim_PIKACHU_HOENN_CAP_1, -}; - -static const union AnimCmd *const sAnims_PIKACHU_SINNOH_CAP[] = -{ - sAnim_GeneralFrame0, - sAnim_PIKACHU_SINNOH_CAP_1, -}; - -static const union AnimCmd *const sAnims_PIKACHU_UNOVA_CAP[] = -{ - sAnim_GeneralFrame0, - sAnim_PIKACHU_UNOVA_CAP_1, -}; - -static const union AnimCmd *const sAnims_PIKACHU_KALOS_CAP[] = -{ - sAnim_GeneralFrame0, - sAnim_PIKACHU_KALOS_CAP_1, -}; - -static const union AnimCmd *const sAnims_PIKACHU_ALOLA_CAP[] = -{ - sAnim_GeneralFrame0, - sAnim_PIKACHU_ALOLA_CAP_1, -}; - -static const union AnimCmd *const sAnims_PIKACHU_PARTNER_CAP[] = -{ - sAnim_GeneralFrame0, - sAnim_PIKACHU_PARTNER_CAP_1, -}; - -static const union AnimCmd *const sAnims_PIKACHU_WORLD_CAP[] = -{ - sAnim_GeneralFrame0, - sAnim_PIKACHU_WORLD_CAP_1, -}; - -static const union AnimCmd *const sAnims_PICHU_SPIKY_EARED[] = { - sAnim_GeneralFrame0, - sAnim_PICHU_SPIKY_EARED_1, -}; -static const union AnimCmd *const sAnims_DEOXYS_ATTACK[] = -{ - sAnim_GeneralFrame0, - sAnim_DEOXYS_ATTACK_1, - sAnim_DEOXYS_ATTACK_2, -}; - -static const union AnimCmd *const sAnims_DEOXYS_DEFENSE[] = -{ - sAnim_GeneralFrame0, - sAnim_DEOXYS_DEFENSE_1, - sAnim_DEOXYS_DEFENSE_2, -}; - -static const union AnimCmd *const sAnims_DEOXYS_SPEED[] = -{ - sAnim_GeneralFrame0, - sAnim_DEOXYS_SPEED_1, - sAnim_DEOXYS_SPEED_2, -}; - +SINGLE_ANIMATION(PikachuCosplay); +SINGLE_ANIMATION(PikachuRockStar); +SINGLE_ANIMATION(PikachuBelle); +SINGLE_ANIMATION(PikachuPopStar); +SINGLE_ANIMATION(PIKACHU_PH_D); +SINGLE_ANIMATION(PikachuLibre); +SINGLE_ANIMATION(PikachuOriginalCap); +SINGLE_ANIMATION(PikachuHoennCap); +SINGLE_ANIMATION(PikachuSinnohCap); +SINGLE_ANIMATION(PikachuUnovaCap); +SINGLE_ANIMATION(PikachuKalosCap); +SINGLE_ANIMATION(PikachuAlolaCap); +SINGLE_ANIMATION(PikachuPartnerCap); +SINGLE_ANIMATION(PikachuWorldCap); +SINGLE_ANIMATION(PichuSpikyEared); +DOUBLE_ANIMATION(DeoxysAttack); +DOUBLE_ANIMATION(DeoxysDefense); +DOUBLE_ANIMATION(DeoxysSpeed); #if P_GEN_4_POKEMON == TRUE -static const union AnimCmd *const sAnims_DIALGA_ORIGIN[] = -{ - sAnim_GeneralFrame0, - sAnim_DIALGA_ORIGIN_1, -}; - -static const union AnimCmd *const sAnims_PALKIA_ORIGIN[] = -{ - sAnim_GeneralFrame0, - sAnim_PALKIA_ORIGIN_1, -}; - -static const union AnimCmd *const sAnims_GIRATINA_ORIGIN[] = -{ - sAnim_GeneralFrame0, - sAnim_GIRATINA_ORIGIN_1, - sAnim_GIRATINA_ORIGIN_2, -}; - -static const union AnimCmd *const sAnims_SHAYMIN_SKY[] = -{ - sAnim_GeneralFrame0, - sAnim_SHAYMIN_SKY_1, -}; +SINGLE_ANIMATION(DialgaOrigin); +SINGLE_ANIMATION(PalkiaOrigin); +DOUBLE_ANIMATION(GiratinaOrigin); +SINGLE_ANIMATION(ShayminSky); #endif - #if P_GEN_5_POKEMON == TRUE -static const union AnimCmd *const sAnims_DARMANITAN_ZEN_MODE[] = -{ - sAnim_GeneralFrame0, - sAnim_DARMANITAN_ZEN_MODE_1, -}; - -static const union AnimCmd *const sAnims_DARMANITAN_ZEN_MODE_GALARIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_DARMANITAN_ZEN_MODE_GALARIAN_1, -}; - -static const union AnimCmd *const sAnims_TORNADUS_THERIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_TORNADUS_THERIAN_1, -}; - -static const union AnimCmd *const sAnims_THUNDURUS_THERIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_THUNDURUS_THERIAN_1, -}; - -static const union AnimCmd *const sAnims_LANDORUS_THERIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_LANDORUS_THERIAN_1, -}; - -static const union AnimCmd *const sAnims_KYUREM_BLACK[] = -{ - sAnim_GeneralFrame0, - sAnim_KYUREM_BLACK_1, -}; - -static const union AnimCmd *const sAnims_KYUREM_WHITE[] = -{ - sAnim_GeneralFrame0, - sAnim_KYUREM_WHITE_1, -}; - -static const union AnimCmd *const sAnims_KELDEO_RESOLUTE[] = -{ - sAnim_GeneralFrame0, - sAnim_KELDEO_RESOLUTE_1, -}; - -static const union AnimCmd *const sAnims_MELOETTA_PIROUETTE[] = -{ - sAnim_GeneralFrame0, - sAnim_MELOETTA_PIROUETTE_1, -}; +SINGLE_ANIMATION(DarmanitanZenMode); +SINGLE_ANIMATION(DarmanitanZenModeGalarian); +SINGLE_ANIMATION(TornadusTherian); +SINGLE_ANIMATION(ThundurusTherian); +SINGLE_ANIMATION(LandorusTherian); +SINGLE_ANIMATION(KyuremBlack); +SINGLE_ANIMATION(KyuremWhite); +SINGLE_ANIMATION(KeldeoResolute); +SINGLE_ANIMATION(MeloettaPirouette); #endif - #if P_GEN_6_POKEMON == TRUE -static const union AnimCmd *const sAnims_AEGISLASH_BLADE[] = -{ - sAnim_GeneralFrame0, - sAnim_AEGISLASH_BLADE_1, -}; - -static const union AnimCmd *const sAnims_ZYGARDE_10[] = -{ - sAnim_GeneralFrame0, - sAnim_ZYGARDE_10_1, -}; - -static const union AnimCmd *const sAnims_ZYGARDE_COMPLETE[] = -{ - sAnim_GeneralFrame0, - sAnim_ZYGARDE_COMPLETE_1, -}; - -static const union AnimCmd *const sAnims_HOOPA_UNBOUND[] = -{ - sAnim_GeneralFrame0, - sAnim_HOOPA_UNBOUND_1, -}; +SINGLE_ANIMATION(AegislashBlade); +SINGLE_ANIMATION(Zygarde10); +SINGLE_ANIMATION(ZygardeComplete); +SINGLE_ANIMATION(HoopaUnbound); #endif - #if P_GEN_7_POKEMON == TRUE -static const union AnimCmd *const sAnims_MINIOR_CORE[] = -{ - sAnim_GeneralFrame0, - sAnim_MINIOR_CORE_1, -}; - -static const union AnimCmd *const sAnims_WISHIWASHI_SCHOOL[] = -{ - sAnim_GeneralFrame0, - sAnim_WISHIWASHI_SCHOOL_1, -}; - -static const union AnimCmd *const sAnims_MIMIKYU_BUSTED[] = -{ - sAnim_GeneralFrame0, - sAnim_MIMIKYU_BUSTED_1, -}; - -static const union AnimCmd *const sAnims_LYCANROC_MIDNIGHT[] = -{ - sAnim_GeneralFrame0, - sAnim_LYCANROC_MIDNIGHT_1, -}; - -static const union AnimCmd *const sAnims_LYCANROC_DUSK[] = -{ - sAnim_GeneralFrame0, - sAnim_LYCANROC_DUSK_1, -}; +SINGLE_ANIMATION(MiniorCore); +SINGLE_ANIMATION(WishiwashiSchool); +SINGLE_ANIMATION(MimikyuBusted); +SINGLE_ANIMATION(LycanrocMidnight); +SINGLE_ANIMATION(LycanrocDusk); #endif - #if P_GEN_8_POKEMON == TRUE -static const union AnimCmd *const sAnims_ENAMORUS_THERIAN[] = -{ - sAnim_GeneralFrame0, - sAnim_ENAMORUS_THERIAN_1, -}; +SINGLE_ANIMATION(EnamorusTherian); #endif -#define ANIM_CMD(name) [SPECIES_##name] = sAnims_##name -#define ANIM_CMD_FULL(name, anims) [SPECIES_##name] = anims - const union AnimCmd *const *const gMonFrontAnimsPtrTable[] = { - ANIM_CMD(NONE), - ANIM_CMD(BULBASAUR), - ANIM_CMD(IVYSAUR), - ANIM_CMD(VENUSAUR), - ANIM_CMD(CHARMANDER), - ANIM_CMD(CHARMELEON), - ANIM_CMD(CHARIZARD), - ANIM_CMD(SQUIRTLE), - ANIM_CMD(WARTORTLE), - ANIM_CMD(BLASTOISE), - ANIM_CMD(CATERPIE), - ANIM_CMD(METAPOD), - ANIM_CMD(BUTTERFREE), - ANIM_CMD(WEEDLE), - ANIM_CMD(KAKUNA), - ANIM_CMD(BEEDRILL), - ANIM_CMD(PIDGEY), - ANIM_CMD(PIDGEOTTO), - ANIM_CMD(PIDGEOT), - ANIM_CMD(RATTATA), - ANIM_CMD(RATICATE), - ANIM_CMD(SPEAROW), - ANIM_CMD(FEAROW), - ANIM_CMD(EKANS), - ANIM_CMD(ARBOK), - ANIM_CMD(PIKACHU), - ANIM_CMD(RAICHU), - ANIM_CMD(SANDSHREW), - ANIM_CMD(SANDSLASH), - ANIM_CMD(NIDORAN_F), - ANIM_CMD(NIDORINA), - ANIM_CMD(NIDOQUEEN), - ANIM_CMD(NIDORAN_M), - ANIM_CMD(NIDORINO), - ANIM_CMD(NIDOKING), - ANIM_CMD(CLEFAIRY), - ANIM_CMD(CLEFABLE), - ANIM_CMD(VULPIX), - ANIM_CMD(NINETALES), - ANIM_CMD(JIGGLYPUFF), - ANIM_CMD(WIGGLYTUFF), - ANIM_CMD(ZUBAT), - ANIM_CMD(GOLBAT), - ANIM_CMD(ODDISH), - ANIM_CMD(GLOOM), - ANIM_CMD(VILEPLUME), - ANIM_CMD(PARAS), - ANIM_CMD(PARASECT), - ANIM_CMD(VENONAT), - ANIM_CMD(VENOMOTH), - ANIM_CMD(DIGLETT), - ANIM_CMD(DUGTRIO), - ANIM_CMD(MEOWTH), - ANIM_CMD(PERSIAN), - ANIM_CMD(PSYDUCK), - ANIM_CMD(GOLDUCK), - ANIM_CMD(MANKEY), - ANIM_CMD(PRIMEAPE), - ANIM_CMD(GROWLITHE), - ANIM_CMD(ARCANINE), - ANIM_CMD(POLIWAG), - ANIM_CMD(POLIWHIRL), - ANIM_CMD(POLIWRATH), - ANIM_CMD(ABRA), - ANIM_CMD(KADABRA), - ANIM_CMD(ALAKAZAM), - ANIM_CMD(MACHOP), - ANIM_CMD(MACHOKE), - ANIM_CMD(MACHAMP), - ANIM_CMD(BELLSPROUT), - ANIM_CMD(WEEPINBELL), - ANIM_CMD(VICTREEBEL), - ANIM_CMD(TENTACOOL), - ANIM_CMD(TENTACRUEL), - ANIM_CMD(GEODUDE), - ANIM_CMD(GRAVELER), - ANIM_CMD(GOLEM), - ANIM_CMD(PONYTA), - ANIM_CMD(RAPIDASH), - ANIM_CMD(SLOWPOKE), - ANIM_CMD(SLOWBRO), - ANIM_CMD(MAGNEMITE), - ANIM_CMD(MAGNETON), - ANIM_CMD(FARFETCHD), - ANIM_CMD(DODUO), - ANIM_CMD(DODRIO), - ANIM_CMD(SEEL), - ANIM_CMD(DEWGONG), - ANIM_CMD(GRIMER), - ANIM_CMD(MUK), - ANIM_CMD(SHELLDER), - ANIM_CMD(CLOYSTER), - ANIM_CMD(GASTLY), - ANIM_CMD(HAUNTER), - ANIM_CMD(GENGAR), - ANIM_CMD(ONIX), - ANIM_CMD(DROWZEE), - ANIM_CMD(HYPNO), - ANIM_CMD(KRABBY), - ANIM_CMD(KINGLER), - ANIM_CMD(VOLTORB), - ANIM_CMD(ELECTRODE), - ANIM_CMD(EXEGGCUTE), - ANIM_CMD(EXEGGUTOR), - ANIM_CMD(CUBONE), - ANIM_CMD(MAROWAK), - ANIM_CMD(HITMONLEE), - ANIM_CMD(HITMONCHAN), - ANIM_CMD(LICKITUNG), - ANIM_CMD(KOFFING), - ANIM_CMD(WEEZING), - ANIM_CMD(RHYHORN), - ANIM_CMD(RHYDON), - ANIM_CMD(CHANSEY), - ANIM_CMD(TANGELA), - ANIM_CMD(KANGASKHAN), - ANIM_CMD(HORSEA), - ANIM_CMD(SEADRA), - ANIM_CMD(GOLDEEN), - ANIM_CMD(SEAKING), - ANIM_CMD(STARYU), - ANIM_CMD(STARMIE), - ANIM_CMD(MR_MIME), - ANIM_CMD(SCYTHER), - ANIM_CMD(JYNX), - ANIM_CMD(ELECTABUZZ), - ANIM_CMD(MAGMAR), - ANIM_CMD(PINSIR), - ANIM_CMD(TAUROS), - ANIM_CMD(MAGIKARP), - ANIM_CMD(GYARADOS), - ANIM_CMD(LAPRAS), - ANIM_CMD(DITTO), - ANIM_CMD(EEVEE), - ANIM_CMD(VAPOREON), - ANIM_CMD(JOLTEON), - ANIM_CMD(FLAREON), - ANIM_CMD(PORYGON), - ANIM_CMD(OMANYTE), - ANIM_CMD(OMASTAR), - ANIM_CMD(KABUTO), - ANIM_CMD(KABUTOPS), - ANIM_CMD(AERODACTYL), - ANIM_CMD(SNORLAX), - ANIM_CMD(ARTICUNO), - ANIM_CMD(ZAPDOS), - ANIM_CMD(MOLTRES), - ANIM_CMD(DRATINI), - ANIM_CMD(DRAGONAIR), - ANIM_CMD(DRAGONITE), - ANIM_CMD(MEWTWO), - ANIM_CMD(MEW), - ANIM_CMD(CHIKORITA), - ANIM_CMD(BAYLEEF), - ANIM_CMD(MEGANIUM), - ANIM_CMD(CYNDAQUIL), - ANIM_CMD(QUILAVA), - ANIM_CMD(TYPHLOSION), - ANIM_CMD(TOTODILE), - ANIM_CMD(CROCONAW), - ANIM_CMD(FERALIGATR), - ANIM_CMD(SENTRET), - ANIM_CMD(FURRET), - ANIM_CMD(HOOTHOOT), - ANIM_CMD(NOCTOWL), - ANIM_CMD(LEDYBA), - ANIM_CMD(LEDIAN), - ANIM_CMD(SPINARAK), - ANIM_CMD(ARIADOS), - ANIM_CMD(CROBAT), - ANIM_CMD(CHINCHOU), - ANIM_CMD(LANTURN), - ANIM_CMD(PICHU), - ANIM_CMD(CLEFFA), - ANIM_CMD(IGGLYBUFF), - ANIM_CMD(TOGEPI), - ANIM_CMD(TOGETIC), - ANIM_CMD(NATU), - ANIM_CMD(XATU), - ANIM_CMD(MAREEP), - ANIM_CMD(FLAAFFY), - ANIM_CMD(AMPHAROS), - ANIM_CMD(BELLOSSOM), - ANIM_CMD(MARILL), - ANIM_CMD(AZUMARILL), - ANIM_CMD(SUDOWOODO), - ANIM_CMD(POLITOED), - ANIM_CMD(HOPPIP), - ANIM_CMD(SKIPLOOM), - ANIM_CMD(JUMPLUFF), - ANIM_CMD(AIPOM), - ANIM_CMD(SUNKERN), - ANIM_CMD(SUNFLORA), - ANIM_CMD(YANMA), - ANIM_CMD(WOOPER), - ANIM_CMD(QUAGSIRE), - ANIM_CMD(ESPEON), - ANIM_CMD(UMBREON), - ANIM_CMD(MURKROW), - ANIM_CMD(SLOWKING), - ANIM_CMD(MISDREAVUS), - ANIM_CMD(UNOWN), - ANIM_CMD(WOBBUFFET), - ANIM_CMD(GIRAFARIG), - ANIM_CMD(PINECO), - ANIM_CMD(FORRETRESS), - ANIM_CMD(DUNSPARCE), - ANIM_CMD(GLIGAR), - ANIM_CMD(STEELIX), - ANIM_CMD(SNUBBULL), - ANIM_CMD(GRANBULL), - ANIM_CMD(QWILFISH), - ANIM_CMD(SCIZOR), - ANIM_CMD(SHUCKLE), - ANIM_CMD(HERACROSS), - ANIM_CMD(SNEASEL), - ANIM_CMD(TEDDIURSA), - ANIM_CMD(URSARING), - ANIM_CMD(SLUGMA), - ANIM_CMD(MAGCARGO), - ANIM_CMD(SWINUB), - ANIM_CMD(PILOSWINE), - ANIM_CMD(CORSOLA), - ANIM_CMD(REMORAID), - ANIM_CMD(OCTILLERY), - ANIM_CMD(DELIBIRD), - ANIM_CMD(MANTINE), - ANIM_CMD(SKARMORY), - ANIM_CMD(HOUNDOUR), - ANIM_CMD(HOUNDOOM), - ANIM_CMD(KINGDRA), - ANIM_CMD(PHANPY), - ANIM_CMD(DONPHAN), - ANIM_CMD(PORYGON2), - ANIM_CMD(STANTLER), - ANIM_CMD(SMEARGLE), - ANIM_CMD(TYROGUE), - ANIM_CMD(HITMONTOP), - ANIM_CMD(SMOOCHUM), - ANIM_CMD(ELEKID), - ANIM_CMD(MAGBY), - ANIM_CMD(MILTANK), - ANIM_CMD(BLISSEY), - ANIM_CMD(RAIKOU), - ANIM_CMD(ENTEI), - ANIM_CMD(SUICUNE), - ANIM_CMD(LARVITAR), - ANIM_CMD(PUPITAR), - ANIM_CMD(TYRANITAR), - ANIM_CMD(LUGIA), - ANIM_CMD(HO_OH), - ANIM_CMD(CELEBI), - ANIM_CMD(TREECKO), - ANIM_CMD(GROVYLE), - ANIM_CMD(SCEPTILE), - ANIM_CMD(TORCHIC), - ANIM_CMD(COMBUSKEN), - ANIM_CMD(BLAZIKEN), - ANIM_CMD(MUDKIP), - ANIM_CMD(MARSHTOMP), - ANIM_CMD(SWAMPERT), - ANIM_CMD(POOCHYENA), - ANIM_CMD(MIGHTYENA), - ANIM_CMD(ZIGZAGOON), - ANIM_CMD(LINOONE), - ANIM_CMD(WURMPLE), - ANIM_CMD(SILCOON), - ANIM_CMD(BEAUTIFLY), - ANIM_CMD(CASCOON), - ANIM_CMD(DUSTOX), - ANIM_CMD(LOTAD), - ANIM_CMD(LOMBRE), - ANIM_CMD(LUDICOLO), - ANIM_CMD(SEEDOT), - ANIM_CMD(NUZLEAF), - ANIM_CMD(SHIFTRY), - ANIM_CMD(NINCADA), - ANIM_CMD(NINJASK), - ANIM_CMD(SHEDINJA), - ANIM_CMD(TAILLOW), - ANIM_CMD(SWELLOW), - ANIM_CMD(SHROOMISH), - ANIM_CMD(BRELOOM), - ANIM_CMD(SPINDA), - ANIM_CMD(WINGULL), - ANIM_CMD(PELIPPER), - ANIM_CMD(SURSKIT), - ANIM_CMD(MASQUERAIN), - ANIM_CMD(WAILMER), - ANIM_CMD(WAILORD), - ANIM_CMD(SKITTY), - ANIM_CMD(DELCATTY), - ANIM_CMD(KECLEON), - ANIM_CMD(BALTOY), - ANIM_CMD(CLAYDOL), - ANIM_CMD(NOSEPASS), - ANIM_CMD(TORKOAL), - ANIM_CMD(SABLEYE), - ANIM_CMD(BARBOACH), - ANIM_CMD(WHISCASH), - ANIM_CMD(LUVDISC), - ANIM_CMD(CORPHISH), - ANIM_CMD(CRAWDAUNT), - ANIM_CMD(FEEBAS), - ANIM_CMD(MILOTIC), - ANIM_CMD(CARVANHA), - ANIM_CMD(SHARPEDO), - ANIM_CMD(TRAPINCH), - ANIM_CMD(VIBRAVA), - ANIM_CMD(FLYGON), - ANIM_CMD(MAKUHITA), - ANIM_CMD(HARIYAMA), - ANIM_CMD(ELECTRIKE), - ANIM_CMD(MANECTRIC), - ANIM_CMD(NUMEL), - ANIM_CMD(CAMERUPT), - ANIM_CMD(SPHEAL), - ANIM_CMD(SEALEO), - ANIM_CMD(WALREIN), - ANIM_CMD(CACNEA), - ANIM_CMD(CACTURNE), - ANIM_CMD(SNORUNT), - ANIM_CMD(GLALIE), - ANIM_CMD(LUNATONE), - ANIM_CMD(SOLROCK), - ANIM_CMD(AZURILL), - ANIM_CMD(SPOINK), - ANIM_CMD(GRUMPIG), - ANIM_CMD(PLUSLE), - ANIM_CMD(MINUN), - ANIM_CMD(MAWILE), - ANIM_CMD(MEDITITE), - ANIM_CMD(MEDICHAM), - ANIM_CMD(SWABLU), - ANIM_CMD(ALTARIA), - ANIM_CMD(WYNAUT), - ANIM_CMD(DUSKULL), - ANIM_CMD(DUSCLOPS), - ANIM_CMD(ROSELIA), - ANIM_CMD(SLAKOTH), - ANIM_CMD(VIGOROTH), - ANIM_CMD(SLAKING), - ANIM_CMD(GULPIN), - ANIM_CMD(SWALOT), - ANIM_CMD(TROPIUS), - ANIM_CMD(WHISMUR), - ANIM_CMD(LOUDRED), - ANIM_CMD(EXPLOUD), - ANIM_CMD(CLAMPERL), - ANIM_CMD(HUNTAIL), - ANIM_CMD(GOREBYSS), - ANIM_CMD(ABSOL), - ANIM_CMD(SHUPPET), - ANIM_CMD(BANETTE), - ANIM_CMD(SEVIPER), - ANIM_CMD(ZANGOOSE), - ANIM_CMD(RELICANTH), - ANIM_CMD(ARON), - ANIM_CMD(LAIRON), - ANIM_CMD(AGGRON), - ANIM_CMD(CASTFORM), - ANIM_CMD(VOLBEAT), - ANIM_CMD(ILLUMISE), - ANIM_CMD(LILEEP), - ANIM_CMD(CRADILY), - ANIM_CMD(ANORITH), - ANIM_CMD(ARMALDO), - ANIM_CMD(RALTS), - ANIM_CMD(KIRLIA), - ANIM_CMD(GARDEVOIR), - ANIM_CMD(BAGON), - ANIM_CMD(SHELGON), - ANIM_CMD(SALAMENCE), - ANIM_CMD(BELDUM), - ANIM_CMD(METANG), - ANIM_CMD(METAGROSS), - ANIM_CMD(REGIROCK), - ANIM_CMD(REGICE), - ANIM_CMD(REGISTEEL), - ANIM_CMD(KYOGRE), - ANIM_CMD(GROUDON), - ANIM_CMD(RAYQUAZA), - ANIM_CMD(LATIAS), - ANIM_CMD(LATIOS), - ANIM_CMD(JIRACHI), - ANIM_CMD(DEOXYS), - ANIM_CMD(CHIMECHO), + [SPECIES_NONE] = sAnims_None, + [SPECIES_BULBASAUR] = sAnims_Bulbasaur, + [SPECIES_IVYSAUR] = sAnims_Ivysaur, + [SPECIES_VENUSAUR] = sAnims_Venusaur, + [SPECIES_CHARMANDER] = sAnims_Charmander, + [SPECIES_CHARMELEON] = sAnims_Charmeleon, + [SPECIES_CHARIZARD] = sAnims_Charizard, + [SPECIES_SQUIRTLE] = sAnims_Squirtle, + [SPECIES_WARTORTLE] = sAnims_Wartortle, + [SPECIES_BLASTOISE] = sAnims_Blastoise, + [SPECIES_CATERPIE] = sAnims_Caterpie, + [SPECIES_METAPOD] = sAnims_Metapod, + [SPECIES_BUTTERFREE] = sAnims_Butterfree, + [SPECIES_WEEDLE] = sAnims_Weedle, + [SPECIES_KAKUNA] = sAnims_Kakuna, + [SPECIES_BEEDRILL] = sAnims_Beedrill, + [SPECIES_PIDGEY] = sAnims_Pidgey, + [SPECIES_PIDGEOTTO] = sAnims_Pidgeotto, + [SPECIES_PIDGEOT] = sAnims_Pidgeot, + [SPECIES_RATTATA] = sAnims_Rattata, + [SPECIES_RATICATE] = sAnims_Raticate, + [SPECIES_SPEAROW] = sAnims_Spearow, + [SPECIES_FEAROW] = sAnims_Fearow, + [SPECIES_EKANS] = sAnims_Ekans, + [SPECIES_ARBOK] = sAnims_Arbok, + [SPECIES_PIKACHU] = sAnims_Pikachu, + [SPECIES_RAICHU] = sAnims_Raichu, + [SPECIES_SANDSHREW] = sAnims_Sandshrew, + [SPECIES_SANDSLASH] = sAnims_Sandslash, + [SPECIES_NIDORAN_F] = sAnims_NidoranF, + [SPECIES_NIDORINA] = sAnims_Nidorina, + [SPECIES_NIDOQUEEN] = sAnims_Nidoqueen, + [SPECIES_NIDORAN_M] = sAnims_NidoranM, + [SPECIES_NIDORINO] = sAnims_Nidorino, + [SPECIES_NIDOKING] = sAnims_Nidoking, + [SPECIES_CLEFAIRY] = sAnims_Clefairy, + [SPECIES_CLEFABLE] = sAnims_Clefable, + [SPECIES_VULPIX] = sAnims_Vulpix, + [SPECIES_NINETALES] = sAnims_Ninetales, + [SPECIES_JIGGLYPUFF] = sAnims_Jigglypuff, + [SPECIES_WIGGLYTUFF] = sAnims_Wigglytuff, + [SPECIES_ZUBAT] = sAnims_Zubat, + [SPECIES_GOLBAT] = sAnims_Golbat, + [SPECIES_ODDISH] = sAnims_Oddish, + [SPECIES_GLOOM] = sAnims_Gloom, + [SPECIES_VILEPLUME] = sAnims_Vileplume, + [SPECIES_PARAS] = sAnims_Paras, + [SPECIES_PARASECT] = sAnims_Parasect, + [SPECIES_VENONAT] = sAnims_Venonat, + [SPECIES_VENOMOTH] = sAnims_Venomoth, + [SPECIES_DIGLETT] = sAnims_Diglett, + [SPECIES_DUGTRIO] = sAnims_Dugtrio, + [SPECIES_MEOWTH] = sAnims_Meowth, + [SPECIES_PERSIAN] = sAnims_Persian, + [SPECIES_PSYDUCK] = sAnims_Psyduck, + [SPECIES_GOLDUCK] = sAnims_Golduck, + [SPECIES_MANKEY] = sAnims_Mankey, + [SPECIES_PRIMEAPE] = sAnims_Primeape, + [SPECIES_GROWLITHE] = sAnims_Growlithe, + [SPECIES_ARCANINE] = sAnims_Arcanine, + [SPECIES_POLIWAG] = sAnims_Poliwag, + [SPECIES_POLIWHIRL] = sAnims_Poliwhirl, + [SPECIES_POLIWRATH] = sAnims_Poliwrath, + [SPECIES_ABRA] = sAnims_Abra, + [SPECIES_KADABRA] = sAnims_Kadabra, + [SPECIES_ALAKAZAM] = sAnims_Alakazam, + [SPECIES_MACHOP] = sAnims_Machop, + [SPECIES_MACHOKE] = sAnims_Machoke, + [SPECIES_MACHAMP] = sAnims_Machamp, + [SPECIES_BELLSPROUT] = sAnims_Bellsprout, + [SPECIES_WEEPINBELL] = sAnims_Weepinbell, + [SPECIES_VICTREEBEL] = sAnims_Victreebel, + [SPECIES_TENTACOOL] = sAnims_Tentacool, + [SPECIES_TENTACRUEL] = sAnims_Tentacruel, + [SPECIES_GEODUDE] = sAnims_Geodude, + [SPECIES_GRAVELER] = sAnims_Graveler, + [SPECIES_GOLEM] = sAnims_Golem, + [SPECIES_PONYTA] = sAnims_Ponyta, + [SPECIES_RAPIDASH] = sAnims_Rapidash, + [SPECIES_SLOWPOKE] = sAnims_Slowpoke, + [SPECIES_SLOWBRO] = sAnims_Slowbro, + [SPECIES_MAGNEMITE] = sAnims_Magnemite, + [SPECIES_MAGNETON] = sAnims_Magneton, + [SPECIES_FARFETCHD] = sAnims_Farfetchd, + [SPECIES_DODUO] = sAnims_Doduo, + [SPECIES_DODRIO] = sAnims_Dodrio, + [SPECIES_SEEL] = sAnims_Seel, + [SPECIES_DEWGONG] = sAnims_Dewgong, + [SPECIES_GRIMER] = sAnims_Grimer, + [SPECIES_MUK] = sAnims_Muk, + [SPECIES_SHELLDER] = sAnims_Shellder, + [SPECIES_CLOYSTER] = sAnims_Cloyster, + [SPECIES_GASTLY] = sAnims_Gastly, + [SPECIES_HAUNTER] = sAnims_Haunter, + [SPECIES_GENGAR] = sAnims_Gengar, + [SPECIES_ONIX] = sAnims_Onix, + [SPECIES_DROWZEE] = sAnims_Drowzee, + [SPECIES_HYPNO] = sAnims_Hypno, + [SPECIES_KRABBY] = sAnims_Krabby, + [SPECIES_KINGLER] = sAnims_Kingler, + [SPECIES_VOLTORB] = sAnims_Voltorb, + [SPECIES_ELECTRODE] = sAnims_Electrode, + [SPECIES_EXEGGCUTE] = sAnims_Exeggcute, + [SPECIES_EXEGGUTOR] = sAnims_Exeggutor, + [SPECIES_CUBONE] = sAnims_Cubone, + [SPECIES_MAROWAK] = sAnims_Marowak, + [SPECIES_HITMONLEE] = sAnims_Hitmonlee, + [SPECIES_HITMONCHAN] = sAnims_Hitmonchan, + [SPECIES_LICKITUNG] = sAnims_Lickitung, + [SPECIES_KOFFING] = sAnims_Koffing, + [SPECIES_WEEZING] = sAnims_Weezing, + [SPECIES_RHYHORN] = sAnims_Rhyhorn, + [SPECIES_RHYDON] = sAnims_Rhydon, + [SPECIES_CHANSEY] = sAnims_Chansey, + [SPECIES_TANGELA] = sAnims_Tangela, + [SPECIES_KANGASKHAN] = sAnims_Kangaskhan, + [SPECIES_HORSEA] = sAnims_Horsea, + [SPECIES_SEADRA] = sAnims_Seadra, + [SPECIES_GOLDEEN] = sAnims_Goldeen, + [SPECIES_SEAKING] = sAnims_Seaking, + [SPECIES_STARYU] = sAnims_Staryu, + [SPECIES_STARMIE] = sAnims_Starmie, + [SPECIES_MR_MIME] = sAnims_MrMime, + [SPECIES_SCYTHER] = sAnims_Scyther, + [SPECIES_JYNX] = sAnims_Jynx, + [SPECIES_ELECTABUZZ] = sAnims_Electabuzz, + [SPECIES_MAGMAR] = sAnims_Magmar, + [SPECIES_PINSIR] = sAnims_Pinsir, + [SPECIES_TAUROS] = sAnims_Tauros, + [SPECIES_MAGIKARP] = sAnims_Magikarp, + [SPECIES_GYARADOS] = sAnims_Gyarados, + [SPECIES_LAPRAS] = sAnims_Lapras, + [SPECIES_DITTO] = sAnims_Ditto, + [SPECIES_EEVEE] = sAnims_Eevee, + [SPECIES_VAPOREON] = sAnims_Vaporeon, + [SPECIES_JOLTEON] = sAnims_Jolteon, + [SPECIES_FLAREON] = sAnims_Flareon, + [SPECIES_PORYGON] = sAnims_Porygon, + [SPECIES_OMANYTE] = sAnims_Omanyte, + [SPECIES_OMASTAR] = sAnims_Omastar, + [SPECIES_KABUTO] = sAnims_Kabuto, + [SPECIES_KABUTOPS] = sAnims_Kabutops, + [SPECIES_AERODACTYL] = sAnims_Aerodactyl, + [SPECIES_SNORLAX] = sAnims_Snorlax, + [SPECIES_ARTICUNO] = sAnims_Articuno, + [SPECIES_ZAPDOS] = sAnims_Zapdos, + [SPECIES_MOLTRES] = sAnims_Moltres, + [SPECIES_DRATINI] = sAnims_Dratini, + [SPECIES_DRAGONAIR] = sAnims_Dragonair, + [SPECIES_DRAGONITE] = sAnims_Dragonite, + [SPECIES_MEWTWO] = sAnims_Mewtwo, + [SPECIES_MEW] = sAnims_Mew, + [SPECIES_CHIKORITA] = sAnims_Chikorita, + [SPECIES_BAYLEEF] = sAnims_Bayleef, + [SPECIES_MEGANIUM] = sAnims_Meganium, + [SPECIES_CYNDAQUIL] = sAnims_Cyndaquil, + [SPECIES_QUILAVA] = sAnims_Quilava, + [SPECIES_TYPHLOSION] = sAnims_Typhlosion, + [SPECIES_TOTODILE] = sAnims_Totodile, + [SPECIES_CROCONAW] = sAnims_Croconaw, + [SPECIES_FERALIGATR] = sAnims_Feraligatr, + [SPECIES_SENTRET] = sAnims_Sentret, + [SPECIES_FURRET] = sAnims_Furret, + [SPECIES_HOOTHOOT] = sAnims_Hoothoot, + [SPECIES_NOCTOWL] = sAnims_Noctowl, + [SPECIES_LEDYBA] = sAnims_Ledyba, + [SPECIES_LEDIAN] = sAnims_Ledian, + [SPECIES_SPINARAK] = sAnims_Spinarak, + [SPECIES_ARIADOS] = sAnims_Ariados, + [SPECIES_CROBAT] = sAnims_Crobat, + [SPECIES_CHINCHOU] = sAnims_Chinchou, + [SPECIES_LANTURN] = sAnims_Lanturn, + [SPECIES_PICHU] = sAnims_Pichu, + [SPECIES_CLEFFA] = sAnims_Cleffa, + [SPECIES_IGGLYBUFF] = sAnims_Igglybuff, + [SPECIES_TOGEPI] = sAnims_Togepi, + [SPECIES_TOGETIC] = sAnims_Togetic, + [SPECIES_NATU] = sAnims_Natu, + [SPECIES_XATU] = sAnims_Xatu, + [SPECIES_MAREEP] = sAnims_Mareep, + [SPECIES_FLAAFFY] = sAnims_Flaaffy, + [SPECIES_AMPHAROS] = sAnims_Ampharos, + [SPECIES_BELLOSSOM] = sAnims_Bellossom, + [SPECIES_MARILL] = sAnims_Marill, + [SPECIES_AZUMARILL] = sAnims_Azumarill, + [SPECIES_SUDOWOODO] = sAnims_Sudowoodo, + [SPECIES_POLITOED] = sAnims_Politoed, + [SPECIES_HOPPIP] = sAnims_Hoppip, + [SPECIES_SKIPLOOM] = sAnims_Skiploom, + [SPECIES_JUMPLUFF] = sAnims_Jumpluff, + [SPECIES_AIPOM] = sAnims_Aipom, + [SPECIES_SUNKERN] = sAnims_Sunkern, + [SPECIES_SUNFLORA] = sAnims_Sunflora, + [SPECIES_YANMA] = sAnims_Yanma, + [SPECIES_WOOPER] = sAnims_Wooper, + [SPECIES_QUAGSIRE] = sAnims_Quagsire, + [SPECIES_ESPEON] = sAnims_Espeon, + [SPECIES_UMBREON] = sAnims_Umbreon, + [SPECIES_MURKROW] = sAnims_Murkrow, + [SPECIES_SLOWKING] = sAnims_Slowking, + [SPECIES_MISDREAVUS] = sAnims_Misdreavus, + [SPECIES_UNOWN] = sAnims_Unown, + [SPECIES_WOBBUFFET] = sAnims_Wobbuffet, + [SPECIES_GIRAFARIG] = sAnims_Girafarig, + [SPECIES_PINECO] = sAnims_Pineco, + [SPECIES_FORRETRESS] = sAnims_Forretress, + [SPECIES_DUNSPARCE] = sAnims_Dunsparce, + [SPECIES_GLIGAR] = sAnims_Gligar, + [SPECIES_STEELIX] = sAnims_Steelix, + [SPECIES_SNUBBULL] = sAnims_Snubbull, + [SPECIES_GRANBULL] = sAnims_Granbull, + [SPECIES_QWILFISH] = sAnims_Qwilfish, + [SPECIES_SCIZOR] = sAnims_Scizor, + [SPECIES_SHUCKLE] = sAnims_Shuckle, + [SPECIES_HERACROSS] = sAnims_Heracross, + [SPECIES_SNEASEL] = sAnims_Sneasel, + [SPECIES_TEDDIURSA] = sAnims_Teddiursa, + [SPECIES_URSARING] = sAnims_Ursaring, + [SPECIES_SLUGMA] = sAnims_Slugma, + [SPECIES_MAGCARGO] = sAnims_Magcargo, + [SPECIES_SWINUB] = sAnims_Swinub, + [SPECIES_PILOSWINE] = sAnims_Piloswine, + [SPECIES_CORSOLA] = sAnims_Corsola, + [SPECIES_REMORAID] = sAnims_Remoraid, + [SPECIES_OCTILLERY] = sAnims_Octillery, + [SPECIES_DELIBIRD] = sAnims_Delibird, + [SPECIES_MANTINE] = sAnims_Mantine, + [SPECIES_SKARMORY] = sAnims_Skarmory, + [SPECIES_HOUNDOUR] = sAnims_Houndour, + [SPECIES_HOUNDOOM] = sAnims_Houndoom, + [SPECIES_KINGDRA] = sAnims_Kingdra, + [SPECIES_PHANPY] = sAnims_Phanpy, + [SPECIES_DONPHAN] = sAnims_Donphan, + [SPECIES_PORYGON2] = sAnims_Porygon2, + [SPECIES_STANTLER] = sAnims_Stantler, + [SPECIES_SMEARGLE] = sAnims_Smeargle, + [SPECIES_TYROGUE] = sAnims_Tyrogue, + [SPECIES_HITMONTOP] = sAnims_Hitmontop, + [SPECIES_SMOOCHUM] = sAnims_Smoochum, + [SPECIES_ELEKID] = sAnims_Elekid, + [SPECIES_MAGBY] = sAnims_Magby, + [SPECIES_MILTANK] = sAnims_Miltank, + [SPECIES_BLISSEY] = sAnims_Blissey, + [SPECIES_RAIKOU] = sAnims_Raikou, + [SPECIES_ENTEI] = sAnims_Entei, + [SPECIES_SUICUNE] = sAnims_Suicune, + [SPECIES_LARVITAR] = sAnims_Larvitar, + [SPECIES_PUPITAR] = sAnims_Pupitar, + [SPECIES_TYRANITAR] = sAnims_Tyranitar, + [SPECIES_LUGIA] = sAnims_Lugia, + [SPECIES_HO_OH] = sAnims_HoOh, + [SPECIES_CELEBI] = sAnims_Celebi, + [SPECIES_TREECKO] = sAnims_Treecko, + [SPECIES_GROVYLE] = sAnims_Grovyle, + [SPECIES_SCEPTILE] = sAnims_Sceptile, + [SPECIES_TORCHIC] = sAnims_Torchic, + [SPECIES_COMBUSKEN] = sAnims_Combusken, + [SPECIES_BLAZIKEN] = sAnims_Blaziken, + [SPECIES_MUDKIP] = sAnims_Mudkip, + [SPECIES_MARSHTOMP] = sAnims_Marshtomp, + [SPECIES_SWAMPERT] = sAnims_Swampert, + [SPECIES_POOCHYENA] = sAnims_Poochyena, + [SPECIES_MIGHTYENA] = sAnims_Mightyena, + [SPECIES_ZIGZAGOON] = sAnims_Zigzagoon, + [SPECIES_LINOONE] = sAnims_Linoone, + [SPECIES_WURMPLE] = sAnims_Wurmple, + [SPECIES_SILCOON] = sAnims_Silcoon, + [SPECIES_BEAUTIFLY] = sAnims_Beautifly, + [SPECIES_CASCOON] = sAnims_Cascoon, + [SPECIES_DUSTOX] = sAnims_Dustox, + [SPECIES_LOTAD] = sAnims_Lotad, + [SPECIES_LOMBRE] = sAnims_Lombre, + [SPECIES_LUDICOLO] = sAnims_Ludicolo, + [SPECIES_SEEDOT] = sAnims_Seedot, + [SPECIES_NUZLEAF] = sAnims_Nuzleaf, + [SPECIES_SHIFTRY] = sAnims_Shiftry, + [SPECIES_NINCADA] = sAnims_Nincada, + [SPECIES_NINJASK] = sAnims_Ninjask, + [SPECIES_SHEDINJA] = sAnims_Shedinja, + [SPECIES_TAILLOW] = sAnims_Taillow, + [SPECIES_SWELLOW] = sAnims_Swellow, + [SPECIES_SHROOMISH] = sAnims_Shroomish, + [SPECIES_BRELOOM] = sAnims_Breloom, + [SPECIES_SPINDA] = sAnims_Spinda, + [SPECIES_WINGULL] = sAnims_Wingull, + [SPECIES_PELIPPER] = sAnims_Pelipper, + [SPECIES_SURSKIT] = sAnims_Surskit, + [SPECIES_MASQUERAIN] = sAnims_Masquerain, + [SPECIES_WAILMER] = sAnims_Wailmer, + [SPECIES_WAILORD] = sAnims_Wailord, + [SPECIES_SKITTY] = sAnims_Skitty, + [SPECIES_DELCATTY] = sAnims_Delcatty, + [SPECIES_KECLEON] = sAnims_Kecleon, + [SPECIES_BALTOY] = sAnims_Baltoy, + [SPECIES_CLAYDOL] = sAnims_Claydol, + [SPECIES_NOSEPASS] = sAnims_Nosepass, + [SPECIES_TORKOAL] = sAnims_Torkoal, + [SPECIES_SABLEYE] = sAnims_Sableye, + [SPECIES_BARBOACH] = sAnims_Barboach, + [SPECIES_WHISCASH] = sAnims_Whiscash, + [SPECIES_LUVDISC] = sAnims_Luvdisc, + [SPECIES_CORPHISH] = sAnims_Corphish, + [SPECIES_CRAWDAUNT] = sAnims_Crawdaunt, + [SPECIES_FEEBAS] = sAnims_Feebas, + [SPECIES_MILOTIC] = sAnims_Milotic, + [SPECIES_CARVANHA] = sAnims_Carvanha, + [SPECIES_SHARPEDO] = sAnims_Sharpedo, + [SPECIES_TRAPINCH] = sAnims_Trapinch, + [SPECIES_VIBRAVA] = sAnims_Vibrava, + [SPECIES_FLYGON] = sAnims_Flygon, + [SPECIES_MAKUHITA] = sAnims_Makuhita, + [SPECIES_HARIYAMA] = sAnims_Hariyama, + [SPECIES_ELECTRIKE] = sAnims_Electrike, + [SPECIES_MANECTRIC] = sAnims_Manectric, + [SPECIES_NUMEL] = sAnims_Numel, + [SPECIES_CAMERUPT] = sAnims_Camerupt, + [SPECIES_SPHEAL] = sAnims_Spheal, + [SPECIES_SEALEO] = sAnims_Sealeo, + [SPECIES_WALREIN] = sAnims_Walrein, + [SPECIES_CACNEA] = sAnims_Cacnea, + [SPECIES_CACTURNE] = sAnims_Cacturne, + [SPECIES_SNORUNT] = sAnims_Snorunt, + [SPECIES_GLALIE] = sAnims_Glalie, + [SPECIES_LUNATONE] = sAnims_Lunatone, + [SPECIES_SOLROCK] = sAnims_Solrock, + [SPECIES_AZURILL] = sAnims_Azurill, + [SPECIES_SPOINK] = sAnims_Spoink, + [SPECIES_GRUMPIG] = sAnims_Grumpig, + [SPECIES_PLUSLE] = sAnims_Plusle, + [SPECIES_MINUN] = sAnims_Minun, + [SPECIES_MAWILE] = sAnims_Mawile, + [SPECIES_MEDITITE] = sAnims_Meditite, + [SPECIES_MEDICHAM] = sAnims_Medicham, + [SPECIES_SWABLU] = sAnims_Swablu, + [SPECIES_ALTARIA] = sAnims_Altaria, + [SPECIES_WYNAUT] = sAnims_Wynaut, + [SPECIES_DUSKULL] = sAnims_Duskull, + [SPECIES_DUSCLOPS] = sAnims_Dusclops, + [SPECIES_ROSELIA] = sAnims_Roselia, + [SPECIES_SLAKOTH] = sAnims_Slakoth, + [SPECIES_VIGOROTH] = sAnims_Vigoroth, + [SPECIES_SLAKING] = sAnims_Slaking, + [SPECIES_GULPIN] = sAnims_Gulpin, + [SPECIES_SWALOT] = sAnims_Swalot, + [SPECIES_TROPIUS] = sAnims_Tropius, + [SPECIES_WHISMUR] = sAnims_Whismur, + [SPECIES_LOUDRED] = sAnims_Loudred, + [SPECIES_EXPLOUD] = sAnims_Exploud, + [SPECIES_CLAMPERL] = sAnims_Clamperl, + [SPECIES_HUNTAIL] = sAnims_Huntail, + [SPECIES_GOREBYSS] = sAnims_Gorebyss, + [SPECIES_ABSOL] = sAnims_Absol, + [SPECIES_SHUPPET] = sAnims_Shuppet, + [SPECIES_BANETTE] = sAnims_Banette, + [SPECIES_SEVIPER] = sAnims_Seviper, + [SPECIES_ZANGOOSE] = sAnims_Zangoose, + [SPECIES_RELICANTH] = sAnims_Relicanth, + [SPECIES_ARON] = sAnims_Aron, + [SPECIES_LAIRON] = sAnims_Lairon, + [SPECIES_AGGRON] = sAnims_Aggron, + [SPECIES_CASTFORM] = sAnims_Castform, + [SPECIES_VOLBEAT] = sAnims_Volbeat, + [SPECIES_ILLUMISE] = sAnims_Illumise, + [SPECIES_LILEEP] = sAnims_Lileep, + [SPECIES_CRADILY] = sAnims_Cradily, + [SPECIES_ANORITH] = sAnims_Anorith, + [SPECIES_ARMALDO] = sAnims_Armaldo, + [SPECIES_RALTS] = sAnims_Ralts, + [SPECIES_KIRLIA] = sAnims_Kirlia, + [SPECIES_GARDEVOIR] = sAnims_Gardevoir, + [SPECIES_BAGON] = sAnims_Bagon, + [SPECIES_SHELGON] = sAnims_Shelgon, + [SPECIES_SALAMENCE] = sAnims_Salamence, + [SPECIES_BELDUM] = sAnims_Beldum, + [SPECIES_METANG] = sAnims_Metang, + [SPECIES_METAGROSS] = sAnims_Metagross, + [SPECIES_REGIROCK] = sAnims_Regirock, + [SPECIES_REGICE] = sAnims_Regice, + [SPECIES_REGISTEEL] = sAnims_Registeel, + [SPECIES_KYOGRE] = sAnims_Kyogre, + [SPECIES_GROUDON] = sAnims_Groudon, + [SPECIES_RAYQUAZA] = sAnims_Rayquaza, + [SPECIES_LATIAS] = sAnims_Latias, + [SPECIES_LATIOS] = sAnims_Latios, + [SPECIES_JIRACHI] = sAnims_Jirachi, + [SPECIES_DEOXYS] = sAnims_Deoxys, + [SPECIES_CHIMECHO] = sAnims_Chimecho, #if P_GEN_4_POKEMON == TRUE - ANIM_CMD(TURTWIG), - ANIM_CMD(GROTLE), - ANIM_CMD(TORTERRA), - ANIM_CMD(CHIMCHAR), - ANIM_CMD(MONFERNO), - ANIM_CMD(INFERNAPE), - ANIM_CMD(PIPLUP), - ANIM_CMD(PRINPLUP), - ANIM_CMD(EMPOLEON), - ANIM_CMD(STARLY), - ANIM_CMD(STARAVIA), - ANIM_CMD(STARAPTOR), - ANIM_CMD(BIDOOF), - ANIM_CMD(BIBAREL), - ANIM_CMD(KRICKETOT), - ANIM_CMD(KRICKETUNE), - ANIM_CMD(SHINX), - ANIM_CMD(LUXIO), - ANIM_CMD(LUXRAY), - ANIM_CMD(BUDEW), - ANIM_CMD(ROSERADE), - ANIM_CMD(CRANIDOS), - ANIM_CMD(RAMPARDOS), - ANIM_CMD(SHIELDON), - ANIM_CMD(BASTIODON), - ANIM_CMD(BURMY), - ANIM_CMD(WORMADAM), - ANIM_CMD(MOTHIM), - ANIM_CMD(COMBEE), - ANIM_CMD(VESPIQUEN), - ANIM_CMD(PACHIRISU), - ANIM_CMD(BUIZEL), - ANIM_CMD(FLOATZEL), - ANIM_CMD(CHERUBI), - ANIM_CMD(CHERRIM), - ANIM_CMD(SHELLOS), - ANIM_CMD(GASTRODON), - ANIM_CMD(AMBIPOM), - ANIM_CMD(DRIFLOON), - ANIM_CMD(DRIFBLIM), - ANIM_CMD(BUNEARY), - ANIM_CMD(LOPUNNY), - ANIM_CMD(MISMAGIUS), - ANIM_CMD(HONCHKROW), - ANIM_CMD(GLAMEOW), - ANIM_CMD(PURUGLY), - ANIM_CMD(CHINGLING), - ANIM_CMD(STUNKY), - ANIM_CMD(SKUNTANK), - ANIM_CMD(BRONZOR), - ANIM_CMD(BRONZONG), - ANIM_CMD(BONSLY), - ANIM_CMD(MIME_JR), - ANIM_CMD(HAPPINY), - ANIM_CMD(CHATOT), - ANIM_CMD(SPIRITOMB), - ANIM_CMD(GIBLE), - ANIM_CMD(GABITE), - ANIM_CMD(GARCHOMP), - ANIM_CMD(MUNCHLAX), - ANIM_CMD(RIOLU), - ANIM_CMD(LUCARIO), - ANIM_CMD(HIPPOPOTAS), - ANIM_CMD(HIPPOWDON), - ANIM_CMD(SKORUPI), - ANIM_CMD(DRAPION), - ANIM_CMD(CROAGUNK), - ANIM_CMD(TOXICROAK), - ANIM_CMD(CARNIVINE), - ANIM_CMD(FINNEON), - ANIM_CMD(LUMINEON), - ANIM_CMD(MANTYKE), - ANIM_CMD(SNOVER), - ANIM_CMD(ABOMASNOW), - ANIM_CMD(WEAVILE), - ANIM_CMD(MAGNEZONE), - ANIM_CMD(LICKILICKY), - ANIM_CMD(RHYPERIOR), - ANIM_CMD(TANGROWTH), - ANIM_CMD(ELECTIVIRE), - ANIM_CMD(MAGMORTAR), - ANIM_CMD(TOGEKISS), - ANIM_CMD(YANMEGA), - ANIM_CMD(LEAFEON), - ANIM_CMD(GLACEON), - ANIM_CMD(GLISCOR), - ANIM_CMD(MAMOSWINE), - ANIM_CMD(PORYGON_Z), - ANIM_CMD(GALLADE), - ANIM_CMD(PROBOPASS), - ANIM_CMD(DUSKNOIR), - ANIM_CMD(FROSLASS), - ANIM_CMD(ROTOM), - ANIM_CMD(UXIE), - ANIM_CMD(MESPRIT), - ANIM_CMD(AZELF), - ANIM_CMD(DIALGA), - ANIM_CMD(PALKIA), - ANIM_CMD(HEATRAN), - ANIM_CMD(REGIGIGAS), - ANIM_CMD(GIRATINA), - ANIM_CMD(CRESSELIA), - ANIM_CMD(PHIONE), - ANIM_CMD(MANAPHY), - ANIM_CMD(DARKRAI), - ANIM_CMD(SHAYMIN), - ANIM_CMD(ARCEUS), + [SPECIES_TURTWIG] = sAnims_Turtwig, + [SPECIES_GROTLE] = sAnims_Grotle, + [SPECIES_TORTERRA] = sAnims_Torterra, + [SPECIES_CHIMCHAR] = sAnims_Chimchar, + [SPECIES_MONFERNO] = sAnims_Monferno, + [SPECIES_INFERNAPE] = sAnims_Infernape, + [SPECIES_PIPLUP] = sAnims_Piplup, + [SPECIES_PRINPLUP] = sAnims_Prinplup, + [SPECIES_EMPOLEON] = sAnims_Empoleon, + [SPECIES_STARLY] = sAnims_Starly, + [SPECIES_STARAVIA] = sAnims_Staravia, + [SPECIES_STARAPTOR] = sAnims_Staraptor, + [SPECIES_BIDOOF] = sAnims_Bidoof, + [SPECIES_BIBAREL] = sAnims_Bibarel, + [SPECIES_KRICKETOT] = sAnims_Kricketot, + [SPECIES_KRICKETUNE] = sAnims_Kricketune, + [SPECIES_SHINX] = sAnims_Shinx, + [SPECIES_LUXIO] = sAnims_Luxio, + [SPECIES_LUXRAY] = sAnims_Luxray, + [SPECIES_BUDEW] = sAnims_Budew, + [SPECIES_ROSERADE] = sAnims_Roserade, + [SPECIES_CRANIDOS] = sAnims_Cranidos, + [SPECIES_RAMPARDOS] = sAnims_Rampardos, + [SPECIES_SHIELDON] = sAnims_Shieldon, + [SPECIES_BASTIODON] = sAnims_Bastiodon, + [SPECIES_BURMY] = sAnims_Burmy, + [SPECIES_WORMADAM] = sAnims_Wormadam, + [SPECIES_MOTHIM] = sAnims_Mothim, + [SPECIES_COMBEE] = sAnims_Combee, + [SPECIES_VESPIQUEN] = sAnims_Vespiquen, + [SPECIES_PACHIRISU] = sAnims_Pachirisu, + [SPECIES_BUIZEL] = sAnims_Buizel, + [SPECIES_FLOATZEL] = sAnims_Floatzel, + [SPECIES_CHERUBI] = sAnims_Cherubi, + [SPECIES_CHERRIM] = sAnims_CherrimOvercast, + [SPECIES_SHELLOS] = sAnims_Shellos, + [SPECIES_GASTRODON] = sAnims_Gastrodon, + [SPECIES_AMBIPOM] = sAnims_Ambipom, + [SPECIES_DRIFLOON] = sAnims_Drifloon, + [SPECIES_DRIFBLIM] = sAnims_Drifblim, + [SPECIES_BUNEARY] = sAnims_Buneary, + [SPECIES_LOPUNNY] = sAnims_Lopunny, + [SPECIES_MISMAGIUS] = sAnims_Mismagius, + [SPECIES_HONCHKROW] = sAnims_Honchkrow, + [SPECIES_GLAMEOW] = sAnims_Glameow, + [SPECIES_PURUGLY] = sAnims_Purugly, + [SPECIES_CHINGLING] = sAnims_Chingling, + [SPECIES_STUNKY] = sAnims_Stunky, + [SPECIES_SKUNTANK] = sAnims_Skuntank, + [SPECIES_BRONZOR] = sAnims_Bronzor, + [SPECIES_BRONZONG] = sAnims_Bronzong, + [SPECIES_BONSLY] = sAnims_Bonsly, + [SPECIES_MIME_JR] = sAnims_MimeJr, + [SPECIES_HAPPINY] = sAnims_Happiny, + [SPECIES_CHATOT] = sAnims_Chatot, + [SPECIES_SPIRITOMB] = sAnims_Spiritomb, + [SPECIES_GIBLE] = sAnims_Gible, + [SPECIES_GABITE] = sAnims_Gabite, + [SPECIES_GARCHOMP] = sAnims_Garchomp, + [SPECIES_MUNCHLAX] = sAnims_Munchlax, + [SPECIES_RIOLU] = sAnims_Riolu, + [SPECIES_LUCARIO] = sAnims_Lucario, + [SPECIES_HIPPOPOTAS] = sAnims_Hippopotas, + [SPECIES_HIPPOWDON] = sAnims_Hippowdon, + [SPECIES_SKORUPI] = sAnims_Skorupi, + [SPECIES_DRAPION] = sAnims_Drapion, + [SPECIES_CROAGUNK] = sAnims_Croagunk, + [SPECIES_TOXICROAK] = sAnims_Toxicroak, + [SPECIES_CARNIVINE] = sAnims_Carnivine, + [SPECIES_FINNEON] = sAnims_Finneon, + [SPECIES_LUMINEON] = sAnims_Lumineon, + [SPECIES_MANTYKE] = sAnims_Mantyke, + [SPECIES_SNOVER] = sAnims_Snover, + [SPECIES_ABOMASNOW] = sAnims_Abomasnow, + [SPECIES_WEAVILE] = sAnims_Weavile, + [SPECIES_MAGNEZONE] = sAnims_Magnezone, + [SPECIES_LICKILICKY] = sAnims_Lickilicky, + [SPECIES_RHYPERIOR] = sAnims_Rhyperior, + [SPECIES_TANGROWTH] = sAnims_Tangrowth, + [SPECIES_ELECTIVIRE] = sAnims_Electivire, + [SPECIES_MAGMORTAR] = sAnims_Magmortar, + [SPECIES_TOGEKISS] = sAnims_Togekiss, + [SPECIES_YANMEGA] = sAnims_Yanmega, + [SPECIES_LEAFEON] = sAnims_Leafeon, + [SPECIES_GLACEON] = sAnims_Glaceon, + [SPECIES_GLISCOR] = sAnims_Gliscor, + [SPECIES_MAMOSWINE] = sAnims_Mamoswine, + [SPECIES_PORYGON_Z] = sAnims_PORYGON_Z, + [SPECIES_GALLADE] = sAnims_Gallade, + [SPECIES_PROBOPASS] = sAnims_Probopass, + [SPECIES_DUSKNOIR] = sAnims_Dusknoir, + [SPECIES_FROSLASS] = sAnims_Froslass, + [SPECIES_ROTOM] = sAnims_Rotom, + [SPECIES_UXIE] = sAnims_Uxie, + [SPECIES_MESPRIT] = sAnims_Mesprit, + [SPECIES_AZELF] = sAnims_Azelf, + [SPECIES_DIALGA] = sAnims_Dialga, + [SPECIES_PALKIA] = sAnims_Palkia, + [SPECIES_HEATRAN] = sAnims_Heatran, + [SPECIES_REGIGIGAS] = sAnims_Regigigas, + [SPECIES_GIRATINA] = sAnims_Giratina, + [SPECIES_CRESSELIA] = sAnims_Cresselia, + [SPECIES_PHIONE] = sAnims_Phione, + [SPECIES_MANAPHY] = sAnims_Manaphy, + [SPECIES_DARKRAI] = sAnims_Darkrai, + [SPECIES_SHAYMIN] = sAnims_Shaymin, + [SPECIES_ARCEUS] = sAnims_Arceus, #endif #if P_GEN_5_POKEMON == TRUE - ANIM_CMD(VICTINI), - ANIM_CMD(SNIVY), - ANIM_CMD(SERVINE), - ANIM_CMD(SERPERIOR), - ANIM_CMD(TEPIG), - ANIM_CMD(PIGNITE), - ANIM_CMD(EMBOAR), - ANIM_CMD(OSHAWOTT), - ANIM_CMD(DEWOTT), - ANIM_CMD(SAMUROTT), - ANIM_CMD(PATRAT), - ANIM_CMD(WATCHOG), - ANIM_CMD(LILLIPUP), - ANIM_CMD(HERDIER), - ANIM_CMD(STOUTLAND), - ANIM_CMD(PURRLOIN), - ANIM_CMD(LIEPARD), - ANIM_CMD(PANSAGE), - ANIM_CMD(SIMISAGE), - ANIM_CMD(PANSEAR), - ANIM_CMD(SIMISEAR), - ANIM_CMD(PANPOUR), - ANIM_CMD(SIMIPOUR), - ANIM_CMD(MUNNA), - ANIM_CMD(MUSHARNA), - ANIM_CMD(PIDOVE), - ANIM_CMD(TRANQUILL), - ANIM_CMD(UNFEZANT), - ANIM_CMD(BLITZLE), - ANIM_CMD(ZEBSTRIKA), - ANIM_CMD(ROGGENROLA), - ANIM_CMD(BOLDORE), - ANIM_CMD(GIGALITH), - ANIM_CMD(WOOBAT), - ANIM_CMD(SWOOBAT), - ANIM_CMD(DRILBUR), - ANIM_CMD(EXCADRILL), - ANIM_CMD(AUDINO), - ANIM_CMD(TIMBURR), - ANIM_CMD(GURDURR), - ANIM_CMD(CONKELDURR), - ANIM_CMD(TYMPOLE), - ANIM_CMD(PALPITOAD), - ANIM_CMD(SEISMITOAD), - ANIM_CMD(THROH), - ANIM_CMD(SAWK), - ANIM_CMD(SEWADDLE), - ANIM_CMD(SWADLOON), - ANIM_CMD(LEAVANNY), - ANIM_CMD(VENIPEDE), - ANIM_CMD(WHIRLIPEDE), - ANIM_CMD(SCOLIPEDE), - ANIM_CMD(COTTONEE), - ANIM_CMD(WHIMSICOTT), - ANIM_CMD(PETILIL), - ANIM_CMD(LILLIGANT), - ANIM_CMD(BASCULIN), - ANIM_CMD(SANDILE), - ANIM_CMD(KROKOROK), - ANIM_CMD(KROOKODILE), - ANIM_CMD(DARUMAKA), - ANIM_CMD(DARMANITAN), - ANIM_CMD(MARACTUS), - ANIM_CMD(DWEBBLE), - ANIM_CMD(CRUSTLE), - ANIM_CMD(SCRAGGY), - ANIM_CMD(SCRAFTY), - ANIM_CMD(SIGILYPH), - ANIM_CMD(YAMASK), - ANIM_CMD(COFAGRIGUS), - ANIM_CMD(TIRTOUGA), - ANIM_CMD(CARRACOSTA), - ANIM_CMD(ARCHEN), - ANIM_CMD(ARCHEOPS), - ANIM_CMD(TRUBBISH), - ANIM_CMD(GARBODOR), - ANIM_CMD(ZORUA), - ANIM_CMD(ZOROARK), - ANIM_CMD(MINCCINO), - ANIM_CMD(CINCCINO), - ANIM_CMD(GOTHITA), - ANIM_CMD(GOTHORITA), - ANIM_CMD(GOTHITELLE), - ANIM_CMD(SOLOSIS), - ANIM_CMD(DUOSION), - ANIM_CMD(REUNICLUS), - ANIM_CMD(DUCKLETT), - ANIM_CMD(SWANNA), - ANIM_CMD(VANILLITE), - ANIM_CMD(VANILLISH), - ANIM_CMD(VANILLUXE), - ANIM_CMD(DEERLING), - ANIM_CMD(SAWSBUCK), - ANIM_CMD(EMOLGA), - ANIM_CMD(KARRABLAST), - ANIM_CMD(ESCAVALIER), - ANIM_CMD(FOONGUS), - ANIM_CMD(AMOONGUSS), - ANIM_CMD(FRILLISH), - ANIM_CMD(JELLICENT), - ANIM_CMD(ALOMOMOLA), - ANIM_CMD(JOLTIK), - ANIM_CMD(GALVANTULA), - ANIM_CMD(FERROSEED), - ANIM_CMD(FERROTHORN), - ANIM_CMD(KLINK), - ANIM_CMD(KLANG), - ANIM_CMD(KLINKLANG), - ANIM_CMD(TYNAMO), - ANIM_CMD(EELEKTRIK), - ANIM_CMD(EELEKTROSS), - ANIM_CMD(ELGYEM), - ANIM_CMD(BEHEEYEM), - ANIM_CMD(LITWICK), - ANIM_CMD(LAMPENT), - ANIM_CMD(CHANDELURE), - ANIM_CMD(AXEW), - ANIM_CMD(FRAXURE), - ANIM_CMD(HAXORUS), - ANIM_CMD(CUBCHOO), - ANIM_CMD(BEARTIC), - ANIM_CMD(CRYOGONAL), - ANIM_CMD(SHELMET), - ANIM_CMD(ACCELGOR), - ANIM_CMD(STUNFISK), - ANIM_CMD(MIENFOO), - ANIM_CMD(MIENSHAO), - ANIM_CMD(DRUDDIGON), - ANIM_CMD(GOLETT), - ANIM_CMD(GOLURK), - ANIM_CMD(PAWNIARD), - ANIM_CMD(BISHARP), - ANIM_CMD(BOUFFALANT), - ANIM_CMD(RUFFLET), - ANIM_CMD(BRAVIARY), - ANIM_CMD(VULLABY), - ANIM_CMD(MANDIBUZZ), - ANIM_CMD(HEATMOR), - ANIM_CMD(DURANT), - ANIM_CMD(DEINO), - ANIM_CMD(ZWEILOUS), - ANIM_CMD(HYDREIGON), - ANIM_CMD(LARVESTA), - ANIM_CMD(VOLCARONA), - ANIM_CMD(COBALION), - ANIM_CMD(TERRAKION), - ANIM_CMD(VIRIZION), - ANIM_CMD(TORNADUS), - ANIM_CMD(THUNDURUS), - ANIM_CMD(RESHIRAM), - ANIM_CMD(ZEKROM), - ANIM_CMD(LANDORUS), - ANIM_CMD(KYUREM), - ANIM_CMD(KELDEO), - ANIM_CMD(MELOETTA), - ANIM_CMD(GENESECT), + [SPECIES_VICTINI] = sAnims_Victini, + [SPECIES_SNIVY] = sAnims_Snivy, + [SPECIES_SERVINE] = sAnims_Servine, + [SPECIES_SERPERIOR] = sAnims_Serperior, + [SPECIES_TEPIG] = sAnims_Tepig, + [SPECIES_PIGNITE] = sAnims_Pignite, + [SPECIES_EMBOAR] = sAnims_Emboar, + [SPECIES_OSHAWOTT] = sAnims_Oshawott, + [SPECIES_DEWOTT] = sAnims_Dewott, + [SPECIES_SAMUROTT] = sAnims_Samurott, + [SPECIES_PATRAT] = sAnims_Patrat, + [SPECIES_WATCHOG] = sAnims_Watchog, + [SPECIES_LILLIPUP] = sAnims_Lillipup, + [SPECIES_HERDIER] = sAnims_Herdier, + [SPECIES_STOUTLAND] = sAnims_Stoutland, + [SPECIES_PURRLOIN] = sAnims_Purrloin, + [SPECIES_LIEPARD] = sAnims_Liepard, + [SPECIES_PANSAGE] = sAnims_Pansage, + [SPECIES_SIMISAGE] = sAnims_Simisage, + [SPECIES_PANSEAR] = sAnims_Pansear, + [SPECIES_SIMISEAR] = sAnims_Simisear, + [SPECIES_PANPOUR] = sAnims_Panpour, + [SPECIES_SIMIPOUR] = sAnims_Simipour, + [SPECIES_MUNNA] = sAnims_Munna, + [SPECIES_MUSHARNA] = sAnims_Musharna, + [SPECIES_PIDOVE] = sAnims_Pidove, + [SPECIES_TRANQUILL] = sAnims_Tranquill, + [SPECIES_UNFEZANT] = sAnims_Unfezant, + [SPECIES_BLITZLE] = sAnims_Blitzle, + [SPECIES_ZEBSTRIKA] = sAnims_Zebstrika, + [SPECIES_ROGGENROLA] = sAnims_Roggenrola, + [SPECIES_BOLDORE] = sAnims_Boldore, + [SPECIES_GIGALITH] = sAnims_Gigalith, + [SPECIES_WOOBAT] = sAnims_Woobat, + [SPECIES_SWOOBAT] = sAnims_Swoobat, + [SPECIES_DRILBUR] = sAnims_Drilbur, + [SPECIES_EXCADRILL] = sAnims_Excadrill, + [SPECIES_AUDINO] = sAnims_Audino, + [SPECIES_TIMBURR] = sAnims_Timburr, + [SPECIES_GURDURR] = sAnims_Gurdurr, + [SPECIES_CONKELDURR] = sAnims_Conkeldurr, + [SPECIES_TYMPOLE] = sAnims_Tympole, + [SPECIES_PALPITOAD] = sAnims_Palpitoad, + [SPECIES_SEISMITOAD] = sAnims_Seismitoad, + [SPECIES_THROH] = sAnims_Throh, + [SPECIES_SAWK] = sAnims_Sawk, + [SPECIES_SEWADDLE] = sAnims_Sewaddle, + [SPECIES_SWADLOON] = sAnims_Swadloon, + [SPECIES_LEAVANNY] = sAnims_Leavanny, + [SPECIES_VENIPEDE] = sAnims_Venipede, + [SPECIES_WHIRLIPEDE] = sAnims_Whirlipede, + [SPECIES_SCOLIPEDE] = sAnims_Scolipede, + [SPECIES_COTTONEE] = sAnims_Cottonee, + [SPECIES_WHIMSICOTT] = sAnims_Whimsicott, + [SPECIES_PETILIL] = sAnims_Petilil, + [SPECIES_LILLIGANT] = sAnims_Lilligant, + [SPECIES_BASCULIN] = sAnims_Basculin, + [SPECIES_SANDILE] = sAnims_Sandile, + [SPECIES_KROKOROK] = sAnims_Krokorok, + [SPECIES_KROOKODILE] = sAnims_Krookodile, + [SPECIES_DARUMAKA] = sAnims_Darumaka, + [SPECIES_DARMANITAN] = sAnims_Darmanitan, + [SPECIES_MARACTUS] = sAnims_Maractus, + [SPECIES_DWEBBLE] = sAnims_Dwebble, + [SPECIES_CRUSTLE] = sAnims_Crustle, + [SPECIES_SCRAGGY] = sAnims_Scraggy, + [SPECIES_SCRAFTY] = sAnims_Scrafty, + [SPECIES_SIGILYPH] = sAnims_Sigilyph, + [SPECIES_YAMASK] = sAnims_Yamask, + [SPECIES_COFAGRIGUS] = sAnims_Cofagrigus, + [SPECIES_TIRTOUGA] = sAnims_Tirtouga, + [SPECIES_CARRACOSTA] = sAnims_Carracosta, + [SPECIES_ARCHEN] = sAnims_Archen, + [SPECIES_ARCHEOPS] = sAnims_Archeops, + [SPECIES_TRUBBISH] = sAnims_Trubbish, + [SPECIES_GARBODOR] = sAnims_Garbodor, + [SPECIES_ZORUA] = sAnims_Zorua, + [SPECIES_ZOROARK] = sAnims_Zoroark, + [SPECIES_MINCCINO] = sAnims_Minccino, + [SPECIES_CINCCINO] = sAnims_Cinccino, + [SPECIES_GOTHITA] = sAnims_Gothita, + [SPECIES_GOTHORITA] = sAnims_Gothorita, + [SPECIES_GOTHITELLE] = sAnims_Gothitelle, + [SPECIES_SOLOSIS] = sAnims_Solosis, + [SPECIES_DUOSION] = sAnims_Duosion, + [SPECIES_REUNICLUS] = sAnims_Reuniclus, + [SPECIES_DUCKLETT] = sAnims_Ducklett, + [SPECIES_SWANNA] = sAnims_Swanna, + [SPECIES_VANILLITE] = sAnims_Vanillite, + [SPECIES_VANILLISH] = sAnims_Vanillish, + [SPECIES_VANILLUXE] = sAnims_Vanilluxe, + [SPECIES_DEERLING] = sAnims_Deerling, + [SPECIES_SAWSBUCK] = sAnims_Sawsbuck, + [SPECIES_EMOLGA] = sAnims_Emolga, + [SPECIES_KARRABLAST] = sAnims_Karrablast, + [SPECIES_ESCAVALIER] = sAnims_Escavalier, + [SPECIES_FOONGUS] = sAnims_Foongus, + [SPECIES_AMOONGUSS] = sAnims_Amoonguss, + [SPECIES_FRILLISH] = sAnims_Frillish, + [SPECIES_JELLICENT] = sAnims_Jellicent, + [SPECIES_ALOMOMOLA] = sAnims_Alomomola, + [SPECIES_JOLTIK] = sAnims_Joltik, + [SPECIES_GALVANTULA] = sAnims_Galvantula, + [SPECIES_FERROSEED] = sAnims_Ferroseed, + [SPECIES_FERROTHORN] = sAnims_Ferrothorn, + [SPECIES_KLINK] = sAnims_Klink, + [SPECIES_KLANG] = sAnims_Klang, + [SPECIES_KLINKLANG] = sAnims_Klinklang, + [SPECIES_TYNAMO] = sAnims_Tynamo, + [SPECIES_EELEKTRIK] = sAnims_Eelektrik, + [SPECIES_EELEKTROSS] = sAnims_Eelektross, + [SPECIES_ELGYEM] = sAnims_Elgyem, + [SPECIES_BEHEEYEM] = sAnims_Beheeyem, + [SPECIES_LITWICK] = sAnims_Litwick, + [SPECIES_LAMPENT] = sAnims_Lampent, + [SPECIES_CHANDELURE] = sAnims_Chandelure, + [SPECIES_AXEW] = sAnims_Axew, + [SPECIES_FRAXURE] = sAnims_Fraxure, + [SPECIES_HAXORUS] = sAnims_Haxorus, + [SPECIES_CUBCHOO] = sAnims_Cubchoo, + [SPECIES_BEARTIC] = sAnims_Beartic, + [SPECIES_CRYOGONAL] = sAnims_Cryogonal, + [SPECIES_SHELMET] = sAnims_Shelmet, + [SPECIES_ACCELGOR] = sAnims_Accelgor, + [SPECIES_STUNFISK] = sAnims_Stunfisk, + [SPECIES_MIENFOO] = sAnims_Mienfoo, + [SPECIES_MIENSHAO] = sAnims_Mienshao, + [SPECIES_DRUDDIGON] = sAnims_Druddigon, + [SPECIES_GOLETT] = sAnims_Golett, + [SPECIES_GOLURK] = sAnims_Golurk, + [SPECIES_PAWNIARD] = sAnims_Pawniard, + [SPECIES_BISHARP] = sAnims_Bisharp, + [SPECIES_BOUFFALANT] = sAnims_Bouffalant, + [SPECIES_RUFFLET] = sAnims_Rufflet, + [SPECIES_BRAVIARY] = sAnims_Braviary, + [SPECIES_VULLABY] = sAnims_Vullaby, + [SPECIES_MANDIBUZZ] = sAnims_Mandibuzz, + [SPECIES_HEATMOR] = sAnims_Heatmor, + [SPECIES_DURANT] = sAnims_Durant, + [SPECIES_DEINO] = sAnims_Deino, + [SPECIES_ZWEILOUS] = sAnims_Zweilous, + [SPECIES_HYDREIGON] = sAnims_Hydreigon, + [SPECIES_LARVESTA] = sAnims_Larvesta, + [SPECIES_VOLCARONA] = sAnims_Volcarona, + [SPECIES_COBALION] = sAnims_Cobalion, + [SPECIES_TERRAKION] = sAnims_Terrakion, + [SPECIES_VIRIZION] = sAnims_Virizion, + [SPECIES_TORNADUS] = sAnims_Tornadus, + [SPECIES_THUNDURUS] = sAnims_Thundurus, + [SPECIES_RESHIRAM] = sAnims_Reshiram, + [SPECIES_ZEKROM] = sAnims_Zekrom, + [SPECIES_LANDORUS] = sAnims_Landorus, + [SPECIES_KYUREM] = sAnims_Kyurem, + [SPECIES_KELDEO] = sAnims_Keldeo, + [SPECIES_MELOETTA] = sAnims_Meloetta, + [SPECIES_GENESECT] = sAnims_Genesect, #endif #if P_GEN_6_POKEMON == TRUE - ANIM_CMD(CHESPIN), - ANIM_CMD(QUILLADIN), - ANIM_CMD(CHESNAUGHT), - ANIM_CMD(FENNEKIN), - ANIM_CMD(BRAIXEN), - ANIM_CMD(DELPHOX), - ANIM_CMD(FROAKIE), - ANIM_CMD(FROGADIER), - ANIM_CMD(GRENINJA), - ANIM_CMD(BUNNELBY), - ANIM_CMD(DIGGERSBY), - ANIM_CMD(FLETCHLING), - ANIM_CMD(FLETCHINDER), - ANIM_CMD(TALONFLAME), - ANIM_CMD(SCATTERBUG), - ANIM_CMD(SPEWPA), - ANIM_CMD(VIVILLON), - ANIM_CMD(LITLEO), - ANIM_CMD(PYROAR), - ANIM_CMD(FLABEBE), - ANIM_CMD(FLOETTE), - ANIM_CMD(FLORGES), - ANIM_CMD(SKIDDO), - ANIM_CMD(GOGOAT), - ANIM_CMD(PANCHAM), - ANIM_CMD(PANGORO), - ANIM_CMD(FURFROU), - ANIM_CMD(ESPURR), - ANIM_CMD(MEOWSTIC), - ANIM_CMD(HONEDGE), - ANIM_CMD(DOUBLADE), - ANIM_CMD(AEGISLASH), - ANIM_CMD(SPRITZEE), - ANIM_CMD(AROMATISSE), - ANIM_CMD(SWIRLIX), - ANIM_CMD(SLURPUFF), - ANIM_CMD(INKAY), - ANIM_CMD(MALAMAR), - ANIM_CMD(BINACLE), - ANIM_CMD(BARBARACLE), - ANIM_CMD(SKRELP), - ANIM_CMD(DRAGALGE), - ANIM_CMD(CLAUNCHER), - ANIM_CMD(CLAWITZER), - ANIM_CMD(HELIOPTILE), - ANIM_CMD(HELIOLISK), - ANIM_CMD(TYRUNT), - ANIM_CMD(TYRANTRUM), - ANIM_CMD(AMAURA), - ANIM_CMD(AURORUS), - ANIM_CMD(SYLVEON), - ANIM_CMD(HAWLUCHA), - ANIM_CMD(DEDENNE), - ANIM_CMD(CARBINK), - ANIM_CMD(GOOMY), - ANIM_CMD(SLIGGOO), - ANIM_CMD(GOODRA), - ANIM_CMD(KLEFKI), - ANIM_CMD(PHANTUMP), - ANIM_CMD(TREVENANT), - ANIM_CMD(PUMPKABOO), - ANIM_CMD(GOURGEIST), - ANIM_CMD(BERGMITE), - ANIM_CMD(AVALUGG), - ANIM_CMD(NOIBAT), - ANIM_CMD(NOIVERN), - ANIM_CMD(XERNEAS), - ANIM_CMD(YVELTAL), - ANIM_CMD(ZYGARDE), - ANIM_CMD(DIANCIE), - ANIM_CMD(HOOPA), - ANIM_CMD(VOLCANION), + [SPECIES_CHESPIN] = sAnims_Chespin, + [SPECIES_QUILLADIN] = sAnims_Quilladin, + [SPECIES_CHESNAUGHT] = sAnims_Chesnaught, + [SPECIES_FENNEKIN] = sAnims_Fennekin, + [SPECIES_BRAIXEN] = sAnims_Braixen, + [SPECIES_DELPHOX] = sAnims_Delphox, + [SPECIES_FROAKIE] = sAnims_Froakie, + [SPECIES_FROGADIER] = sAnims_Frogadier, + [SPECIES_GRENINJA] = sAnims_Greninja, + [SPECIES_BUNNELBY] = sAnims_Bunnelby, + [SPECIES_DIGGERSBY] = sAnims_Diggersby, + [SPECIES_FLETCHLING] = sAnims_Fletchling, + [SPECIES_FLETCHINDER] = sAnims_Fletchinder, + [SPECIES_TALONFLAME] = sAnims_Talonflame, + [SPECIES_SCATTERBUG] = sAnims_Scatterbug, + [SPECIES_SPEWPA] = sAnims_Spewpa, + [SPECIES_VIVILLON] = sAnims_Vivillon, + [SPECIES_LITLEO] = sAnims_Litleo, + [SPECIES_PYROAR] = sAnims_Pyroar, + [SPECIES_FLABEBE] = sAnims_Flabebe, + [SPECIES_FLOETTE] = sAnims_Floette, + [SPECIES_FLORGES] = sAnims_Florges, + [SPECIES_SKIDDO] = sAnims_Skiddo, + [SPECIES_GOGOAT] = sAnims_Gogoat, + [SPECIES_PANCHAM] = sAnims_Pancham, + [SPECIES_PANGORO] = sAnims_Pangoro, + [SPECIES_FURFROU] = sAnims_Furfrou, + [SPECIES_ESPURR] = sAnims_Espurr, + [SPECIES_MEOWSTIC] = sAnims_Meowstic, + [SPECIES_HONEDGE] = sAnims_Honedge, + [SPECIES_DOUBLADE] = sAnims_Doublade, + [SPECIES_AEGISLASH] = sAnims_Aegislash, + [SPECIES_SPRITZEE] = sAnims_Spritzee, + [SPECIES_AROMATISSE] = sAnims_Aromatisse, + [SPECIES_SWIRLIX] = sAnims_Swirlix, + [SPECIES_SLURPUFF] = sAnims_Slurpuff, + [SPECIES_INKAY] = sAnims_Inkay, + [SPECIES_MALAMAR] = sAnims_Malamar, + [SPECIES_BINACLE] = sAnims_Binacle, + [SPECIES_BARBARACLE] = sAnims_Barbaracle, + [SPECIES_SKRELP] = sAnims_Skrelp, + [SPECIES_DRAGALGE] = sAnims_Dragalge, + [SPECIES_CLAUNCHER] = sAnims_Clauncher, + [SPECIES_CLAWITZER] = sAnims_Clawitzer, + [SPECIES_HELIOPTILE] = sAnims_Helioptile, + [SPECIES_HELIOLISK] = sAnims_Heliolisk, + [SPECIES_TYRUNT] = sAnims_Tyrunt, + [SPECIES_TYRANTRUM] = sAnims_Tyrantrum, + [SPECIES_AMAURA] = sAnims_Amaura, + [SPECIES_AURORUS] = sAnims_Aurorus, + [SPECIES_SYLVEON] = sAnims_Sylveon, + [SPECIES_HAWLUCHA] = sAnims_Hawlucha, + [SPECIES_DEDENNE] = sAnims_Dedenne, + [SPECIES_CARBINK] = sAnims_Carbink, + [SPECIES_GOOMY] = sAnims_Goomy, + [SPECIES_SLIGGOO] = sAnims_Sliggoo, + [SPECIES_GOODRA] = sAnims_Goodra, + [SPECIES_KLEFKI] = sAnims_Klefki, + [SPECIES_PHANTUMP] = sAnims_Phantump, + [SPECIES_TREVENANT] = sAnims_Trevenant, + [SPECIES_PUMPKABOO] = sAnims_Pumpkaboo, + [SPECIES_GOURGEIST] = sAnims_Gourgeist, + [SPECIES_BERGMITE] = sAnims_Bergmite, + [SPECIES_AVALUGG] = sAnims_Avalugg, + [SPECIES_NOIBAT] = sAnims_Noibat, + [SPECIES_NOIVERN] = sAnims_Noivern, + [SPECIES_XERNEAS] = sAnims_Xerneas, + [SPECIES_YVELTAL] = sAnims_Yveltal, + [SPECIES_ZYGARDE] = sAnims_Zygarde, + [SPECIES_DIANCIE] = sAnims_Diancie, + [SPECIES_HOOPA] = sAnims_Hoopa, + [SPECIES_VOLCANION] = sAnims_Volcanion, #endif #if P_GEN_7_POKEMON == TRUE - ANIM_CMD(ROWLET), - ANIM_CMD(DARTRIX), - ANIM_CMD(DECIDUEYE), - ANIM_CMD(LITTEN), - ANIM_CMD(TORRACAT), - ANIM_CMD(INCINEROAR), - ANIM_CMD(POPPLIO), - ANIM_CMD(BRIONNE), - ANIM_CMD(PRIMARINA), - ANIM_CMD(PIKIPEK), - ANIM_CMD(TRUMBEAK), - ANIM_CMD(TOUCANNON), - ANIM_CMD(YUNGOOS), - ANIM_CMD(GUMSHOOS), - ANIM_CMD(GRUBBIN), - ANIM_CMD(CHARJABUG), - ANIM_CMD(VIKAVOLT), - ANIM_CMD(CRABRAWLER), - ANIM_CMD(CRABOMINABLE), - ANIM_CMD(ORICORIO), - ANIM_CMD(CUTIEFLY), - ANIM_CMD(RIBOMBEE), - ANIM_CMD(ROCKRUFF), - ANIM_CMD(LYCANROC), - ANIM_CMD(WISHIWASHI), - ANIM_CMD(MAREANIE), - ANIM_CMD(TOXAPEX), - ANIM_CMD(MUDBRAY), - ANIM_CMD(MUDSDALE), - ANIM_CMD(DEWPIDER), - ANIM_CMD(ARAQUANID), - ANIM_CMD(FOMANTIS), - ANIM_CMD(LURANTIS), - ANIM_CMD(MORELULL), - ANIM_CMD(SHIINOTIC), - ANIM_CMD(SALANDIT), - ANIM_CMD(SALAZZLE), - ANIM_CMD(STUFFUL), - ANIM_CMD(BEWEAR), - ANIM_CMD(BOUNSWEET), - ANIM_CMD(STEENEE), - ANIM_CMD(TSAREENA), - ANIM_CMD(COMFEY), - ANIM_CMD(ORANGURU), - ANIM_CMD(PASSIMIAN), - ANIM_CMD(WIMPOD), - ANIM_CMD(GOLISOPOD), - ANIM_CMD(SANDYGAST), - ANIM_CMD(PALOSSAND), - ANIM_CMD(PYUKUMUKU), - ANIM_CMD(TYPE_NULL), - ANIM_CMD(SILVALLY), - ANIM_CMD(MINIOR), - ANIM_CMD(KOMALA), - ANIM_CMD(TURTONATOR), - ANIM_CMD(TOGEDEMARU), - ANIM_CMD(MIMIKYU), - ANIM_CMD(BRUXISH), - ANIM_CMD(DRAMPA), - ANIM_CMD(DHELMISE), - ANIM_CMD(JANGMO_O), - ANIM_CMD(HAKAMO_O), - ANIM_CMD(KOMMO_O), - ANIM_CMD(TAPU_KOKO), - ANIM_CMD(TAPU_LELE), - ANIM_CMD(TAPU_BULU), - ANIM_CMD(TAPU_FINI), - ANIM_CMD(COSMOG), - ANIM_CMD(COSMOEM), - ANIM_CMD(SOLGALEO), - ANIM_CMD(LUNALA), - ANIM_CMD(NIHILEGO), - ANIM_CMD(BUZZWOLE), - ANIM_CMD(PHEROMOSA), - ANIM_CMD(XURKITREE), - ANIM_CMD(CELESTEELA), - ANIM_CMD(KARTANA), - ANIM_CMD(GUZZLORD), - ANIM_CMD(NECROZMA), - ANIM_CMD(MAGEARNA), - ANIM_CMD(MARSHADOW), - ANIM_CMD(POIPOLE), - ANIM_CMD(NAGANADEL), - ANIM_CMD(STAKATAKA), - ANIM_CMD(BLACEPHALON), - ANIM_CMD(ZERAORA), - ANIM_CMD(MELTAN), - ANIM_CMD(MELMETAL), + [SPECIES_ROWLET] = sAnims_Rowlet, + [SPECIES_DARTRIX] = sAnims_Dartrix, + [SPECIES_DECIDUEYE] = sAnims_Decidueye, + [SPECIES_LITTEN] = sAnims_Litten, + [SPECIES_TORRACAT] = sAnims_Torracat, + [SPECIES_INCINEROAR] = sAnims_Incineroar, + [SPECIES_POPPLIO] = sAnims_Popplio, + [SPECIES_BRIONNE] = sAnims_Brionne, + [SPECIES_PRIMARINA] = sAnims_Primarina, + [SPECIES_PIKIPEK] = sAnims_Pikipek, + [SPECIES_TRUMBEAK] = sAnims_Trumbeak, + [SPECIES_TOUCANNON] = sAnims_Toucannon, + [SPECIES_YUNGOOS] = sAnims_Yungoos, + [SPECIES_GUMSHOOS] = sAnims_Gumshoos, + [SPECIES_GRUBBIN] = sAnims_Grubbin, + [SPECIES_CHARJABUG] = sAnims_Charjabug, + [SPECIES_VIKAVOLT] = sAnims_Vikavolt, + [SPECIES_CRABRAWLER] = sAnims_Crabrawler, + [SPECIES_CRABOMINABLE] = sAnims_Crabominable, + [SPECIES_ORICORIO] = sAnims_Oricorio, + [SPECIES_CUTIEFLY] = sAnims_Cutiefly, + [SPECIES_RIBOMBEE] = sAnims_Ribombee, + [SPECIES_ROCKRUFF] = sAnims_Rockruff, + [SPECIES_LYCANROC] = sAnims_Lycanroc, + [SPECIES_WISHIWASHI] = sAnims_Wishiwashi, + [SPECIES_MAREANIE] = sAnims_Mareanie, + [SPECIES_TOXAPEX] = sAnims_Toxapex, + [SPECIES_MUDBRAY] = sAnims_Mudbray, + [SPECIES_MUDSDALE] = sAnims_Mudsdale, + [SPECIES_DEWPIDER] = sAnims_Dewpider, + [SPECIES_ARAQUANID] = sAnims_Araquanid, + [SPECIES_FOMANTIS] = sAnims_Fomantis, + [SPECIES_LURANTIS] = sAnims_Lurantis, + [SPECIES_MORELULL] = sAnims_Morelull, + [SPECIES_SHIINOTIC] = sAnims_Shiinotic, + [SPECIES_SALANDIT] = sAnims_Salandit, + [SPECIES_SALAZZLE] = sAnims_Salazzle, + [SPECIES_STUFFUL] = sAnims_Stufful, + [SPECIES_BEWEAR] = sAnims_Bewear, + [SPECIES_BOUNSWEET] = sAnims_Bounsweet, + [SPECIES_STEENEE] = sAnims_Steenee, + [SPECIES_TSAREENA] = sAnims_Tsareena, + [SPECIES_COMFEY] = sAnims_Comfey, + [SPECIES_ORANGURU] = sAnims_Oranguru, + [SPECIES_PASSIMIAN] = sAnims_Passimian, + [SPECIES_WIMPOD] = sAnims_Wimpod, + [SPECIES_GOLISOPOD] = sAnims_Golisopod, + [SPECIES_SANDYGAST] = sAnims_Sandygast, + [SPECIES_PALOSSAND] = sAnims_Palossand, + [SPECIES_PYUKUMUKU] = sAnims_Pyukumuku, + [SPECIES_TYPE_NULL] = sAnims_TypeNull, + [SPECIES_SILVALLY] = sAnims_Silvally, + [SPECIES_MINIOR] = sAnims_Minior, + [SPECIES_KOMALA] = sAnims_Komala, + [SPECIES_TURTONATOR] = sAnims_Turtonator, + [SPECIES_TOGEDEMARU] = sAnims_Togedemaru, + [SPECIES_MIMIKYU] = sAnims_Mimikyu, + [SPECIES_BRUXISH] = sAnims_Bruxish, + [SPECIES_DRAMPA] = sAnims_Drampa, + [SPECIES_DHELMISE] = sAnims_Dhelmise, + [SPECIES_JANGMO_O] = sAnims_JANGMO_O, + [SPECIES_HAKAMO_O] = sAnims_HAKAMO_O, + [SPECIES_KOMMO_O] = sAnims_KOMMO_O, + [SPECIES_TAPU_KOKO] = sAnims_TapuKoko, + [SPECIES_TAPU_LELE] = sAnims_TapuLele, + [SPECIES_TAPU_BULU] = sAnims_TapuBulu, + [SPECIES_TAPU_FINI] = sAnims_TapuFini, + [SPECIES_COSMOG] = sAnims_Cosmog, + [SPECIES_COSMOEM] = sAnims_Cosmoem, + [SPECIES_SOLGALEO] = sAnims_Solgaleo, + [SPECIES_LUNALA] = sAnims_Lunala, + [SPECIES_NIHILEGO] = sAnims_Nihilego, + [SPECIES_BUZZWOLE] = sAnims_Buzzwole, + [SPECIES_PHEROMOSA] = sAnims_Pheromosa, + [SPECIES_XURKITREE] = sAnims_Xurkitree, + [SPECIES_CELESTEELA] = sAnims_Celesteela, + [SPECIES_KARTANA] = sAnims_Kartana, + [SPECIES_GUZZLORD] = sAnims_Guzzlord, + [SPECIES_NECROZMA] = sAnims_Necrozma, + [SPECIES_MAGEARNA] = sAnims_Magearna, + [SPECIES_MARSHADOW] = sAnims_Marshadow, + [SPECIES_POIPOLE] = sAnims_Poipole, + [SPECIES_NAGANADEL] = sAnims_Naganadel, + [SPECIES_STAKATAKA] = sAnims_Stakataka, + [SPECIES_BLACEPHALON] = sAnims_Blacephalon, + [SPECIES_ZERAORA] = sAnims_Zeraora, + [SPECIES_MELTAN] = sAnims_Meltan, + [SPECIES_MELMETAL] = sAnims_Melmetal, #endif #if P_GEN_8_POKEMON == TRUE - ANIM_CMD(GROOKEY), - ANIM_CMD(THWACKEY), - ANIM_CMD(RILLABOOM), - ANIM_CMD(SCORBUNNY), - ANIM_CMD(RABOOT), - ANIM_CMD(CINDERACE), - ANIM_CMD(SOBBLE), - ANIM_CMD(DRIZZILE), - ANIM_CMD(INTELEON), - ANIM_CMD(SKWOVET), - ANIM_CMD(GREEDENT), - ANIM_CMD(ROOKIDEE), - ANIM_CMD(CORVISQUIRE), - ANIM_CMD(CORVIKNIGHT), - ANIM_CMD(BLIPBUG), - ANIM_CMD(DOTTLER), - ANIM_CMD(ORBEETLE), - ANIM_CMD(NICKIT), - ANIM_CMD(THIEVUL), - ANIM_CMD(GOSSIFLEUR), - ANIM_CMD(ELDEGOSS), - ANIM_CMD(WOOLOO), - ANIM_CMD(DUBWOOL), - ANIM_CMD(CHEWTLE), - ANIM_CMD(DREDNAW), - ANIM_CMD(YAMPER), - ANIM_CMD(BOLTUND), - ANIM_CMD(ROLYCOLY), - ANIM_CMD(CARKOL), - ANIM_CMD(COALOSSAL), - ANIM_CMD(APPLIN), - ANIM_CMD(FLAPPLE), - ANIM_CMD(APPLETUN), - ANIM_CMD(SILICOBRA), - ANIM_CMD(SANDACONDA), - ANIM_CMD(CRAMORANT), - ANIM_CMD(ARROKUDA), - ANIM_CMD(BARRASKEWDA), - ANIM_CMD(TOXEL), - ANIM_CMD(TOXTRICITY), - ANIM_CMD(SIZZLIPEDE), - ANIM_CMD(CENTISKORCH), - ANIM_CMD(CLOBBOPUS), - ANIM_CMD(GRAPPLOCT), - ANIM_CMD(SINISTEA), - ANIM_CMD(POLTEAGEIST), - ANIM_CMD(HATENNA), - ANIM_CMD(HATTREM), - ANIM_CMD(HATTERENE), - ANIM_CMD(IMPIDIMP), - ANIM_CMD(MORGREM), - ANIM_CMD(GRIMMSNARL), - ANIM_CMD(OBSTAGOON), - ANIM_CMD(PERRSERKER), - ANIM_CMD(CURSOLA), - ANIM_CMD(SIRFETCHD), - ANIM_CMD(MR_RIME), - ANIM_CMD(RUNERIGUS), - ANIM_CMD(MILCERY), - ANIM_CMD(ALCREMIE), - ANIM_CMD(FALINKS), - ANIM_CMD(PINCURCHIN), - ANIM_CMD(SNOM), - ANIM_CMD(FROSMOTH), - ANIM_CMD(STONJOURNER), - ANIM_CMD(EISCUE), - ANIM_CMD(INDEEDEE), - ANIM_CMD(MORPEKO), - ANIM_CMD(CUFANT), - ANIM_CMD(COPPERAJAH), - ANIM_CMD(DRACOZOLT), - ANIM_CMD(ARCTOZOLT), - ANIM_CMD(DRACOVISH), - ANIM_CMD(ARCTOVISH), - ANIM_CMD(DURALUDON), - ANIM_CMD(DREEPY), - ANIM_CMD(DRAKLOAK), - ANIM_CMD(DRAGAPULT), - ANIM_CMD(ZACIAN), - ANIM_CMD(ZAMAZENTA), - ANIM_CMD(ETERNATUS), - ANIM_CMD(KUBFU), - ANIM_CMD(URSHIFU), - ANIM_CMD(ZARUDE), - ANIM_CMD(REGIELEKI), - ANIM_CMD(REGIDRAGO), - ANIM_CMD(GLASTRIER), - ANIM_CMD(SPECTRIER), - ANIM_CMD(CALYREX), - ANIM_CMD(WYRDEER), - ANIM_CMD(KLEAVOR), - ANIM_CMD(URSALUNA), - ANIM_CMD(BASCULEGION), - ANIM_CMD(SNEASLER), - ANIM_CMD(OVERQWIL), - ANIM_CMD(ENAMORUS), + [SPECIES_GROOKEY] = sAnims_Grookey, + [SPECIES_THWACKEY] = sAnims_Thwackey, + [SPECIES_RILLABOOM] = sAnims_Rillaboom, + [SPECIES_SCORBUNNY] = sAnims_Scorbunny, + [SPECIES_RABOOT] = sAnims_Raboot, + [SPECIES_CINDERACE] = sAnims_Cinderace, + [SPECIES_SOBBLE] = sAnims_Sobble, + [SPECIES_DRIZZILE] = sAnims_Drizzile, + [SPECIES_INTELEON] = sAnims_Inteleon, + [SPECIES_SKWOVET] = sAnims_Skwovet, + [SPECIES_GREEDENT] = sAnims_Greedent, + [SPECIES_ROOKIDEE] = sAnims_Rookidee, + [SPECIES_CORVISQUIRE] = sAnims_Corvisquire, + [SPECIES_CORVIKNIGHT] = sAnims_Corviknight, + [SPECIES_BLIPBUG] = sAnims_Blipbug, + [SPECIES_DOTTLER] = sAnims_Dottler, + [SPECIES_ORBEETLE] = sAnims_Orbeetle, + [SPECIES_NICKIT] = sAnims_Nickit, + [SPECIES_THIEVUL] = sAnims_Thievul, + [SPECIES_GOSSIFLEUR] = sAnims_Gossifleur, + [SPECIES_ELDEGOSS] = sAnims_Eldegoss, + [SPECIES_WOOLOO] = sAnims_Wooloo, + [SPECIES_DUBWOOL] = sAnims_Dubwool, + [SPECIES_CHEWTLE] = sAnims_Chewtle, + [SPECIES_DREDNAW] = sAnims_Drednaw, + [SPECIES_YAMPER] = sAnims_Yamper, + [SPECIES_BOLTUND] = sAnims_Boltund, + [SPECIES_ROLYCOLY] = sAnims_Rolycoly, + [SPECIES_CARKOL] = sAnims_Carkol, + [SPECIES_COALOSSAL] = sAnims_Coalossal, + [SPECIES_APPLIN] = sAnims_Applin, + [SPECIES_FLAPPLE] = sAnims_Flapple, + [SPECIES_APPLETUN] = sAnims_Appletun, + [SPECIES_SILICOBRA] = sAnims_Silicobra, + [SPECIES_SANDACONDA] = sAnims_Sandaconda, + [SPECIES_CRAMORANT] = sAnims_Cramorant, + [SPECIES_ARROKUDA] = sAnims_Arrokuda, + [SPECIES_BARRASKEWDA] = sAnims_Barraskewda, + [SPECIES_TOXEL] = sAnims_Toxel, + [SPECIES_TOXTRICITY] = sAnims_Toxtricity, + [SPECIES_SIZZLIPEDE] = sAnims_Sizzlipede, + [SPECIES_CENTISKORCH] = sAnims_Centiskorch, + [SPECIES_CLOBBOPUS] = sAnims_Clobbopus, + [SPECIES_GRAPPLOCT] = sAnims_Grapploct, + [SPECIES_SINISTEA] = sAnims_Sinistea, + [SPECIES_POLTEAGEIST] = sAnims_Polteageist, + [SPECIES_HATENNA] = sAnims_Hatenna, + [SPECIES_HATTREM] = sAnims_Hattrem, + [SPECIES_HATTERENE] = sAnims_Hatterene, + [SPECIES_IMPIDIMP] = sAnims_Impidimp, + [SPECIES_MORGREM] = sAnims_Morgrem, + [SPECIES_GRIMMSNARL] = sAnims_Grimmsnarl, + [SPECIES_OBSTAGOON] = sAnims_Obstagoon, + [SPECIES_PERRSERKER] = sAnims_Perrserker, + [SPECIES_CURSOLA] = sAnims_Cursola, + [SPECIES_SIRFETCHD] = sAnims_Sirfetchd, + [SPECIES_MR_RIME] = sAnims_MrRime, + [SPECIES_RUNERIGUS] = sAnims_Runerigus, + [SPECIES_MILCERY] = sAnims_Milcery, + [SPECIES_ALCREMIE] = sAnims_Alcremie, + [SPECIES_FALINKS] = sAnims_Falinks, + [SPECIES_PINCURCHIN] = sAnims_Pincurchin, + [SPECIES_SNOM] = sAnims_Snom, + [SPECIES_FROSMOTH] = sAnims_Frosmoth, + [SPECIES_STONJOURNER] = sAnims_Stonjourner, + [SPECIES_EISCUE] = sAnims_Eiscue, + [SPECIES_INDEEDEE] = sAnims_Indeedee, + [SPECIES_MORPEKO] = sAnims_Morpeko, + [SPECIES_CUFANT] = sAnims_Cufant, + [SPECIES_COPPERAJAH] = sAnims_Copperajah, + [SPECIES_DRACOZOLT] = sAnims_Dracozolt, + [SPECIES_ARCTOZOLT] = sAnims_Arctozolt, + [SPECIES_DRACOVISH] = sAnims_Dracovish, + [SPECIES_ARCTOVISH] = sAnims_Arctovish, + [SPECIES_DURALUDON] = sAnims_Duraludon, + [SPECIES_DREEPY] = sAnims_Dreepy, + [SPECIES_DRAKLOAK] = sAnims_Drakloak, + [SPECIES_DRAGAPULT] = sAnims_Dragapult, + [SPECIES_ZACIAN] = sAnims_Zacian, + [SPECIES_ZAMAZENTA] = sAnims_Zamazenta, + [SPECIES_ETERNATUS] = sAnims_Eternatus, + [SPECIES_KUBFU] = sAnims_Kubfu, + [SPECIES_URSHIFU] = sAnims_Urshifu, + [SPECIES_ZARUDE] = sAnims_Zarude, + [SPECIES_REGIELEKI] = sAnims_Regieleki, + [SPECIES_REGIDRAGO] = sAnims_Regidrago, + [SPECIES_GLASTRIER] = sAnims_Glastrier, + [SPECIES_SPECTRIER] = sAnims_Spectrier, + [SPECIES_CALYREX] = sAnims_Calyrex, + [SPECIES_WYRDEER] = sAnims_Wyrdeer, + [SPECIES_KLEAVOR] = sAnims_Kleavor, + [SPECIES_URSALUNA] = sAnims_Ursaluna, + [SPECIES_BASCULEGION] = sAnims_Basculegion, + [SPECIES_SNEASLER] = sAnims_Sneasler, + [SPECIES_OVERQWIL] = sAnims_Overqwil, + [SPECIES_ENAMORUS] = sAnims_Enamorus, #endif - ANIM_CMD(VENUSAUR_MEGA), - ANIM_CMD(CHARIZARD_MEGA_X), - ANIM_CMD(CHARIZARD_MEGA_Y), - ANIM_CMD(BLASTOISE_MEGA), - ANIM_CMD(BEEDRILL_MEGA), - ANIM_CMD(PIDGEOT_MEGA), - ANIM_CMD(ALAKAZAM_MEGA), - ANIM_CMD(SLOWBRO_MEGA), - ANIM_CMD(GENGAR_MEGA), - ANIM_CMD(KANGASKHAN_MEGA), - ANIM_CMD(PINSIR_MEGA), - ANIM_CMD(GYARADOS_MEGA), - ANIM_CMD(AERODACTYL_MEGA), - ANIM_CMD(MEWTWO_MEGA_X), - ANIM_CMD(MEWTWO_MEGA_Y), - ANIM_CMD(AMPHAROS_MEGA), - ANIM_CMD(STEELIX_MEGA), - ANIM_CMD(SCIZOR_MEGA), - ANIM_CMD(HERACROSS_MEGA), - ANIM_CMD(HOUNDOOM_MEGA), - ANIM_CMD(TYRANITAR_MEGA), - ANIM_CMD(SCEPTILE_MEGA), - ANIM_CMD(BLAZIKEN_MEGA), - ANIM_CMD(SWAMPERT_MEGA), - ANIM_CMD(GARDEVOIR_MEGA), - ANIM_CMD(SABLEYE_MEGA), - ANIM_CMD(MAWILE_MEGA), - ANIM_CMD(AGGRON_MEGA), - ANIM_CMD(MEDICHAM_MEGA), - ANIM_CMD(MANECTRIC_MEGA), - ANIM_CMD(SHARPEDO_MEGA), - ANIM_CMD(CAMERUPT_MEGA), - ANIM_CMD(ALTARIA_MEGA), - ANIM_CMD(BANETTE_MEGA), - ANIM_CMD(ABSOL_MEGA), - ANIM_CMD(GLALIE_MEGA), - ANIM_CMD(SALAMENCE_MEGA), - ANIM_CMD(METAGROSS_MEGA), - ANIM_CMD(LATIAS_MEGA), - ANIM_CMD(LATIOS_MEGA), + [SPECIES_VENUSAUR_MEGA] = sAnims_VenusaurMega, + [SPECIES_CHARIZARD_MEGA_X] = sAnims_CHARIZARD_MEGA_X, + [SPECIES_CHARIZARD_MEGA_Y] = sAnims_CHARIZARD_MEGA_Y, + [SPECIES_BLASTOISE_MEGA] = sAnims_BlastoiseMega, + [SPECIES_BEEDRILL_MEGA] = sAnims_BeedrillMega, + [SPECIES_PIDGEOT_MEGA] = sAnims_PidgeotMega, + [SPECIES_ALAKAZAM_MEGA] = sAnims_AlakazamMega, + [SPECIES_SLOWBRO_MEGA] = sAnims_SlowbroMega, + [SPECIES_GENGAR_MEGA] = sAnims_GengarMega, + [SPECIES_KANGASKHAN_MEGA] = sAnims_KangaskhanMega, + [SPECIES_PINSIR_MEGA] = sAnims_PinsirMega, + [SPECIES_GYARADOS_MEGA] = sAnims_GyaradosMega, + [SPECIES_AERODACTYL_MEGA] = sAnims_AerodactylMega, + [SPECIES_MEWTWO_MEGA_X] = sAnims_MEWTWO_MEGA_X, + [SPECIES_MEWTWO_MEGA_Y] = sAnims_MEWTWO_MEGA_Y, + [SPECIES_AMPHAROS_MEGA] = sAnims_AmpharosMega, + [SPECIES_STEELIX_MEGA] = sAnims_SteelixMega, + [SPECIES_SCIZOR_MEGA] = sAnims_ScizorMega, + [SPECIES_HERACROSS_MEGA] = sAnims_HeracrossMega, + [SPECIES_HOUNDOOM_MEGA] = sAnims_HoundoomMega, + [SPECIES_TYRANITAR_MEGA] = sAnims_TyranitarMega, + [SPECIES_SCEPTILE_MEGA] = sAnims_SceptileMega, + [SPECIES_BLAZIKEN_MEGA] = sAnims_BlazikenMega, + [SPECIES_SWAMPERT_MEGA] = sAnims_SwampertMega, + [SPECIES_GARDEVOIR_MEGA] = sAnims_GardevoirMega, + [SPECIES_SABLEYE_MEGA] = sAnims_SableyeMega, + [SPECIES_MAWILE_MEGA] = sAnims_MawileMega, + [SPECIES_AGGRON_MEGA] = sAnims_AggronMega, + [SPECIES_MEDICHAM_MEGA] = sAnims_MedichamMega, + [SPECIES_MANECTRIC_MEGA] = sAnims_ManectricMega, + [SPECIES_SHARPEDO_MEGA] = sAnims_SharpedoMega, + [SPECIES_CAMERUPT_MEGA] = sAnims_CameruptMega, + [SPECIES_ALTARIA_MEGA] = sAnims_AltariaMega, + [SPECIES_BANETTE_MEGA] = sAnims_BanetteMega, + [SPECIES_ABSOL_MEGA] = sAnims_AbsolMega, + [SPECIES_GLALIE_MEGA] = sAnims_GlalieMega, + [SPECIES_SALAMENCE_MEGA] = sAnims_SalamenceMega, + [SPECIES_METAGROSS_MEGA] = sAnims_MetagrossMega, + [SPECIES_LATIAS_MEGA] = sAnims_LatiasMega, + [SPECIES_LATIOS_MEGA] = sAnims_LatiosMega, #if P_GEN_4_POKEMON == TRUE - ANIM_CMD(LOPUNNY_MEGA), - ANIM_CMD(GARCHOMP_MEGA), - ANIM_CMD(LUCARIO_MEGA), - ANIM_CMD(ABOMASNOW_MEGA), - ANIM_CMD(GALLADE_MEGA), + [SPECIES_LOPUNNY_MEGA] = sAnims_LopunnyMega, + [SPECIES_GARCHOMP_MEGA] = sAnims_GarchompMega, + [SPECIES_LUCARIO_MEGA] = sAnims_LucarioMega, + [SPECIES_ABOMASNOW_MEGA] = sAnims_AbomasnowMega, + [SPECIES_GALLADE_MEGA] = sAnims_GalladeMega, #endif #if P_GEN_5_POKEMON == TRUE - ANIM_CMD(AUDINO_MEGA), + [SPECIES_AUDINO_MEGA] = sAnims_AudinoMega, #endif #if P_GEN_6_POKEMON == TRUE - ANIM_CMD(DIANCIE_MEGA), + [SPECIES_DIANCIE_MEGA] = sAnims_DiancieMega, #endif - ANIM_CMD(RAYQUAZA_MEGA), - ANIM_CMD(KYOGRE_PRIMAL), - ANIM_CMD(GROUDON_PRIMAL), - ANIM_CMD(RATTATA_ALOLAN), - ANIM_CMD(RATICATE_ALOLAN), - ANIM_CMD(RAICHU_ALOLAN), - ANIM_CMD(SANDSHREW_ALOLAN), - ANIM_CMD(SANDSLASH_ALOLAN), - ANIM_CMD(VULPIX_ALOLAN), - ANIM_CMD(NINETALES_ALOLAN), - ANIM_CMD(DIGLETT_ALOLAN), - ANIM_CMD(DUGTRIO_ALOLAN), - ANIM_CMD(MEOWTH_ALOLAN), - ANIM_CMD(PERSIAN_ALOLAN), - ANIM_CMD(GEODUDE_ALOLAN), - ANIM_CMD(GRAVELER_ALOLAN), - ANIM_CMD(GOLEM_ALOLAN), - ANIM_CMD(GRIMER_ALOLAN), - ANIM_CMD(MUK_ALOLAN), - ANIM_CMD(EXEGGUTOR_ALOLAN), - ANIM_CMD(MAROWAK_ALOLAN), - ANIM_CMD(MEOWTH_GALARIAN), - ANIM_CMD(PONYTA_GALARIAN), - ANIM_CMD(RAPIDASH_GALARIAN), - ANIM_CMD(SLOWPOKE_GALARIAN), - ANIM_CMD(SLOWBRO_GALARIAN), - ANIM_CMD(FARFETCHD_GALARIAN), - ANIM_CMD(WEEZING_GALARIAN), - ANIM_CMD(MR_MIME_GALARIAN), - ANIM_CMD(ARTICUNO_GALARIAN), - ANIM_CMD(ZAPDOS_GALARIAN), - ANIM_CMD(MOLTRES_GALARIAN), - ANIM_CMD(SLOWKING_GALARIAN), - ANIM_CMD(CORSOLA_GALARIAN), - ANIM_CMD(ZIGZAGOON_GALARIAN), - ANIM_CMD(LINOONE_GALARIAN), + [SPECIES_RAYQUAZA_MEGA] = sAnims_RayquazaMega, + [SPECIES_KYOGRE_PRIMAL] = sAnims_KyogrePrimal, + [SPECIES_GROUDON_PRIMAL] = sAnims_GroudonPrimal, + [SPECIES_RATTATA_ALOLAN] = sAnims_RattataAlolan, + [SPECIES_RATICATE_ALOLAN] = sAnims_RaticateAlolan, + [SPECIES_RAICHU_ALOLAN] = sAnims_RaichuAlolan, + [SPECIES_SANDSHREW_ALOLAN] = sAnims_SandshrewAlolan, + [SPECIES_SANDSLASH_ALOLAN] = sAnims_SandslashAlolan, + [SPECIES_VULPIX_ALOLAN] = sAnims_VulpixAlolan, + [SPECIES_NINETALES_ALOLAN] = sAnims_NinetalesAlolan, + [SPECIES_DIGLETT_ALOLAN] = sAnims_DiglettAlolan, + [SPECIES_DUGTRIO_ALOLAN] = sAnims_DugtrioAlolan, + [SPECIES_MEOWTH_ALOLAN] = sAnims_MeowthAlolan, + [SPECIES_PERSIAN_ALOLAN] = sAnims_PersianAlolan, + [SPECIES_GEODUDE_ALOLAN] = sAnims_GeodudeAlolan, + [SPECIES_GRAVELER_ALOLAN] = sAnims_GravelerAlolan, + [SPECIES_GOLEM_ALOLAN] = sAnims_GolemAlolan, + [SPECIES_GRIMER_ALOLAN] = sAnims_GrimerAlolan, + [SPECIES_MUK_ALOLAN] = sAnims_MukAlolan, + [SPECIES_EXEGGUTOR_ALOLAN] = sAnims_ExeggutorAlolan, + [SPECIES_MAROWAK_ALOLAN] = sAnims_MarowakAlolan, + [SPECIES_MEOWTH_GALARIAN] = sAnims_MeowthGalarian, + [SPECIES_PONYTA_GALARIAN] = sAnims_PonytaGalarian, + [SPECIES_RAPIDASH_GALARIAN] = sAnims_RapidashGalarian, + [SPECIES_SLOWPOKE_GALARIAN] = sAnims_SlowpokeGalarian, + [SPECIES_SLOWBRO_GALARIAN] = sAnims_SlowbroGalarian, + [SPECIES_FARFETCHD_GALARIAN] = sAnims_FarfetchdGalarian, + [SPECIES_WEEZING_GALARIAN] = sAnims_WeezingGalarian, + [SPECIES_MR_MIME_GALARIAN] = sAnims_MrMimeGalarian, + [SPECIES_ARTICUNO_GALARIAN] = sAnims_ArticunoGalarian, + [SPECIES_ZAPDOS_GALARIAN] = sAnims_ZapdosGalarian, + [SPECIES_MOLTRES_GALARIAN] = sAnims_MoltresGalarian, + [SPECIES_SLOWKING_GALARIAN] = sAnims_SlowkingGalarian, + [SPECIES_CORSOLA_GALARIAN] = sAnims_CorsolaGalarian, + [SPECIES_ZIGZAGOON_GALARIAN] = sAnims_ZigzagoonGalarian, + [SPECIES_LINOONE_GALARIAN] = sAnims_LinooneGalarian, #if P_GEN_5_POKEMON == TRUE - ANIM_CMD(DARUMAKA_GALARIAN), - ANIM_CMD(DARMANITAN_GALARIAN), - ANIM_CMD(YAMASK_GALARIAN), - ANIM_CMD(STUNFISK_GALARIAN), + [SPECIES_DARUMAKA_GALARIAN] = sAnims_DarumakaGalarian, + [SPECIES_DARMANITAN_GALARIAN] = sAnims_DarmanitanGalarian, + [SPECIES_YAMASK_GALARIAN] = sAnims_YamaskGalarian, + [SPECIES_STUNFISK_GALARIAN] = sAnims_StunfiskGalarian, #endif - ANIM_CMD(GROWLITHE_HISUIAN), - ANIM_CMD(ARCANINE_HISUIAN), - ANIM_CMD(VOLTORB_HISUIAN), - ANIM_CMD(ELECTRODE_HISUIAN), - ANIM_CMD(TYPHLOSION_HISUIAN), - ANIM_CMD(QWILFISH_HISUIAN), - ANIM_CMD(SNEASEL_HISUIAN), + [SPECIES_GROWLITHE_HISUIAN] = sAnims_GrowlitheHisuian, + [SPECIES_ARCANINE_HISUIAN] = sAnims_ArcanineHisuian, + [SPECIES_VOLTORB_HISUIAN] = sAnims_VoltorbHisuian, + [SPECIES_ELECTRODE_HISUIAN] = sAnims_ElectrodeHisuian, + [SPECIES_TYPHLOSION_HISUIAN] = sAnims_TyphlosionHisuian, + [SPECIES_QWILFISH_HISUIAN] = sAnims_QwilfishHisuian, + [SPECIES_SNEASEL_HISUIAN] = sAnims_SneaselHisuian, #if P_GEN_5_POKEMON == TRUE - ANIM_CMD(SAMUROTT_HISUIAN), - ANIM_CMD(LILLIGANT_HISUIAN), - ANIM_CMD(ZORUA_HISUIAN), - ANIM_CMD(ZOROARK_HISUIAN), - ANIM_CMD(BRAVIARY_HISUIAN), + [SPECIES_SAMUROTT_HISUIAN] = sAnims_SamurottHisuian, + [SPECIES_LILLIGANT_HISUIAN] = sAnims_LilligantHisuian, + [SPECIES_ZORUA_HISUIAN] = sAnims_ZoruaHisuian, + [SPECIES_ZOROARK_HISUIAN] = sAnims_ZoroarkHisuian, + [SPECIES_BRAVIARY_HISUIAN] = sAnims_BraviaryHisuian, #endif #if P_GEN_6_POKEMON == TRUE - ANIM_CMD(SLIGGOO_HISUIAN), - ANIM_CMD(GOODRA_HISUIAN), - ANIM_CMD(AVALUGG_HISUIAN), + [SPECIES_SLIGGOO_HISUIAN] = sAnims_SliggooHisuian, + [SPECIES_GOODRA_HISUIAN] = sAnims_GoodraHisuian, + [SPECIES_AVALUGG_HISUIAN] = sAnims_AvaluggHisuian, #endif #if P_GEN_7_POKEMON == TRUE - ANIM_CMD(DECIDUEYE_HISUIAN), + [SPECIES_DECIDUEYE_HISUIAN] = sAnims_DecidueyeHisuian, #endif - ANIM_CMD(PIKACHU_COSPLAY), - ANIM_CMD(PIKACHU_ROCK_STAR), - ANIM_CMD(PIKACHU_BELLE), - ANIM_CMD(PIKACHU_POP_STAR), - ANIM_CMD(PIKACHU_PH_D), - ANIM_CMD(PIKACHU_LIBRE), - ANIM_CMD(PIKACHU_ORIGINAL_CAP), - ANIM_CMD(PIKACHU_HOENN_CAP), - ANIM_CMD(PIKACHU_SINNOH_CAP), - ANIM_CMD(PIKACHU_UNOVA_CAP), - ANIM_CMD(PIKACHU_KALOS_CAP), - ANIM_CMD(PIKACHU_ALOLA_CAP), - ANIM_CMD(PIKACHU_PARTNER_CAP), - ANIM_CMD(PIKACHU_WORLD_CAP), - ANIM_CMD(PICHU_SPIKY_EARED), - ANIM_CMD(UNOWN_B), - ANIM_CMD(UNOWN_C), - ANIM_CMD(UNOWN_D), - ANIM_CMD(UNOWN_E), - ANIM_CMD(UNOWN_F), - ANIM_CMD(UNOWN_G), - ANIM_CMD(UNOWN_H), - ANIM_CMD(UNOWN_I), - ANIM_CMD(UNOWN_J), - ANIM_CMD(UNOWN_K), - ANIM_CMD(UNOWN_L), - ANIM_CMD(UNOWN_M), - ANIM_CMD(UNOWN_N), - ANIM_CMD(UNOWN_O), - ANIM_CMD(UNOWN_P), - ANIM_CMD(UNOWN_Q), - ANIM_CMD(UNOWN_R), - ANIM_CMD(UNOWN_S), - ANIM_CMD(UNOWN_T), - ANIM_CMD(UNOWN_U), - ANIM_CMD(UNOWN_V), - ANIM_CMD(UNOWN_W), - ANIM_CMD(UNOWN_X), - ANIM_CMD(UNOWN_Y), - ANIM_CMD(UNOWN_Z), - ANIM_CMD(UNOWN_EMARK), - ANIM_CMD(UNOWN_QMARK), - ANIM_CMD_FULL(CASTFORM_SUNNY, sAnims_CASTFORM), - ANIM_CMD_FULL(CASTFORM_RAINY, sAnims_CASTFORM), - ANIM_CMD_FULL(CASTFORM_SNOWY, sAnims_CASTFORM), - ANIM_CMD(DEOXYS_ATTACK), - ANIM_CMD(DEOXYS_DEFENSE), - ANIM_CMD(DEOXYS_SPEED), + [SPECIES_PIKACHU_COSPLAY] = sAnims_PikachuCosplay, + [SPECIES_PIKACHU_ROCK_STAR] = sAnims_PikachuRockStar, + [SPECIES_PIKACHU_BELLE] = sAnims_PikachuBelle, + [SPECIES_PIKACHU_POP_STAR] = sAnims_PikachuPopStar, + [SPECIES_PIKACHU_PH_D] = sAnims_PIKACHU_PH_D, + [SPECIES_PIKACHU_LIBRE] = sAnims_PikachuLibre, + [SPECIES_PIKACHU_ORIGINAL_CAP] = sAnims_PikachuOriginalCap, + [SPECIES_PIKACHU_HOENN_CAP] = sAnims_PikachuHoennCap, + [SPECIES_PIKACHU_SINNOH_CAP] = sAnims_PikachuSinnohCap, + [SPECIES_PIKACHU_UNOVA_CAP] = sAnims_PikachuUnovaCap, + [SPECIES_PIKACHU_KALOS_CAP] = sAnims_PikachuKalosCap, + [SPECIES_PIKACHU_ALOLA_CAP] = sAnims_PikachuAlolaCap, + [SPECIES_PIKACHU_PARTNER_CAP] = sAnims_PikachuPartnerCap, + [SPECIES_PIKACHU_WORLD_CAP] = sAnims_PikachuWorldCap, + [SPECIES_PICHU_SPIKY_EARED] = sAnims_PichuSpikyEared, + [SPECIES_UNOWN_B] = sAnims_UnownB, + [SPECIES_UNOWN_C] = sAnims_UnownC, + [SPECIES_UNOWN_D] = sAnims_UnownD, + [SPECIES_UNOWN_E] = sAnims_UnownE, + [SPECIES_UNOWN_F] = sAnims_UnownF, + [SPECIES_UNOWN_G] = sAnims_UnownG, + [SPECIES_UNOWN_H] = sAnims_UnownH, + [SPECIES_UNOWN_I] = sAnims_UnownI, + [SPECIES_UNOWN_J] = sAnims_UnownJ, + [SPECIES_UNOWN_K] = sAnims_UnownK, + [SPECIES_UNOWN_L] = sAnims_UnownL, + [SPECIES_UNOWN_M] = sAnims_UnownM, + [SPECIES_UNOWN_N] = sAnims_UnownN, + [SPECIES_UNOWN_O] = sAnims_UnownO, + [SPECIES_UNOWN_P] = sAnims_UnownP, + [SPECIES_UNOWN_Q] = sAnims_UnownQ, + [SPECIES_UNOWN_R] = sAnims_UnownR, + [SPECIES_UNOWN_S] = sAnims_UnownS, + [SPECIES_UNOWN_T] = sAnims_UnownT, + [SPECIES_UNOWN_U] = sAnims_UnownU, + [SPECIES_UNOWN_V] = sAnims_UnownV, + [SPECIES_UNOWN_W] = sAnims_UnownW, + [SPECIES_UNOWN_X] = sAnims_UnownX, + [SPECIES_UNOWN_Y] = sAnims_UnownY, + [SPECIES_UNOWN_Z] = sAnims_UnownZ, + [SPECIES_UNOWN_EMARK] = sAnims_UnownEMark, + [SPECIES_UNOWN_QMARK] = sAnims_UnownQMark, + [SPECIES_CASTFORM_SUNNY] = sAnims_Castform, + [SPECIES_CASTFORM_RAINY] = sAnims_Castform, + [SPECIES_CASTFORM_SNOWY] = sAnims_Castform, + [SPECIES_DEOXYS_ATTACK] = sAnims_DeoxysAttack, + [SPECIES_DEOXYS_DEFENSE] = sAnims_DeoxysDefense, + [SPECIES_DEOXYS_SPEED] = sAnims_DeoxysSpeed, #if P_GEN_4_POKEMON == TRUE - ANIM_CMD_FULL(BURMY_SANDY_CLOAK, sAnims_BURMY), - ANIM_CMD_FULL(BURMY_TRASH_CLOAK, sAnims_BURMY), - ANIM_CMD_FULL(WORMADAM_SANDY_CLOAK, sAnims_WORMADAM), - ANIM_CMD_FULL(WORMADAM_TRASH_CLOAK, sAnims_WORMADAM), - ANIM_CMD(CHERRIM_SUNSHINE), - ANIM_CMD_FULL(SHELLOS_EAST_SEA, sAnims_SHELLOS), - ANIM_CMD_FULL(GASTRODON_EAST_SEA, sAnims_GASTRODON), - ANIM_CMD(ROTOM_HEAT), - ANIM_CMD(ROTOM_WASH), - ANIM_CMD(ROTOM_FROST), - ANIM_CMD(ROTOM_FAN), - ANIM_CMD(ROTOM_MOW), - ANIM_CMD(DIALGA_ORIGIN), - ANIM_CMD(PALKIA_ORIGIN), - ANIM_CMD(GIRATINA_ORIGIN), - ANIM_CMD(SHAYMIN_SKY), - ANIM_CMD_FULL(ARCEUS_FIGHTING, sAnims_ARCEUS), - ANIM_CMD_FULL(ARCEUS_FLYING, sAnims_ARCEUS), - ANIM_CMD_FULL(ARCEUS_POISON, sAnims_ARCEUS), - ANIM_CMD_FULL(ARCEUS_GROUND, sAnims_ARCEUS), - ANIM_CMD_FULL(ARCEUS_ROCK, sAnims_ARCEUS), - ANIM_CMD_FULL(ARCEUS_BUG, sAnims_ARCEUS), - ANIM_CMD_FULL(ARCEUS_GHOST, sAnims_ARCEUS), - ANIM_CMD_FULL(ARCEUS_STEEL, sAnims_ARCEUS), - ANIM_CMD_FULL(ARCEUS_FIRE, sAnims_ARCEUS), - ANIM_CMD_FULL(ARCEUS_WATER, sAnims_ARCEUS), - ANIM_CMD_FULL(ARCEUS_GRASS, sAnims_ARCEUS), - ANIM_CMD_FULL(ARCEUS_ELECTRIC, sAnims_ARCEUS), - ANIM_CMD_FULL(ARCEUS_PSYCHIC, sAnims_ARCEUS), - ANIM_CMD_FULL(ARCEUS_ICE, sAnims_ARCEUS), - ANIM_CMD_FULL(ARCEUS_DRAGON, sAnims_ARCEUS), - ANIM_CMD_FULL(ARCEUS_DARK, sAnims_ARCEUS), - ANIM_CMD_FULL(ARCEUS_FAIRY, sAnims_ARCEUS), + [SPECIES_BURMY_SANDY_CLOAK] = sAnims_Burmy, + [SPECIES_BURMY_TRASH_CLOAK] = sAnims_Burmy, + [SPECIES_WORMADAM_SANDY_CLOAK] = sAnims_Wormadam, + [SPECIES_WORMADAM_TRASH_CLOAK] = sAnims_Wormadam, + [SPECIES_CHERRIM_SUNSHINE] = sAnims_CherrimSunshine, + [SPECIES_SHELLOS_EAST_SEA] = sAnims_Shellos, + [SPECIES_GASTRODON_EAST_SEA] = sAnims_Gastrodon, + [SPECIES_ROTOM_HEAT] = sAnims_RotomHeat, + [SPECIES_ROTOM_WASH] = sAnims_RotomWash, + [SPECIES_ROTOM_FROST] = sAnims_RotomFrost, + [SPECIES_ROTOM_FAN] = sAnims_RotomFan, + [SPECIES_ROTOM_MOW] = sAnims_RotomMow, + [SPECIES_DIALGA_ORIGIN] = sAnims_DialgaOrigin, + [SPECIES_PALKIA_ORIGIN] = sAnims_PalkiaOrigin, + [SPECIES_GIRATINA_ORIGIN] = sAnims_GiratinaOrigin, + [SPECIES_SHAYMIN_SKY] = sAnims_ShayminSky, + [SPECIES_ARCEUS_FIGHTING] = sAnims_Arceus, + [SPECIES_ARCEUS_FLYING] = sAnims_Arceus, + [SPECIES_ARCEUS_POISON] = sAnims_Arceus, + [SPECIES_ARCEUS_GROUND] = sAnims_Arceus, + [SPECIES_ARCEUS_ROCK] = sAnims_Arceus, + [SPECIES_ARCEUS_BUG] = sAnims_Arceus, + [SPECIES_ARCEUS_GHOST] = sAnims_Arceus, + [SPECIES_ARCEUS_STEEL] = sAnims_Arceus, + [SPECIES_ARCEUS_FIRE] = sAnims_Arceus, + [SPECIES_ARCEUS_WATER] = sAnims_Arceus, + [SPECIES_ARCEUS_GRASS] = sAnims_Arceus, + [SPECIES_ARCEUS_ELECTRIC] = sAnims_Arceus, + [SPECIES_ARCEUS_PSYCHIC] = sAnims_Arceus, + [SPECIES_ARCEUS_ICE] = sAnims_Arceus, + [SPECIES_ARCEUS_DRAGON] = sAnims_Arceus, + [SPECIES_ARCEUS_DARK] = sAnims_Arceus, + [SPECIES_ARCEUS_FAIRY] = sAnims_Arceus, #endif #if P_GEN_5_POKEMON == TRUE - ANIM_CMD_FULL(BASCULIN_BLUE_STRIPED, sAnims_BASCULIN), - ANIM_CMD_FULL(BASCULIN_WHITE_STRIPED, sAnims_BASCULIN), - ANIM_CMD(DARMANITAN_ZEN_MODE), - ANIM_CMD(DARMANITAN_ZEN_MODE_GALARIAN), - ANIM_CMD_FULL(DEERLING_SUMMER, sAnims_DEERLING), - ANIM_CMD_FULL(DEERLING_AUTUMN, sAnims_DEERLING), - ANIM_CMD_FULL(DEERLING_WINTER, sAnims_DEERLING), - ANIM_CMD_FULL(SAWSBUCK_SUMMER, sAnims_SAWSBUCK), - ANIM_CMD_FULL(SAWSBUCK_AUTUMN, sAnims_SAWSBUCK), - ANIM_CMD_FULL(SAWSBUCK_WINTER, sAnims_SAWSBUCK), - ANIM_CMD(TORNADUS_THERIAN), - ANIM_CMD(THUNDURUS_THERIAN), - ANIM_CMD(LANDORUS_THERIAN), - ANIM_CMD(KYUREM_WHITE), - ANIM_CMD(KYUREM_BLACK), - ANIM_CMD(KELDEO_RESOLUTE), - ANIM_CMD(MELOETTA_PIROUETTE), - ANIM_CMD_FULL(GENESECT_DOUSE_DRIVE, sAnims_GENESECT), - ANIM_CMD_FULL(GENESECT_SHOCK_DRIVE, sAnims_GENESECT), - ANIM_CMD_FULL(GENESECT_BURN_DRIVE, sAnims_GENESECT), - ANIM_CMD_FULL(GENESECT_CHILL_DRIVE, sAnims_GENESECT), + [SPECIES_BASCULIN_BLUE_STRIPED] = sAnims_Basculin, + [SPECIES_BASCULIN_WHITE_STRIPED] = sAnims_Basculin, + [SPECIES_DARMANITAN_ZEN_MODE] = sAnims_DarmanitanZenMode, + [SPECIES_DARMANITAN_ZEN_MODE_GALARIAN] = sAnims_DarmanitanZenModeGalarian, + [SPECIES_DEERLING_SUMMER] = sAnims_Deerling, + [SPECIES_DEERLING_AUTUMN] = sAnims_Deerling, + [SPECIES_DEERLING_WINTER] = sAnims_Deerling, + [SPECIES_SAWSBUCK_SUMMER] = sAnims_Sawsbuck, + [SPECIES_SAWSBUCK_AUTUMN] = sAnims_Sawsbuck, + [SPECIES_SAWSBUCK_WINTER] = sAnims_Sawsbuck, + [SPECIES_TORNADUS_THERIAN] = sAnims_TornadusTherian, + [SPECIES_THUNDURUS_THERIAN] = sAnims_ThundurusTherian, + [SPECIES_LANDORUS_THERIAN] = sAnims_LandorusTherian, + [SPECIES_KYUREM_WHITE] = sAnims_KyuremWhite, + [SPECIES_KYUREM_BLACK] = sAnims_KyuremBlack, + [SPECIES_KELDEO_RESOLUTE] = sAnims_KeldeoResolute, + [SPECIES_MELOETTA_PIROUETTE] = sAnims_MeloettaPirouette, + [SPECIES_GENESECT_DOUSE_DRIVE] = sAnims_Genesect, + [SPECIES_GENESECT_SHOCK_DRIVE] = sAnims_Genesect, + [SPECIES_GENESECT_BURN_DRIVE] = sAnims_Genesect, + [SPECIES_GENESECT_CHILL_DRIVE] = sAnims_Genesect, #endif #if P_GEN_6_POKEMON == TRUE - ANIM_CMD_FULL(GRENINJA_BATTLE_BOND, sAnims_GRENINJA), - ANIM_CMD(GRENINJA_ASH), - ANIM_CMD_FULL(VIVILLON_POLAR, sAnims_VIVILLON), - ANIM_CMD_FULL(VIVILLON_TUNDRA, sAnims_VIVILLON), - ANIM_CMD_FULL(VIVILLON_CONTINENTAL, sAnims_VIVILLON), - ANIM_CMD_FULL(VIVILLON_GARDEN, sAnims_VIVILLON), - ANIM_CMD_FULL(VIVILLON_ELEGANT, sAnims_VIVILLON), - ANIM_CMD_FULL(VIVILLON_MEADOW, sAnims_VIVILLON), - ANIM_CMD_FULL(VIVILLON_MODERN, sAnims_VIVILLON), - ANIM_CMD_FULL(VIVILLON_MARINE, sAnims_VIVILLON), - ANIM_CMD_FULL(VIVILLON_ARCHIPELAGO, sAnims_VIVILLON), - ANIM_CMD_FULL(VIVILLON_HIGH_PLAINS, sAnims_VIVILLON), - ANIM_CMD_FULL(VIVILLON_SANDSTORM, sAnims_VIVILLON), - ANIM_CMD_FULL(VIVILLON_RIVER, sAnims_VIVILLON), - ANIM_CMD_FULL(VIVILLON_MONSOON, sAnims_VIVILLON), - ANIM_CMD_FULL(VIVILLON_SAVANNA, sAnims_VIVILLON), - ANIM_CMD_FULL(VIVILLON_SUN, sAnims_VIVILLON), - ANIM_CMD_FULL(VIVILLON_OCEAN, sAnims_VIVILLON), - ANIM_CMD_FULL(VIVILLON_JUNGLE, sAnims_VIVILLON), - ANIM_CMD_FULL(VIVILLON_FANCY, sAnims_VIVILLON), - ANIM_CMD_FULL(VIVILLON_POKE_BALL, sAnims_VIVILLON), - ANIM_CMD_FULL(FLABEBE_YELLOW_FLOWER, sAnims_FLABEBE), - ANIM_CMD_FULL(FLABEBE_ORANGE_FLOWER, sAnims_FLABEBE), - ANIM_CMD_FULL(FLABEBE_BLUE_FLOWER, sAnims_FLABEBE), - ANIM_CMD_FULL(FLABEBE_WHITE_FLOWER, sAnims_FLABEBE), - ANIM_CMD_FULL(FLOETTE_YELLOW_FLOWER, sAnims_FLOETTE), - ANIM_CMD_FULL(FLOETTE_ORANGE_FLOWER, sAnims_FLOETTE), - ANIM_CMD_FULL(FLOETTE_BLUE_FLOWER, sAnims_FLOETTE), - ANIM_CMD_FULL(FLOETTE_WHITE_FLOWER, sAnims_FLOETTE), - ANIM_CMD_FULL(FLOETTE_ETERNAL_FLOWER, sAnims_FLOETTE), - ANIM_CMD_FULL(FLORGES_YELLOW_FLOWER, sAnims_FLORGES), - ANIM_CMD_FULL(FLORGES_ORANGE_FLOWER, sAnims_FLORGES), - ANIM_CMD_FULL(FLORGES_BLUE_FLOWER, sAnims_FLORGES), - ANIM_CMD_FULL(FLORGES_WHITE_FLOWER, sAnims_FLORGES), - ANIM_CMD_FULL(FURFROU_HEART_TRIM, sAnims_FURFROU), - ANIM_CMD_FULL(FURFROU_STAR_TRIM, sAnims_FURFROU), - ANIM_CMD_FULL(FURFROU_DIAMOND_TRIM, sAnims_FURFROU), - ANIM_CMD_FULL(FURFROU_DEBUTANTE_TRIM, sAnims_FURFROU), - ANIM_CMD_FULL(FURFROU_MATRON_TRIM, sAnims_FURFROU), - ANIM_CMD_FULL(FURFROU_DANDY_TRIM, sAnims_FURFROU), - ANIM_CMD_FULL(FURFROU_LA_REINE_TRIM, sAnims_FURFROU), - ANIM_CMD_FULL(FURFROU_KABUKI_TRIM, sAnims_FURFROU), - ANIM_CMD_FULL(FURFROU_PHARAOH_TRIM, sAnims_FURFROU), - ANIM_CMD_FULL(MEOWSTIC_FEMALE, sAnims_MEOWSTIC), - ANIM_CMD(AEGISLASH_BLADE), - ANIM_CMD_FULL(PUMPKABOO_SMALL, sAnims_PUMPKABOO), - ANIM_CMD_FULL(PUMPKABOO_LARGE, sAnims_PUMPKABOO), - ANIM_CMD_FULL(PUMPKABOO_SUPER, sAnims_PUMPKABOO), - ANIM_CMD_FULL(GOURGEIST_SMALL, sAnims_GOURGEIST), - ANIM_CMD_FULL(GOURGEIST_LARGE, sAnims_GOURGEIST), - ANIM_CMD_FULL(GOURGEIST_SUPER, sAnims_GOURGEIST), - ANIM_CMD_FULL(XERNEAS_ACTIVE, sAnims_XERNEAS), - ANIM_CMD(ZYGARDE_10), - ANIM_CMD_FULL(ZYGARDE_10_POWER_CONSTRUCT, sAnims_ZYGARDE_10), - ANIM_CMD_FULL(ZYGARDE_50_POWER_CONSTRUCT, sAnims_ZYGARDE), - ANIM_CMD(ZYGARDE_COMPLETE), - ANIM_CMD(HOOPA_UNBOUND), + [SPECIES_GRENINJA_BATTLE_BOND] = sAnims_Greninja, + [SPECIES_GRENINJA_ASH] = sAnims_GreninjaAsh, + [SPECIES_VIVILLON_POLAR] = sAnims_Vivillon, + [SPECIES_VIVILLON_TUNDRA] = sAnims_Vivillon, + [SPECIES_VIVILLON_CONTINENTAL] = sAnims_Vivillon, + [SPECIES_VIVILLON_GARDEN] = sAnims_Vivillon, + [SPECIES_VIVILLON_ELEGANT] = sAnims_Vivillon, + [SPECIES_VIVILLON_MEADOW] = sAnims_Vivillon, + [SPECIES_VIVILLON_MODERN] = sAnims_Vivillon, + [SPECIES_VIVILLON_MARINE] = sAnims_Vivillon, + [SPECIES_VIVILLON_ARCHIPELAGO] = sAnims_Vivillon, + [SPECIES_VIVILLON_HIGH_PLAINS] = sAnims_Vivillon, + [SPECIES_VIVILLON_SANDSTORM] = sAnims_Vivillon, + [SPECIES_VIVILLON_RIVER] = sAnims_Vivillon, + [SPECIES_VIVILLON_MONSOON] = sAnims_Vivillon, + [SPECIES_VIVILLON_SAVANNA] = sAnims_Vivillon, + [SPECIES_VIVILLON_SUN] = sAnims_Vivillon, + [SPECIES_VIVILLON_OCEAN] = sAnims_Vivillon, + [SPECIES_VIVILLON_JUNGLE] = sAnims_Vivillon, + [SPECIES_VIVILLON_FANCY] = sAnims_Vivillon, + [SPECIES_VIVILLON_POKE_BALL] = sAnims_Vivillon, + [SPECIES_FLABEBE_YELLOW_FLOWER] = sAnims_Flabebe, + [SPECIES_FLABEBE_ORANGE_FLOWER] = sAnims_Flabebe, + [SPECIES_FLABEBE_BLUE_FLOWER] = sAnims_Flabebe, + [SPECIES_FLABEBE_WHITE_FLOWER] = sAnims_Flabebe, + [SPECIES_FLOETTE_YELLOW_FLOWER] = sAnims_Floette, + [SPECIES_FLOETTE_ORANGE_FLOWER] = sAnims_Floette, + [SPECIES_FLOETTE_BLUE_FLOWER] = sAnims_Floette, + [SPECIES_FLOETTE_WHITE_FLOWER] = sAnims_Floette, + [SPECIES_FLOETTE_ETERNAL_FLOWER] = sAnims_Floette, + [SPECIES_FLORGES_YELLOW_FLOWER] = sAnims_Florges, + [SPECIES_FLORGES_ORANGE_FLOWER] = sAnims_Florges, + [SPECIES_FLORGES_BLUE_FLOWER] = sAnims_Florges, + [SPECIES_FLORGES_WHITE_FLOWER] = sAnims_Florges, + [SPECIES_FURFROU_HEART_TRIM] = sAnims_Furfrou, + [SPECIES_FURFROU_STAR_TRIM] = sAnims_Furfrou, + [SPECIES_FURFROU_DIAMOND_TRIM] = sAnims_Furfrou, + [SPECIES_FURFROU_DEBUTANTE_TRIM] = sAnims_Furfrou, + [SPECIES_FURFROU_MATRON_TRIM] = sAnims_Furfrou, + [SPECIES_FURFROU_DANDY_TRIM] = sAnims_Furfrou, + [SPECIES_FURFROU_LA_REINE_TRIM] = sAnims_Furfrou, + [SPECIES_FURFROU_KABUKI_TRIM] = sAnims_Furfrou, + [SPECIES_FURFROU_PHARAOH_TRIM] = sAnims_Furfrou, + [SPECIES_MEOWSTIC_FEMALE] = sAnims_Meowstic, + [SPECIES_AEGISLASH_BLADE] = sAnims_AegislashBlade, + [SPECIES_PUMPKABOO_SMALL] = sAnims_Pumpkaboo, + [SPECIES_PUMPKABOO_LARGE] = sAnims_Pumpkaboo, + [SPECIES_PUMPKABOO_SUPER] = sAnims_Pumpkaboo, + [SPECIES_GOURGEIST_SMALL] = sAnims_Gourgeist, + [SPECIES_GOURGEIST_LARGE] = sAnims_Gourgeist, + [SPECIES_GOURGEIST_SUPER] = sAnims_Gourgeist, + [SPECIES_XERNEAS_ACTIVE] = sAnims_Xerneas, + [SPECIES_ZYGARDE_10] = sAnims_Zygarde10, + [SPECIES_ZYGARDE_10_POWER_CONSTRUCT] = sAnims_Zygarde10, + [SPECIES_ZYGARDE_50_POWER_CONSTRUCT] = sAnims_Zygarde, + [SPECIES_ZYGARDE_COMPLETE] = sAnims_ZygardeComplete, + [SPECIES_HOOPA_UNBOUND] = sAnims_HoopaUnbound, #endif #if P_GEN_7_POKEMON == TRUE - ANIM_CMD_FULL(ORICORIO_POM_POM, sAnims_ORICORIO), - ANIM_CMD_FULL(ORICORIO_PAU, sAnims_ORICORIO), - ANIM_CMD_FULL(ORICORIO_SENSU, sAnims_ORICORIO), - ANIM_CMD_FULL(ROCKRUFF_OWN_TEMPO, sAnims_ROCKRUFF), - ANIM_CMD(LYCANROC_MIDNIGHT), - ANIM_CMD(LYCANROC_DUSK), - ANIM_CMD(WISHIWASHI_SCHOOL), - ANIM_CMD_FULL(SILVALLY_FIGHTING, sAnims_SILVALLY), - ANIM_CMD_FULL(SILVALLY_FLYING, sAnims_SILVALLY), - ANIM_CMD_FULL(SILVALLY_POISON, sAnims_SILVALLY), - ANIM_CMD_FULL(SILVALLY_GROUND, sAnims_SILVALLY), - ANIM_CMD_FULL(SILVALLY_ROCK, sAnims_SILVALLY), - ANIM_CMD_FULL(SILVALLY_BUG, sAnims_SILVALLY), - ANIM_CMD_FULL(SILVALLY_GHOST, sAnims_SILVALLY), - ANIM_CMD_FULL(SILVALLY_STEEL, sAnims_SILVALLY), - ANIM_CMD_FULL(SILVALLY_FIRE, sAnims_SILVALLY), - ANIM_CMD_FULL(SILVALLY_WATER, sAnims_SILVALLY), - ANIM_CMD_FULL(SILVALLY_GRASS, sAnims_SILVALLY), - ANIM_CMD_FULL(SILVALLY_ELECTRIC, sAnims_SILVALLY), - ANIM_CMD_FULL(SILVALLY_PSYCHIC, sAnims_SILVALLY), - ANIM_CMD_FULL(SILVALLY_ICE, sAnims_SILVALLY), - ANIM_CMD_FULL(SILVALLY_DRAGON, sAnims_SILVALLY), - ANIM_CMD_FULL(SILVALLY_DARK, sAnims_SILVALLY), - ANIM_CMD_FULL(SILVALLY_FAIRY, sAnims_SILVALLY), - ANIM_CMD_FULL(MINIOR_METEOR_ORANGE, sAnims_MINIOR), - ANIM_CMD_FULL(MINIOR_METEOR_YELLOW, sAnims_MINIOR), - ANIM_CMD_FULL(MINIOR_METEOR_GREEN, sAnims_MINIOR), - ANIM_CMD_FULL(MINIOR_METEOR_BLUE, sAnims_MINIOR), - ANIM_CMD_FULL(MINIOR_METEOR_INDIGO, sAnims_MINIOR), - ANIM_CMD_FULL(MINIOR_METEOR_VIOLET, sAnims_MINIOR), - ANIM_CMD_FULL(MINIOR_CORE_RED, sAnims_MINIOR), - ANIM_CMD_FULL(MINIOR_CORE_ORANGE, sAnims_MINIOR), - ANIM_CMD_FULL(MINIOR_CORE_YELLOW, sAnims_MINIOR), - ANIM_CMD_FULL(MINIOR_CORE_GREEN, sAnims_MINIOR), - ANIM_CMD_FULL(MINIOR_CORE_BLUE, sAnims_MINIOR), - ANIM_CMD_FULL(MINIOR_CORE_INDIGO, sAnims_MINIOR), - ANIM_CMD_FULL(MINIOR_CORE_VIOLET, sAnims_MINIOR), - ANIM_CMD(MIMIKYU_BUSTED), - ANIM_CMD_FULL(NECROZMA_DUSK_MANE, sAnims_NECROZMA), - ANIM_CMD_FULL(NECROZMA_DAWN_WINGS, sAnims_NECROZMA), - ANIM_CMD_FULL(NECROZMA_ULTRA, sAnims_NECROZMA), - ANIM_CMD_FULL(MAGEARNA_ORIGINAL_COLOR, sAnims_MAGEARNA), + [SPECIES_ORICORIO_POM_POM] = sAnims_Oricorio, + [SPECIES_ORICORIO_PAU] = sAnims_Oricorio, + [SPECIES_ORICORIO_SENSU] = sAnims_Oricorio, + [SPECIES_ROCKRUFF_OWN_TEMPO] = sAnims_Rockruff, + [SPECIES_LYCANROC_MIDNIGHT] = sAnims_LycanrocMidnight, + [SPECIES_LYCANROC_DUSK] = sAnims_LycanrocDusk, + [SPECIES_WISHIWASHI_SCHOOL] = sAnims_WishiwashiSchool, + [SPECIES_SILVALLY_FIGHTING] = sAnims_Silvally, + [SPECIES_SILVALLY_FLYING] = sAnims_Silvally, + [SPECIES_SILVALLY_POISON] = sAnims_Silvally, + [SPECIES_SILVALLY_GROUND] = sAnims_Silvally, + [SPECIES_SILVALLY_ROCK] = sAnims_Silvally, + [SPECIES_SILVALLY_BUG] = sAnims_Silvally, + [SPECIES_SILVALLY_GHOST] = sAnims_Silvally, + [SPECIES_SILVALLY_STEEL] = sAnims_Silvally, + [SPECIES_SILVALLY_FIRE] = sAnims_Silvally, + [SPECIES_SILVALLY_WATER] = sAnims_Silvally, + [SPECIES_SILVALLY_GRASS] = sAnims_Silvally, + [SPECIES_SILVALLY_ELECTRIC] = sAnims_Silvally, + [SPECIES_SILVALLY_PSYCHIC] = sAnims_Silvally, + [SPECIES_SILVALLY_ICE] = sAnims_Silvally, + [SPECIES_SILVALLY_DRAGON] = sAnims_Silvally, + [SPECIES_SILVALLY_DARK] = sAnims_Silvally, + [SPECIES_SILVALLY_FAIRY] = sAnims_Silvally, + [SPECIES_MINIOR_METEOR_ORANGE] = sAnims_Minior, + [SPECIES_MINIOR_METEOR_YELLOW] = sAnims_Minior, + [SPECIES_MINIOR_METEOR_GREEN] = sAnims_Minior, + [SPECIES_MINIOR_METEOR_BLUE] = sAnims_Minior, + [SPECIES_MINIOR_METEOR_INDIGO] = sAnims_Minior, + [SPECIES_MINIOR_METEOR_VIOLET] = sAnims_Minior, + [SPECIES_MINIOR_CORE_RED] = sAnims_Minior, + [SPECIES_MINIOR_CORE_ORANGE] = sAnims_Minior, + [SPECIES_MINIOR_CORE_YELLOW] = sAnims_Minior, + [SPECIES_MINIOR_CORE_GREEN] = sAnims_Minior, + [SPECIES_MINIOR_CORE_BLUE] = sAnims_Minior, + [SPECIES_MINIOR_CORE_INDIGO] = sAnims_Minior, + [SPECIES_MINIOR_CORE_VIOLET] = sAnims_Minior, + [SPECIES_MIMIKYU_BUSTED] = sAnims_MimikyuBusted, + [SPECIES_NECROZMA_DUSK_MANE] = sAnims_Necrozma, + [SPECIES_NECROZMA_DAWN_WINGS] = sAnims_Necrozma, + [SPECIES_NECROZMA_ULTRA] = sAnims_Necrozma, + [SPECIES_MAGEARNA_ORIGINAL_COLOR] = sAnims_Magearna, #endif #if P_GEN_8_POKEMON == TRUE - ANIM_CMD_FULL(CRAMORANT_GULPING, sAnims_CRAMORANT), - ANIM_CMD_FULL(CRAMORANT_GORGING, sAnims_CRAMORANT), - ANIM_CMD_FULL(TOXTRICITY_LOW_KEY, sAnims_TOXTRICITY), - ANIM_CMD_FULL(SINISTEA_ANTIQUE, sAnims_SINISTEA), - ANIM_CMD_FULL(POLTEAGEIST_ANTIQUE, sAnims_POLTEAGEIST), - ANIM_CMD_FULL(ALCREMIE_RUBY_CREAM, sAnims_ALCREMIE), - ANIM_CMD_FULL(ALCREMIE_MATCHA_CREAM, sAnims_ALCREMIE), - ANIM_CMD_FULL(ALCREMIE_MINT_CREAM, sAnims_ALCREMIE), - ANIM_CMD_FULL(ALCREMIE_LEMON_CREAM, sAnims_ALCREMIE), - ANIM_CMD_FULL(ALCREMIE_SALTED_CREAM, sAnims_ALCREMIE), - ANIM_CMD_FULL(ALCREMIE_RUBY_SWIRL, sAnims_ALCREMIE), - ANIM_CMD_FULL(ALCREMIE_CARAMEL_SWIRL, sAnims_ALCREMIE), - ANIM_CMD_FULL(ALCREMIE_RAINBOW_SWIRL, sAnims_ALCREMIE), - ANIM_CMD_FULL(EISCUE_NOICE_FACE, sAnims_EISCUE), - ANIM_CMD_FULL(INDEEDEE_FEMALE, sAnims_INDEEDEE), - ANIM_CMD_FULL(MORPEKO_HANGRY, sAnims_MORPEKO), - ANIM_CMD_FULL(ZACIAN_CROWNED_SWORD, sAnims_ZACIAN), - ANIM_CMD_FULL(ZAMAZENTA_CROWNED_SHIELD, sAnims_ZAMAZENTA), - ANIM_CMD_FULL(ETERNATUS_ETERNAMAX, sAnims_ETERNATUS), - ANIM_CMD_FULL(URSHIFU_RAPID_STRIKE_STYLE, sAnims_URSHIFU), - ANIM_CMD_FULL(ZARUDE_DADA, sAnims_ZARUDE), - ANIM_CMD_FULL(CALYREX_ICE_RIDER, sAnims_CALYREX), - ANIM_CMD_FULL(CALYREX_SHADOW_RIDER, sAnims_CALYREX), - ANIM_CMD(ENAMORUS_THERIAN), + [SPECIES_CRAMORANT_GULPING] = sAnims_Cramorant, + [SPECIES_CRAMORANT_GORGING] = sAnims_Cramorant, + [SPECIES_TOXTRICITY_LOW_KEY] = sAnims_Toxtricity, + [SPECIES_SINISTEA_ANTIQUE] = sAnims_Sinistea, + [SPECIES_POLTEAGEIST_ANTIQUE] = sAnims_Polteageist, + [SPECIES_ALCREMIE_RUBY_CREAM] = sAnims_Alcremie, + [SPECIES_ALCREMIE_MATCHA_CREAM] = sAnims_Alcremie, + [SPECIES_ALCREMIE_MINT_CREAM] = sAnims_Alcremie, + [SPECIES_ALCREMIE_LEMON_CREAM] = sAnims_Alcremie, + [SPECIES_ALCREMIE_SALTED_CREAM] = sAnims_Alcremie, + [SPECIES_ALCREMIE_RUBY_SWIRL] = sAnims_Alcremie, + [SPECIES_ALCREMIE_CARAMEL_SWIRL] = sAnims_Alcremie, + [SPECIES_ALCREMIE_RAINBOW_SWIRL] = sAnims_Alcremie, + [SPECIES_EISCUE_NOICE_FACE] = sAnims_Eiscue, + [SPECIES_INDEEDEE_FEMALE] = sAnims_Indeedee, + [SPECIES_MORPEKO_HANGRY] = sAnims_Morpeko, + [SPECIES_ZACIAN_CROWNED_SWORD] = sAnims_Zacian, + [SPECIES_ZAMAZENTA_CROWNED_SHIELD] = sAnims_Zamazenta, + [SPECIES_ETERNATUS_ETERNAMAX] = sAnims_Eternatus, + [SPECIES_URSHIFU_RAPID_STRIKE_STYLE] = sAnims_Urshifu, + [SPECIES_ZARUDE_DADA] = sAnims_Zarude, + [SPECIES_CALYREX_ICE_RIDER] = sAnims_Calyrex, + [SPECIES_CALYREX_SHADOW_RIDER] = sAnims_Calyrex, + [SPECIES_ENAMORUS_THERIAN] = sAnims_EnamorusTherian, #endif - ANIM_CMD(EGG), + [SPECIES_EGG] = sAnims_Egg, }; - -#undef ANIM_CMD -#undef ANIM_CMD_FULL diff --git a/src/data/region_map/city_map_tilemaps.h b/src/data/region_map/city_map_tilemaps.h index fed158935..11a48c15d 100644 --- a/src/data/region_map/city_map_tilemaps.h +++ b/src/data/region_map/city_map_tilemaps.h @@ -1,22 +1,22 @@ -const u32 gPokenavCityMap_Lavaridge_0[] = INCBIN_U32("graphics/pokenav/city_maps/lavaridge_0.bin.lz"); -const u32 gPokenavCityMap_Fallarbor_0[] = INCBIN_U32("graphics/pokenav/city_maps/fallarbor_0.bin.lz"); -const u32 gPokenavCityMap_Fortree_0[] = INCBIN_U32("graphics/pokenav/city_maps/fortree_0.bin.lz"); -const u32 gPokenavCityMap_Slateport_0[] = INCBIN_U32("graphics/pokenav/city_maps/slateport_0.bin.lz"); -const u32 gPokenavCityMap_Slateport_1[] = INCBIN_U32("graphics/pokenav/city_maps/slateport_1.bin.lz"); -const u32 gPokenavCityMap_Rustboro_0[] = INCBIN_U32("graphics/pokenav/city_maps/rustboro_0.bin.lz"); -const u32 gPokenavCityMap_Rustboro_1[] = INCBIN_U32("graphics/pokenav/city_maps/rustboro_1.bin.lz"); -const u32 gPokenavCityMap_Pacifidlog_0[] = INCBIN_U32("graphics/pokenav/city_maps/pacifidlog_0.bin.lz"); -const u32 gPokenavCityMap_Mauville_1[] = INCBIN_U32("graphics/pokenav/city_maps/mauville_1.bin.lz"); -const u32 gPokenavCityMap_Mauville_0[] = INCBIN_U32("graphics/pokenav/city_maps/mauville_0.bin.lz"); -const u32 gPokenavCityMap_Oldale_0[] = INCBIN_U32("graphics/pokenav/city_maps/oldale_0.bin.lz"); -const u32 gPokenavCityMap_Lilycove_1[] = INCBIN_U32("graphics/pokenav/city_maps/lilycove_1.bin.lz"); -const u32 gPokenavCityMap_Lilycove_0[] = INCBIN_U32("graphics/pokenav/city_maps/lilycove_0.bin.lz"); -const u32 gPokenavCityMap_Littleroot_0[] = INCBIN_U32("graphics/pokenav/city_maps/littleroot_0.bin.lz"); -const u32 gPokenavCityMap_Dewford_0[] = INCBIN_U32("graphics/pokenav/city_maps/dewford_0.bin.lz"); -const u32 gPokenavCityMap_Sootopolis_0[] = INCBIN_U32("graphics/pokenav/city_maps/sootopolis_0.bin.lz"); -const u32 gPokenavCityMap_EverGrande_0[] = INCBIN_U32("graphics/pokenav/city_maps/ever_grande_0.bin.lz"); -const u32 gPokenavCityMap_EverGrande_1[] = INCBIN_U32("graphics/pokenav/city_maps/ever_grande_1.bin.lz"); -const u32 gPokenavCityMap_Verdanturf_0[] = INCBIN_U32("graphics/pokenav/city_maps/verdanturf_0.bin.lz"); -const u32 gPokenavCityMap_Mossdeep_1[] = INCBIN_U32("graphics/pokenav/city_maps/mossdeep_1.bin.lz"); -const u32 gPokenavCityMap_Mossdeep_0[] = INCBIN_U32("graphics/pokenav/city_maps/mossdeep_0.bin.lz"); -const u32 gPokenavCityMap_Petalburg_0[] = INCBIN_U32("graphics/pokenav/city_maps/petalburg_0.bin.lz"); +const u32 gPokenavCityMap_Lavaridge_0[] = INCBIN_U32("graphics/pokenav/region_map/city_maps/lavaridge_0.bin.lz"); +const u32 gPokenavCityMap_Fallarbor_0[] = INCBIN_U32("graphics/pokenav/region_map/city_maps/fallarbor_0.bin.lz"); +const u32 gPokenavCityMap_Fortree_0[] = INCBIN_U32("graphics/pokenav/region_map/city_maps/fortree_0.bin.lz"); +const u32 gPokenavCityMap_Slateport_0[] = INCBIN_U32("graphics/pokenav/region_map/city_maps/slateport_0.bin.lz"); +const u32 gPokenavCityMap_Slateport_1[] = INCBIN_U32("graphics/pokenav/region_map/city_maps/slateport_1.bin.lz"); +const u32 gPokenavCityMap_Rustboro_0[] = INCBIN_U32("graphics/pokenav/region_map/city_maps/rustboro_0.bin.lz"); +const u32 gPokenavCityMap_Rustboro_1[] = INCBIN_U32("graphics/pokenav/region_map/city_maps/rustboro_1.bin.lz"); +const u32 gPokenavCityMap_Pacifidlog_0[] = INCBIN_U32("graphics/pokenav/region_map/city_maps/pacifidlog_0.bin.lz"); +const u32 gPokenavCityMap_Mauville_1[] = INCBIN_U32("graphics/pokenav/region_map/city_maps/mauville_1.bin.lz"); +const u32 gPokenavCityMap_Mauville_0[] = INCBIN_U32("graphics/pokenav/region_map/city_maps/mauville_0.bin.lz"); +const u32 gPokenavCityMap_Oldale_0[] = INCBIN_U32("graphics/pokenav/region_map/city_maps/oldale_0.bin.lz"); +const u32 gPokenavCityMap_Lilycove_1[] = INCBIN_U32("graphics/pokenav/region_map/city_maps/lilycove_1.bin.lz"); +const u32 gPokenavCityMap_Lilycove_0[] = INCBIN_U32("graphics/pokenav/region_map/city_maps/lilycove_0.bin.lz"); +const u32 gPokenavCityMap_Littleroot_0[] = INCBIN_U32("graphics/pokenav/region_map/city_maps/littleroot_0.bin.lz"); +const u32 gPokenavCityMap_Dewford_0[] = INCBIN_U32("graphics/pokenav/region_map/city_maps/dewford_0.bin.lz"); +const u32 gPokenavCityMap_Sootopolis_0[] = INCBIN_U32("graphics/pokenav/region_map/city_maps/sootopolis_0.bin.lz"); +const u32 gPokenavCityMap_EverGrande_0[] = INCBIN_U32("graphics/pokenav/region_map/city_maps/ever_grande_0.bin.lz"); +const u32 gPokenavCityMap_EverGrande_1[] = INCBIN_U32("graphics/pokenav/region_map/city_maps/ever_grande_1.bin.lz"); +const u32 gPokenavCityMap_Verdanturf_0[] = INCBIN_U32("graphics/pokenav/region_map/city_maps/verdanturf_0.bin.lz"); +const u32 gPokenavCityMap_Mossdeep_1[] = INCBIN_U32("graphics/pokenav/region_map/city_maps/mossdeep_1.bin.lz"); +const u32 gPokenavCityMap_Mossdeep_0[] = INCBIN_U32("graphics/pokenav/region_map/city_maps/mossdeep_0.bin.lz"); +const u32 gPokenavCityMap_Petalburg_0[] = INCBIN_U32("graphics/pokenav/region_map/city_maps/petalburg_0.bin.lz"); diff --git a/src/data/region_map/region_map_entries.h b/src/data/region_map/region_map_entries.h deleted file mode 100644 index d1913cd8a..000000000 --- a/src/data/region_map/region_map_entries.h +++ /dev/null @@ -1,418 +0,0 @@ -#ifndef GUARD_DATA_REGION_MAP_REGION_MAP_ENTRIES_H -#define GUARD_DATA_REGION_MAP_REGION_MAP_ENTRIES_H - -static const u8 sMapName_LittlerootTown[] = _("LITTLEROOT TOWN"); -static const u8 sMapName_OldaleTown[] = _("OLDALE TOWN"); -static const u8 sMapName_DewfordTown[] = _("DEWFORD TOWN"); -static const u8 sMapName_LavaridgeTown[] = _("LAVARIDGE TOWN"); -static const u8 sMapName_FallarborTown[] = _("FALLARBOR TOWN"); -static const u8 sMapName_VerdanturfTown[] = _("VERDANTURF TOWN"); -static const u8 sMapName_PacifidlogTown[] = _("PACIFIDLOG TOWN"); -static const u8 sMapName_PetalburgCity[] = _("PETALBURG CITY"); -static const u8 sMapName_SlateportCity[] = _("SLATEPORT CITY"); -static const u8 sMapName_MauvilleCity[] = _("MAUVILLE CITY"); -static const u8 sMapName_RustboroCity[] = _("RUSTBORO CITY"); -static const u8 sMapName_FortreeCity[] = _("FORTREE CITY"); -static const u8 sMapName_LilycoveCity[] = _("LILYCOVE CITY"); -static const u8 sMapName_MossdeepCity[] = _("MOSSDEEP CITY"); -static const u8 sMapName_SootopolisCity[] = _("SOOTOPOLIS CITY"); -static const u8 sMapName_EverGrandeCity[] = _("EVER GRANDE CITY"); -static const u8 sMapName_Route101[] = _("ROUTE 101"); -static const u8 sMapName_Route102[] = _("ROUTE 102"); -static const u8 sMapName_Route103[] = _("ROUTE 103"); -static const u8 sMapName_Route104[] = _("ROUTE 104"); -static const u8 sMapName_Route105[] = _("ROUTE 105"); -static const u8 sMapName_Route106[] = _("ROUTE 106"); -static const u8 sMapName_Route107[] = _("ROUTE 107"); -static const u8 sMapName_Route108[] = _("ROUTE 108"); -static const u8 sMapName_Route109[] = _("ROUTE 109"); -static const u8 sMapName_Route110[] = _("ROUTE 110"); -static const u8 sMapName_Route111[] = _("ROUTE 111"); -static const u8 sMapName_Route112[] = _("ROUTE 112"); -static const u8 sMapName_Route113[] = _("ROUTE 113"); -static const u8 sMapName_Route114[] = _("ROUTE 114"); -static const u8 sMapName_Route115[] = _("ROUTE 115"); -static const u8 sMapName_Route116[] = _("ROUTE 116"); -static const u8 sMapName_Route117[] = _("ROUTE 117"); -static const u8 sMapName_Route118[] = _("ROUTE 118"); -static const u8 sMapName_Route119[] = _("ROUTE 119"); -static const u8 sMapName_Route120[] = _("ROUTE 120"); -static const u8 sMapName_Route121[] = _("ROUTE 121"); -static const u8 sMapName_Route122[] = _("ROUTE 122"); -static const u8 sMapName_Route123[] = _("ROUTE 123"); -static const u8 sMapName_Route124[] = _("ROUTE 124"); -static const u8 sMapName_Route125[] = _("ROUTE 125"); -static const u8 sMapName_Route126[] = _("ROUTE 126"); -static const u8 sMapName_Route127[] = _("ROUTE 127"); -static const u8 sMapName_Route128[] = _("ROUTE 128"); -static const u8 sMapName_Route129[] = _("ROUTE 129"); -static const u8 sMapName_Route130[] = _("ROUTE 130"); -static const u8 sMapName_Route131[] = _("ROUTE 131"); -static const u8 sMapName_Route132[] = _("ROUTE 132"); -static const u8 sMapName_Route133[] = _("ROUTE 133"); -static const u8 sMapName_Route134[] = _("ROUTE 134"); -static const u8 sMapName_Underwater[] = _("UNDERWATER"); -static const u8 sMapName_GraniteCave[] = _("GRANITE CAVE"); -static const u8 sMapName_MtChimney[] = _("MT. CHIMNEY"); -static const u8 sMapName_SafariZone[] = _("SAFARI ZONE"); -static const u8 sMapName_BattleFrontier[] = _("BATTLE FRONTIER"); -static const u8 sMapName_PetalburgWoods[] = _("PETALBURG WOODS"); -static const u8 sMapName_RusturfTunnel[] = _("RUSTURF TUNNEL"); -static const u8 sMapName_AbandonedShip[] = _("ABANDONED SHIP"); -static const u8 sMapName_NewMauville[] = _("NEW MAUVILLE"); -static const u8 sMapName_MeteorFalls[] = _("METEOR FALLS"); -static const u8 sMapName_MtPyre[] = _("MT. PYRE"); -static const u8 sMapName_AquaHideoutOld[] = _("{AQUA} HIDEOUT"); -static const u8 sMapName_ShoalCave[] = _("SHOAL CAVE"); -static const u8 sMapName_SeafloorCavern[] = _("SEAFLOOR CAVERN"); -static const u8 sMapName_VictoryRoad[] = _("VICTORY ROAD"); -static const u8 sMapName_MirageIsland[] = _("MIRAGE ISLAND"); -static const u8 sMapName_CaveOfOrigin[] = _("CAVE OF ORIGIN"); -static const u8 sMapName_SouthernIsland[] = _("SOUTHERN ISLAND"); -static const u8 sMapName_FieryPath[] = _("FIERY PATH"); -static const u8 sMapName_JaggedPass[] = _("JAGGED PASS"); -static const u8 sMapName_SealedChamber[] = _("SEALED CHAMBER"); -static const u8 sMapName_ScorchedSlab[] = _("SCORCHED SLAB"); -static const u8 sMapName_IslandCave[] = _("ISLAND CAVE"); -static const u8 sMapName_DesertRuins[] = _("DESERT RUINS"); -static const u8 sMapName_AncientTomb[] = _("ANCIENT TOMB"); -static const u8 sMapName_InsideOfTruck[] = _("INSIDE OF TRUCK"); -static const u8 sMapName_SkyPillar[] = _("SKY PILLAR"); -static const u8 sMapName_SecretBase[] = _("SECRET BASE"); -static const u8 sMapName_None[] = _(""); -static const u8 sMapName_PalletTown[] = _("PALLET TOWN"); -static const u8 sMapName_ViridianCity[] = _("VIRIDIAN CITY"); -static const u8 sMapName_PewterCity[] = _("PEWTER CITY"); -static const u8 sMapName_CeruleanCity[] = _("CERULEAN CITY"); -static const u8 sMapName_LavenderTown[] = _("LAVENDER TOWN"); -static const u8 sMapName_VermilionCity[] = _("VERMILION CITY"); -static const u8 sMapName_CeladonCity[] = _("CELADON CITY"); -static const u8 sMapName_FuchsiaCity[] = _("FUCHSIA CITY"); -static const u8 sMapName_CinnabarIsland[] = _("CINNABAR ISLAND"); -static const u8 sMapName_IndigoPlateau[] = _("INDIGO PLATEAU"); -static const u8 sMapName_SaffronCity[] = _("SAFFRON CITY"); -static const u8 sMapName_Route4[] = _("ROUTE 4"); -static const u8 sMapName_Route10[] = _("ROUTE 10"); -static const u8 sMapName_Route1[] = _("ROUTE 1"); -static const u8 sMapName_Route2[] = _("ROUTE 2"); -static const u8 sMapName_Route3[] = _("ROUTE 3"); -static const u8 sMapName_Route4_2[] = _("ROUTE 4"); -static const u8 sMapName_Route5[] = _("ROUTE 5"); -static const u8 sMapName_Route6[] = _("ROUTE 6"); -static const u8 sMapName_Route7[] = _("ROUTE 7"); -static const u8 sMapName_Route8[] = _("ROUTE 8"); -static const u8 sMapName_Route9[] = _("ROUTE 9"); -static const u8 sMapName_Route10_2[] = _("ROUTE 10"); -static const u8 sMapName_Route11[] = _("ROUTE 11"); -static const u8 sMapName_Route12[] = _("ROUTE 12"); -static const u8 sMapName_Route13[] = _("ROUTE 13"); -static const u8 sMapName_Route14[] = _("ROUTE 14"); -static const u8 sMapName_Route15[] = _("ROUTE 15"); -static const u8 sMapName_Route16[] = _("ROUTE 16"); -static const u8 sMapName_Route17[] = _("ROUTE 17"); -static const u8 sMapName_Route18[] = _("ROUTE 18"); -static const u8 sMapName_Route19[] = _("ROUTE 19"); -static const u8 sMapName_Route20[] = _("ROUTE 20"); -static const u8 sMapName_Route21[] = _("ROUTE 21"); -static const u8 sMapName_Route22[] = _("ROUTE 22"); -static const u8 sMapName_Route23[] = _("ROUTE 23"); -static const u8 sMapName_Route24[] = _("ROUTE 24"); -static const u8 sMapName_Route25[] = _("ROUTE 25"); -static const u8 sMapName_ViridianForest[] = _("VIRIDIAN FOREST"); -static const u8 sMapName_MtMoon[] = _("MT. MOON"); -static const u8 sMapName_SSAnne[] = _("S.S. ANNE"); -static const u8 sMapName_UndergroundPath[] = _("UNDERGROUND PATH"); -static const u8 sMapName_UndergroundPath2[] = _("UNDERGROUND PATH"); -static const u8 sMapName_DiglettsCave[] = _("DIGLETT'S CAVE"); -static const u8 sMapName_KantoVictoryRoad[] = _("VICTORY ROAD"); -static const u8 sMapName_RocketHideout[] = _("ROCKET HIDEOUT"); -static const u8 sMapName_SilphCo[] = _("SILPH CO."); -static const u8 sMapName_PokemonMansion[] = _("POKéMON MANSION"); -static const u8 sMapName_KantoSafariZone[] = _("SAFARI ZONE"); -static const u8 sMapName_PokemonLeague[] = _("POKéMON LEAGUE"); -static const u8 sMapName_RockTunnel[] = _("ROCK TUNNEL"); -static const u8 sMapName_SeafoamIslands[] = _("SEAFOAM ISLANDS"); -static const u8 sMapName_PokemonTower[] = _("POKéMON TOWER"); -static const u8 sMapName_CeruleanCave[] = _("CERULEAN CAVE"); -static const u8 sMapName_PowerPlant[] = _("POWER PLANT"); -static const u8 sMapName_OneIsland[] = _("ONE ISLAND"); -static const u8 sMapName_TwoIsland[] = _("TWO ISLAND"); -static const u8 sMapName_ThreeIsland[] = _("THREE ISLAND"); -static const u8 sMapName_FourIsland[] = _("FOUR ISLAND"); -static const u8 sMapName_FiveIsland[] = _("FIVE ISLAND"); -static const u8 sMapName_SevenIsland[] = _("SEVEN ISLAND"); -static const u8 sMapName_SixIsland[] = _("SIX ISLAND"); -static const u8 sMapName_KindleRoad[] = _("KINDLE ROAD"); -static const u8 sMapName_TreasureBeach[] = _("TREASURE BEACH"); -static const u8 sMapName_CapeBrink[] = _("CAPE BRINK"); -static const u8 sMapName_BondBridge[] = _("BOND BRIDGE"); -static const u8 sMapName_ThreeIslePort[] = _("THREE ISLE PORT"); -static const u8 sMapName_SeviiIsle6[] = _("SEVII ISLE 6"); -static const u8 sMapName_SeviiIsle7[] = _("SEVII ISLE 7"); -static const u8 sMapName_SeviiIsle8[] = _("SEVII ISLE 8"); -static const u8 sMapName_SeviiIsle9[] = _("SEVII ISLE 9"); -static const u8 sMapName_ResortGorgeous[] = _("RESORT GORGEOUS"); -static const u8 sMapName_WaterLabyrinth[] = _("WATER LABYRINTH"); -static const u8 sMapName_FiveIsleMeadow[] = _("FIVE ISLE MEADOW"); -static const u8 sMapName_MemorialPillar[] = _("MEMORIAL PILLAR"); -static const u8 sMapName_OutcastIsland[] = _("OUTCAST ISLAND"); -static const u8 sMapName_GreenPath[] = _("GREEN PATH"); -static const u8 sMapName_WaterPath[] = _("WATER PATH"); -static const u8 sMapName_RuinValley[] = _("RUIN VALLEY"); -static const u8 sMapName_TrainerTower[] = _("TRAINER TOWER"); -static const u8 sMapName_CanyonEntrance[] = _("CANYON ENTRANCE"); -static const u8 sMapName_SevaultCanyon[] = _("SEVAULT CANYON"); -static const u8 sMapName_TanobyRuins[] = _("TANOBY RUINS"); -static const u8 sMapName_SeviiIsle22[] = _("SEVII ISLE 22"); -static const u8 sMapName_SeviiIsle23[] = _("SEVII ISLE 23"); -static const u8 sMapName_SeviiIsle24[] = _("SEVII ISLE 24"); -static const u8 sMapName_NavelRock[] = _("NAVEL ROCK"); -static const u8 sMapName_MtEmber[] = _("MT. EMBER"); -static const u8 sMapName_BerryForest[] = _("BERRY FOREST"); -static const u8 sMapName_IcefallCave[] = _("ICEFALL CAVE"); -static const u8 sMapName_RocketWarehouse[] = _("ROCKET WAREHOUSE"); -static const u8 sMapName_TrainerTower2[] = _("TRAINER TOWER"); -static const u8 sMapName_DottedHole[] = _("DOTTED HOLE"); -static const u8 sMapName_LostCave[] = _("LOST CAVE"); -static const u8 sMapName_PatternBush[] = _("PATTERN BUSH"); -static const u8 sMapName_AlteringCave[] = _("ALTERING CAVE"); -static const u8 sMapName_TanobyChambers[] = _("TANOBY CHAMBERS"); -static const u8 sMapName_ThreeIslePath[] = _("THREE ISLE PATH"); -static const u8 sMapName_TanobyKey[] = _("TANOBY KEY"); -static const u8 sMapName_BirthIsland[] = _("BIRTH ISLAND"); -static const u8 sMapName_MoneanChamber[] = _("MONEAN CHAMBER"); -static const u8 sMapName_LiptooChamber[] = _("LIPTOO CHAMBER"); -static const u8 sMapName_WeepthChamber[] = _("WEEPTH CHAMBER"); -static const u8 sMapName_DilfordChamber[] = _("DILFORD CHAMBER"); -static const u8 sMapName_ScufibChamber[] = _("SCUFIB CHAMBER"); -static const u8 sMapName_RixyChamber[] = _("RIXY CHAMBER"); -static const u8 sMapName_ViapoisChamber[] = _("VIAPOIS CHAMBER"); -static const u8 sMapName_EmberSpa[] = _("EMBER SPA"); -static const u8 sMapName_SpecialArea[] = _("SPECIAL AREA"); -static const u8 sMapName_AquaHideout[] = _("AQUA HIDEOUT"); -static const u8 sMapName_MagmaHideout[] = _("MAGMA HIDEOUT"); -static const u8 sMapName_MirageTower[] = _("MIRAGE TOWER"); -static const u8 sMapName_FarawayIsland[] = _("FARAWAY ISLAND"); -static const u8 sMapName_ArtisanCave[] = _("ARTISAN CAVE"); -static const u8 sMapName_MarineCave[] = _("MARINE CAVE"); -static const u8 sMapName_TerraCave[] = _("TERRA CAVE"); -static const u8 sMapName_DesertUnderpass[] = _("DESERT UNDERPASS"); -static const u8 sMapName_TrainerHill[] = _("TRAINER HILL"); - -const struct RegionMapLocation gRegionMapEntries[] = { - [MAPSEC_LITTLEROOT_TOWN] = { 4, 11, 1, 1, sMapName_LittlerootTown}, - [MAPSEC_OLDALE_TOWN] = { 4, 9, 1, 1, sMapName_OldaleTown}, - [MAPSEC_DEWFORD_TOWN] = { 2, 14, 1, 1, sMapName_DewfordTown}, - [MAPSEC_LAVARIDGE_TOWN] = { 5, 3, 1, 1, sMapName_LavaridgeTown}, - [MAPSEC_FALLARBOR_TOWN] = { 3, 0, 1, 1, sMapName_FallarborTown}, - [MAPSEC_VERDANTURF_TOWN] = { 4, 6, 1, 1, sMapName_VerdanturfTown}, - [MAPSEC_PACIFIDLOG_TOWN] = {17, 10, 1, 1, sMapName_PacifidlogTown}, - [MAPSEC_PETALBURG_CITY] = { 1, 9, 1, 1, sMapName_PetalburgCity}, - [MAPSEC_SLATEPORT_CITY] = { 8, 10, 1, 2, sMapName_SlateportCity}, - [MAPSEC_MAUVILLE_CITY] = { 8, 6, 2, 1, sMapName_MauvilleCity}, - [MAPSEC_RUSTBORO_CITY] = { 0, 5, 1, 2, sMapName_RustboroCity}, - [MAPSEC_FORTREE_CITY] = {12, 0, 1, 1, sMapName_FortreeCity}, - [MAPSEC_LILYCOVE_CITY] = {18, 3, 2, 1, sMapName_LilycoveCity}, - [MAPSEC_MOSSDEEP_CITY] = {24, 5, 2, 1, sMapName_MossdeepCity}, - [MAPSEC_SOOTOPOLIS_CITY] = {21, 7, 1, 1, sMapName_SootopolisCity}, - [MAPSEC_EVER_GRANDE_CITY] = {27, 8, 1, 2, sMapName_EverGrandeCity}, - [MAPSEC_ROUTE_101] = { 4, 10, 1, 1, sMapName_Route101}, - [MAPSEC_ROUTE_102] = { 2, 9, 2, 1, sMapName_Route102}, - [MAPSEC_ROUTE_103] = { 4, 8, 4, 1, sMapName_Route103}, - [MAPSEC_ROUTE_104] = { 0, 7, 1, 3, sMapName_Route104}, - [MAPSEC_ROUTE_105] = { 0, 10, 1, 3, sMapName_Route105}, - [MAPSEC_ROUTE_106] = { 0, 13, 2, 1, sMapName_Route106}, - [MAPSEC_ROUTE_107] = { 3, 14, 3, 1, sMapName_Route107}, - [MAPSEC_ROUTE_108] = { 6, 14, 2, 1, sMapName_Route108}, - [MAPSEC_ROUTE_109] = { 8, 12, 1, 3, sMapName_Route109}, - [MAPSEC_ROUTE_110] = { 8, 7, 1, 3, sMapName_Route110}, - [MAPSEC_ROUTE_111] = { 8, 0, 1, 6, sMapName_Route111}, - [MAPSEC_ROUTE_112] = { 6, 3, 2, 1, sMapName_Route112}, - [MAPSEC_ROUTE_113] = { 4, 0, 4, 1, sMapName_Route113}, - [MAPSEC_ROUTE_114] = { 1, 0, 2, 3, sMapName_Route114}, - [MAPSEC_ROUTE_115] = { 0, 2, 1, 3, sMapName_Route115}, - [MAPSEC_ROUTE_116] = { 1, 5, 4, 1, sMapName_Route116}, - [MAPSEC_ROUTE_117] = { 5, 6, 3, 1, sMapName_Route117}, - [MAPSEC_ROUTE_118] = {10, 6, 2, 1, sMapName_Route118}, - [MAPSEC_ROUTE_119] = {11, 0, 1, 6, sMapName_Route119}, - [MAPSEC_ROUTE_120] = {13, 0, 1, 4, sMapName_Route120}, - [MAPSEC_ROUTE_121] = {14, 3, 4, 1, sMapName_Route121}, - [MAPSEC_ROUTE_122] = {16, 4, 1, 2, sMapName_Route122}, - [MAPSEC_ROUTE_123] = {12, 6, 5, 1, sMapName_Route123}, - [MAPSEC_ROUTE_124] = {20, 3, 4, 3, sMapName_Route124}, - [MAPSEC_ROUTE_125] = {24, 3, 2, 2, sMapName_Route125}, - [MAPSEC_ROUTE_126] = {20, 6, 3, 3, sMapName_Route126}, - [MAPSEC_ROUTE_127] = {23, 6, 3, 3, sMapName_Route127}, - [MAPSEC_ROUTE_128] = {23, 9, 4, 1, sMapName_Route128}, - [MAPSEC_ROUTE_129] = {24, 10, 2, 1, sMapName_Route129}, - [MAPSEC_ROUTE_130] = {21, 10, 3, 1, sMapName_Route130}, - [MAPSEC_ROUTE_131] = {18, 10, 3, 1, sMapName_Route131}, - [MAPSEC_ROUTE_132] = {15, 10, 2, 1, sMapName_Route132}, - [MAPSEC_ROUTE_133] = {12, 10, 3, 1, sMapName_Route133}, - [MAPSEC_ROUTE_134] = { 9, 10, 3, 1, sMapName_Route134}, - [MAPSEC_UNDERWATER_124] = {20, 3, 4, 3, sMapName_Underwater}, - [MAPSEC_UNDERWATER_126] = {20, 6, 3, 3, sMapName_Underwater}, - [MAPSEC_UNDERWATER_127] = {23, 6, 3, 3, sMapName_Underwater}, - [MAPSEC_UNDERWATER_128] = {23, 9, 4, 1, sMapName_Underwater}, - [MAPSEC_UNDERWATER_SOOTOPOLIS] = {21, 7, 1, 1, sMapName_Underwater}, - [MAPSEC_GRANITE_CAVE] = { 1, 13, 1, 1, sMapName_GraniteCave}, - [MAPSEC_MT_CHIMNEY] = { 6, 2, 1, 1, sMapName_MtChimney}, - [MAPSEC_SAFARI_ZONE] = {16, 2, 1, 1, sMapName_SafariZone}, - [MAPSEC_BATTLE_FRONTIER] = {22, 12, 1, 1, sMapName_BattleFrontier}, - [MAPSEC_PETALBURG_WOODS] = { 0, 8, 1, 1, sMapName_PetalburgWoods}, - [MAPSEC_RUSTURF_TUNNEL] = { 2, 5, 1, 1, sMapName_RusturfTunnel}, - [MAPSEC_ABANDONED_SHIP] = { 6, 14, 1, 1, sMapName_AbandonedShip}, - [MAPSEC_NEW_MAUVILLE] = { 8, 7, 1, 1, sMapName_NewMauville}, - [MAPSEC_METEOR_FALLS] = { 0, 3, 1, 1, sMapName_MeteorFalls}, - [MAPSEC_METEOR_FALLS2] = { 1, 2, 1, 1, sMapName_MeteorFalls}, - [MAPSEC_MT_PYRE] = {16, 4, 1, 1, sMapName_MtPyre}, - [MAPSEC_AQUA_HIDEOUT_OLD] = {19, 3, 1, 1, sMapName_AquaHideoutOld}, - [MAPSEC_SHOAL_CAVE] = {24, 4, 1, 1, sMapName_ShoalCave}, - [MAPSEC_SEAFLOOR_CAVERN] = {24, 9, 1, 1, sMapName_SeafloorCavern}, - [MAPSEC_UNDERWATER_SEAFLOOR_CAVERN] = {24, 9, 1, 1, sMapName_Underwater}, - [MAPSEC_VICTORY_ROAD] = {27, 9, 1, 1, sMapName_VictoryRoad}, - [MAPSEC_MIRAGE_ISLAND] = {17, 10, 1, 1, sMapName_MirageIsland}, - [MAPSEC_CAVE_OF_ORIGIN] = {21, 7, 1, 1, sMapName_CaveOfOrigin}, - [MAPSEC_SOUTHERN_ISLAND] = {12, 14, 1, 1, sMapName_SouthernIsland}, - [MAPSEC_FIERY_PATH] = { 6, 3, 1, 1, sMapName_FieryPath}, - [MAPSEC_FIERY_PATH2] = { 7, 3, 1, 1, sMapName_FieryPath}, - [MAPSEC_JAGGED_PASS] = { 6, 3, 1, 1, sMapName_JaggedPass}, - [MAPSEC_JAGGED_PASS2] = { 7, 2, 1, 1, sMapName_JaggedPass}, - [MAPSEC_SEALED_CHAMBER] = {11, 10, 1, 1, sMapName_SealedChamber}, - [MAPSEC_UNDERWATER_SEALED_CHAMBER] = {11, 10, 1, 1, sMapName_Underwater}, - [MAPSEC_SCORCHED_SLAB] = {13, 0, 1, 1, sMapName_ScorchedSlab}, - [MAPSEC_ISLAND_CAVE] = { 0, 10, 1, 1, sMapName_IslandCave}, - [MAPSEC_DESERT_RUINS] = { 8, 3, 1, 1, sMapName_DesertRuins}, - [MAPSEC_ANCIENT_TOMB] = {13, 2, 1, 1, sMapName_AncientTomb}, - [MAPSEC_INSIDE_OF_TRUCK] = { 0, 0, 1, 1, sMapName_InsideOfTruck}, - [MAPSEC_SKY_PILLAR] = {19, 10, 1, 1, sMapName_SkyPillar}, - [MAPSEC_SECRET_BASE] = { 0, 0, 1, 1, sMapName_SecretBase}, - [MAPSEC_DYNAMIC] = { 0, 0, 1, 1, sMapName_None}, - [MAPSEC_PALLET_TOWN] = { 0, 0, 1, 1, sMapName_PalletTown}, - [MAPSEC_VIRIDIAN_CITY] = { 0, 0, 1, 1, sMapName_ViridianCity}, - [MAPSEC_PEWTER_CITY] = { 0, 0, 1, 1, sMapName_PewterCity}, - [MAPSEC_CERULEAN_CITY] = { 0, 0, 1, 1, sMapName_CeruleanCity}, - [MAPSEC_LAVENDER_TOWN] = { 0, 0, 1, 1, sMapName_LavenderTown}, - [MAPSEC_VERMILION_CITY] = { 0, 0, 1, 1, sMapName_VermilionCity}, - [MAPSEC_CELADON_CITY] = { 0, 0, 1, 1, sMapName_CeladonCity}, - [MAPSEC_FUCHSIA_CITY] = { 0, 0, 1, 1, sMapName_FuchsiaCity}, - [MAPSEC_CINNABAR_ISLAND] = { 0, 0, 1, 1, sMapName_CinnabarIsland}, - [MAPSEC_INDIGO_PLATEAU] = { 0, 0, 1, 1, sMapName_IndigoPlateau}, - [MAPSEC_SAFFRON_CITY] = { 0, 0, 1, 1, sMapName_SaffronCity}, - [MAPSEC_ROUTE_4_POKECENTER] = { 0, 0, 1, 1, sMapName_Route4}, - [MAPSEC_ROUTE_10_POKECENTER] = { 0, 0, 1, 1, sMapName_Route10}, - [MAPSEC_ROUTE_1] = { 0, 0, 1, 1, sMapName_Route1}, - [MAPSEC_ROUTE_2] = { 0, 0, 1, 1, sMapName_Route2}, - [MAPSEC_ROUTE_3] = { 0, 0, 1, 1, sMapName_Route3}, - [MAPSEC_ROUTE_4] = { 0, 0, 1, 1, sMapName_Route4_2}, - [MAPSEC_ROUTE_5] = { 0, 0, 1, 1, sMapName_Route5}, - [MAPSEC_ROUTE_6] = { 0, 0, 1, 1, sMapName_Route6}, - [MAPSEC_ROUTE_7] = { 0, 0, 1, 1, sMapName_Route7}, - [MAPSEC_ROUTE_8] = { 0, 0, 1, 1, sMapName_Route8}, - [MAPSEC_ROUTE_9] = { 0, 0, 1, 1, sMapName_Route9}, - [MAPSEC_ROUTE_10] = { 0, 0, 1, 1, sMapName_Route10_2}, - [MAPSEC_ROUTE_11] = { 0, 0, 1, 1, sMapName_Route11}, - [MAPSEC_ROUTE_12] = { 0, 0, 1, 1, sMapName_Route12}, - [MAPSEC_ROUTE_13] = { 0, 0, 1, 1, sMapName_Route13}, - [MAPSEC_ROUTE_14] = { 0, 0, 1, 1, sMapName_Route14}, - [MAPSEC_ROUTE_15] = { 0, 0, 1, 1, sMapName_Route15}, - [MAPSEC_ROUTE_16] = { 0, 0, 1, 1, sMapName_Route16}, - [MAPSEC_ROUTE_17] = { 0, 0, 1, 1, sMapName_Route17}, - [MAPSEC_ROUTE_18] = { 0, 0, 1, 1, sMapName_Route18}, - [MAPSEC_ROUTE_19] = { 0, 0, 1, 1, sMapName_Route19}, - [MAPSEC_ROUTE_20] = { 0, 0, 1, 1, sMapName_Route20}, - [MAPSEC_ROUTE_21] = { 0, 0, 1, 1, sMapName_Route21}, - [MAPSEC_ROUTE_22] = { 0, 0, 1, 1, sMapName_Route22}, - [MAPSEC_ROUTE_23] = { 0, 0, 1, 1, sMapName_Route23}, - [MAPSEC_ROUTE_24] = { 0, 0, 1, 1, sMapName_Route24}, - [MAPSEC_ROUTE_25] = { 0, 0, 1, 1, sMapName_Route25}, - [MAPSEC_VIRIDIAN_FOREST] = { 0, 0, 1, 1, sMapName_ViridianForest}, - [MAPSEC_MT_MOON] = { 0, 0, 1, 1, sMapName_MtMoon}, - [MAPSEC_S_S_ANNE] = { 0, 0, 1, 1, sMapName_SSAnne}, - [MAPSEC_UNDERGROUND_PATH] = { 0, 0, 1, 1, sMapName_UndergroundPath}, - [MAPSEC_UNDERGROUND_PATH_2] = { 0, 0, 1, 1, sMapName_UndergroundPath2}, - [MAPSEC_DIGLETTS_CAVE] = { 0, 0, 1, 1, sMapName_DiglettsCave}, - [MAPSEC_KANTO_VICTORY_ROAD] = { 0, 0, 1, 1, sMapName_KantoVictoryRoad}, - [MAPSEC_ROCKET_HIDEOUT] = { 0, 0, 1, 1, sMapName_RocketHideout}, - [MAPSEC_SILPH_CO] = { 0, 0, 1, 1, sMapName_SilphCo}, - [MAPSEC_POKEMON_MANSION] = { 0, 0, 1, 1, sMapName_PokemonMansion}, - [MAPSEC_KANTO_SAFARI_ZONE] = { 0, 0, 1, 1, sMapName_KantoSafariZone}, - [MAPSEC_POKEMON_LEAGUE] = { 0, 0, 1, 1, sMapName_PokemonLeague}, - [MAPSEC_ROCK_TUNNEL] = { 0, 0, 1, 1, sMapName_RockTunnel}, - [MAPSEC_SEAFOAM_ISLANDS] = { 0, 0, 1, 1, sMapName_SeafoamIslands}, - [MAPSEC_POKEMON_TOWER] = { 0, 0, 1, 1, sMapName_PokemonTower}, - [MAPSEC_CERULEAN_CAVE] = { 0, 0, 1, 1, sMapName_CeruleanCave}, - [MAPSEC_POWER_PLANT] = { 0, 0, 1, 1, sMapName_PowerPlant}, - [MAPSEC_ONE_ISLAND] = { 0, 0, 1, 1, sMapName_OneIsland}, - [MAPSEC_TWO_ISLAND] = { 0, 0, 1, 1, sMapName_TwoIsland}, - [MAPSEC_THREE_ISLAND] = { 0, 0, 1, 1, sMapName_ThreeIsland}, - [MAPSEC_FOUR_ISLAND] = { 0, 0, 1, 1, sMapName_FourIsland}, - [MAPSEC_FIVE_ISLAND] = { 0, 0, 1, 1, sMapName_FiveIsland}, - [MAPSEC_SEVEN_ISLAND] = { 0, 0, 1, 1, sMapName_SevenIsland}, - [MAPSEC_SIX_ISLAND] = { 0, 0, 1, 1, sMapName_SixIsland}, - [MAPSEC_KINDLE_ROAD] = { 0, 0, 1, 1, sMapName_KindleRoad}, - [MAPSEC_TREASURE_BEACH] = { 0, 0, 1, 1, sMapName_TreasureBeach}, - [MAPSEC_CAPE_BRINK] = { 0, 0, 1, 1, sMapName_CapeBrink}, - [MAPSEC_BOND_BRIDGE] = { 0, 0, 1, 1, sMapName_BondBridge}, - [MAPSEC_THREE_ISLE_PORT] = { 0, 0, 1, 1, sMapName_ThreeIslePort}, - [MAPSEC_SEVII_ISLE_6] = { 0, 0, 1, 1, sMapName_SeviiIsle6}, - [MAPSEC_SEVII_ISLE_7] = { 0, 0, 1, 1, sMapName_SeviiIsle7}, - [MAPSEC_SEVII_ISLE_8] = { 0, 0, 1, 1, sMapName_SeviiIsle8}, - [MAPSEC_SEVII_ISLE_9] = { 0, 0, 1, 1, sMapName_SeviiIsle9}, - [MAPSEC_RESORT_GORGEOUS] = { 0, 0, 1, 1, sMapName_ResortGorgeous}, - [MAPSEC_WATER_LABYRINTH] = { 0, 0, 1, 1, sMapName_WaterLabyrinth}, - [MAPSEC_FIVE_ISLE_MEADOW] = { 0, 0, 1, 1, sMapName_FiveIsleMeadow}, - [MAPSEC_MEMORIAL_PILLAR] = { 0, 0, 1, 1, sMapName_MemorialPillar}, - [MAPSEC_OUTCAST_ISLAND] = { 0, 0, 1, 1, sMapName_OutcastIsland}, - [MAPSEC_GREEN_PATH] = { 0, 0, 1, 1, sMapName_GreenPath}, - [MAPSEC_WATER_PATH] = { 0, 0, 1, 1, sMapName_WaterPath}, - [MAPSEC_RUIN_VALLEY] = { 0, 0, 1, 1, sMapName_RuinValley}, - [MAPSEC_TRAINER_TOWER] = { 0, 0, 1, 1, sMapName_TrainerTower}, - [MAPSEC_CANYON_ENTRANCE] = { 0, 0, 1, 1, sMapName_CanyonEntrance}, - [MAPSEC_SEVAULT_CANYON] = { 0, 0, 1, 1, sMapName_SevaultCanyon}, - [MAPSEC_TANOBY_RUINS] = { 0, 0, 1, 1, sMapName_TanobyRuins}, - [MAPSEC_SEVII_ISLE_22] = { 0, 0, 1, 1, sMapName_SeviiIsle22}, - [MAPSEC_SEVII_ISLE_23] = { 0, 0, 1, 1, sMapName_SeviiIsle23}, - [MAPSEC_SEVII_ISLE_24] = { 0, 0, 1, 1, sMapName_SeviiIsle24}, - [MAPSEC_NAVEL_ROCK_FRLG] = { 0, 0, 1, 1, sMapName_NavelRock}, - [MAPSEC_MT_EMBER] = { 0, 0, 1, 1, sMapName_MtEmber}, - [MAPSEC_BERRY_FOREST] = { 0, 0, 1, 1, sMapName_BerryForest}, - [MAPSEC_ICEFALL_CAVE] = { 0, 0, 1, 1, sMapName_IcefallCave}, - [MAPSEC_ROCKET_WAREHOUSE] = { 0, 0, 1, 1, sMapName_RocketWarehouse}, - [MAPSEC_TRAINER_TOWER_2] = { 0, 0, 1, 1, sMapName_TrainerTower2}, - [MAPSEC_DOTTED_HOLE] = { 0, 0, 1, 1, sMapName_DottedHole}, - [MAPSEC_LOST_CAVE] = { 0, 0, 1, 1, sMapName_LostCave}, - [MAPSEC_PATTERN_BUSH] = { 0, 0, 1, 1, sMapName_PatternBush}, - [MAPSEC_ALTERING_CAVE_FRLG] = { 0, 0, 1, 1, sMapName_AlteringCave}, - [MAPSEC_TANOBY_CHAMBERS] = { 0, 0, 1, 1, sMapName_TanobyChambers}, - [MAPSEC_THREE_ISLE_PATH] = { 0, 0, 1, 1, sMapName_ThreeIslePath}, - [MAPSEC_TANOBY_KEY] = { 0, 0, 1, 1, sMapName_TanobyKey}, - [MAPSEC_BIRTH_ISLAND_FRLG] = { 0, 0, 1, 1, sMapName_BirthIsland}, - [MAPSEC_MONEAN_CHAMBER] = { 0, 0, 1, 1, sMapName_MoneanChamber}, - [MAPSEC_LIPTOO_CHAMBER] = { 0, 0, 1, 1, sMapName_LiptooChamber}, - [MAPSEC_WEEPTH_CHAMBER] = { 0, 0, 1, 1, sMapName_WeepthChamber}, - [MAPSEC_DILFORD_CHAMBER] = { 0, 0, 1, 1, sMapName_DilfordChamber}, - [MAPSEC_SCUFIB_CHAMBER] = { 0, 0, 1, 1, sMapName_ScufibChamber}, - [MAPSEC_RIXY_CHAMBER] = { 0, 0, 1, 1, sMapName_RixyChamber}, - [MAPSEC_VIAPOIS_CHAMBER] = { 0, 0, 1, 1, sMapName_ViapoisChamber}, - [MAPSEC_EMBER_SPA] = { 0, 0, 1, 1, sMapName_EmberSpa}, - [MAPSEC_SPECIAL_AREA] = { 0, 0, 1, 1, sMapName_SpecialArea}, - [MAPSEC_AQUA_HIDEOUT] = {19, 3, 1, 1, sMapName_AquaHideout}, - [MAPSEC_MAGMA_HIDEOUT] = { 6, 3, 1, 1, sMapName_MagmaHideout}, - [MAPSEC_MIRAGE_TOWER] = { 8, 2, 1, 1, sMapName_MirageTower}, - [MAPSEC_BIRTH_ISLAND] = { 0, 0, 1, 1, sMapName_BirthIsland}, - [MAPSEC_FARAWAY_ISLAND] = { 0, 0, 1, 1, sMapName_FarawayIsland}, - [MAPSEC_ARTISAN_CAVE] = {22, 12, 1, 1, sMapName_ArtisanCave}, - [MAPSEC_MARINE_CAVE] = { 0, 0, 1, 1, sMapName_MarineCave}, - [MAPSEC_UNDERWATER_MARINE_CAVE] = { 0, 0, 1, 1, sMapName_Underwater}, - [MAPSEC_TERRA_CAVE] = { 0, 0, 1, 1, sMapName_TerraCave}, - [MAPSEC_UNDERWATER_105] = { 0, 10, 1, 3, sMapName_Underwater}, - [MAPSEC_UNDERWATER_125] = {24, 3, 2, 2, sMapName_Underwater}, - [MAPSEC_UNDERWATER_129] = {24, 10, 2, 1, sMapName_Underwater}, - [MAPSEC_DESERT_UNDERPASS] = { 2, 0, 1, 1, sMapName_DesertUnderpass}, - [MAPSEC_ALTERING_CAVE] = { 6, 8, 1, 1, sMapName_AlteringCave}, - [MAPSEC_NAVEL_ROCK] = { 0, 0, 1, 1, sMapName_NavelRock}, - [MAPSEC_TRAINER_HILL] = { 8, 4, 1, 1, sMapName_TrainerHill} -}; - -#endif //GUARD_DATA_REGION_MAP_REGION_MAP_ENTRIES_H diff --git a/src/data/region_map/region_map_layout.h b/src/data/region_map/region_map_layout.h new file mode 100644 index 000000000..95a4e94f3 --- /dev/null +++ b/src/data/region_map/region_map_layout.h @@ -0,0 +1,17 @@ +static const u8 sRegionMap_MapSectionLayout[MAP_HEIGHT][MAP_WIDTH] = { + {MAPSEC_NONE, MAPSEC_ROUTE_114, MAPSEC_ROUTE_114, MAPSEC_FALLARBOR_TOWN, MAPSEC_ROUTE_113, MAPSEC_ROUTE_113, MAPSEC_ROUTE_113, MAPSEC_ROUTE_113, MAPSEC_ROUTE_111, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_ROUTE_119, MAPSEC_FORTREE_CITY, MAPSEC_ROUTE_120, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE}, + {MAPSEC_NONE, MAPSEC_ROUTE_114, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_MT_CHIMNEY, MAPSEC_MT_CHIMNEY, MAPSEC_ROUTE_111, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_ROUTE_119, MAPSEC_NONE, MAPSEC_ROUTE_120, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE}, + {MAPSEC_ROUTE_115, MAPSEC_ROUTE_114, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_MT_CHIMNEY, MAPSEC_MT_CHIMNEY, MAPSEC_ROUTE_111, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_ROUTE_119, MAPSEC_NONE, MAPSEC_ROUTE_120, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_SAFARI_ZONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE}, + {MAPSEC_ROUTE_115, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_LAVARIDGE_TOWN, MAPSEC_ROUTE_112, MAPSEC_ROUTE_112, MAPSEC_ROUTE_111, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_ROUTE_119, MAPSEC_NONE, MAPSEC_ROUTE_120, MAPSEC_ROUTE_121, MAPSEC_ROUTE_121, MAPSEC_ROUTE_121, MAPSEC_ROUTE_121, MAPSEC_LILYCOVE_CITY, MAPSEC_LILYCOVE_CITY, MAPSEC_ROUTE_124, MAPSEC_ROUTE_124, MAPSEC_ROUTE_124, MAPSEC_ROUTE_124, MAPSEC_ROUTE_125, MAPSEC_ROUTE_125, MAPSEC_NONE, MAPSEC_NONE}, + {MAPSEC_ROUTE_115, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_ROUTE_111, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_ROUTE_119, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_ROUTE_122, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_ROUTE_124, MAPSEC_ROUTE_124, MAPSEC_ROUTE_124, MAPSEC_ROUTE_124, MAPSEC_ROUTE_125, MAPSEC_ROUTE_125, MAPSEC_NONE, MAPSEC_NONE}, + {MAPSEC_RUSTBORO_CITY, MAPSEC_ROUTE_116, MAPSEC_ROUTE_116, MAPSEC_ROUTE_116, MAPSEC_ROUTE_116, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_ROUTE_111, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_ROUTE_119, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_ROUTE_122, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_ROUTE_124, MAPSEC_ROUTE_124, MAPSEC_ROUTE_124, MAPSEC_ROUTE_124, MAPSEC_MOSSDEEP_CITY, MAPSEC_MOSSDEEP_CITY, MAPSEC_NONE, MAPSEC_NONE}, + {MAPSEC_RUSTBORO_CITY, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_VERDANTURF_TOWN, MAPSEC_ROUTE_117, MAPSEC_ROUTE_117, MAPSEC_ROUTE_117, MAPSEC_MAUVILLE_CITY, MAPSEC_MAUVILLE_CITY, MAPSEC_ROUTE_118, MAPSEC_ROUTE_118, MAPSEC_ROUTE_123, MAPSEC_ROUTE_123, MAPSEC_ROUTE_123, MAPSEC_ROUTE_123, MAPSEC_ROUTE_123, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_ROUTE_126, MAPSEC_ROUTE_126, MAPSEC_ROUTE_126, MAPSEC_ROUTE_127, MAPSEC_ROUTE_127, MAPSEC_ROUTE_127, MAPSEC_NONE, MAPSEC_NONE}, + {MAPSEC_ROUTE_104, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_ROUTE_110, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_ROUTE_126, MAPSEC_SOOTOPOLIS_CITY, MAPSEC_ROUTE_126, MAPSEC_ROUTE_127, MAPSEC_ROUTE_127, MAPSEC_ROUTE_127, MAPSEC_NONE, MAPSEC_NONE}, + {MAPSEC_ROUTE_104, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_ROUTE_103, MAPSEC_ROUTE_103, MAPSEC_ROUTE_103, MAPSEC_ROUTE_103, MAPSEC_ROUTE_110, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_ROUTE_126, MAPSEC_ROUTE_126, MAPSEC_ROUTE_126, MAPSEC_ROUTE_127, MAPSEC_ROUTE_127, MAPSEC_ROUTE_127, MAPSEC_NONE, MAPSEC_EVER_GRANDE_CITY}, + {MAPSEC_ROUTE_104, MAPSEC_PETALBURG_CITY, MAPSEC_ROUTE_102, MAPSEC_ROUTE_102, MAPSEC_OLDALE_TOWN, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_ROUTE_110, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_ROUTE_128, MAPSEC_ROUTE_128, MAPSEC_ROUTE_128, MAPSEC_ROUTE_128, MAPSEC_EVER_GRANDE_CITY}, + {MAPSEC_ROUTE_105, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_ROUTE_101, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_SLATEPORT_CITY, MAPSEC_ROUTE_134, MAPSEC_ROUTE_134, MAPSEC_ROUTE_134, MAPSEC_ROUTE_133, MAPSEC_ROUTE_133, MAPSEC_ROUTE_133, MAPSEC_ROUTE_132, MAPSEC_ROUTE_132, MAPSEC_PACIFIDLOG_TOWN, MAPSEC_ROUTE_131, MAPSEC_ROUTE_131, MAPSEC_ROUTE_131, MAPSEC_ROUTE_130, MAPSEC_ROUTE_130, MAPSEC_ROUTE_130, MAPSEC_ROUTE_129, MAPSEC_ROUTE_129, MAPSEC_NONE, MAPSEC_NONE}, + {MAPSEC_ROUTE_105, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_LITTLEROOT_TOWN, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_SLATEPORT_CITY, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE}, + {MAPSEC_ROUTE_105, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_ROUTE_109, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_BATTLE_FRONTIER, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE}, + {MAPSEC_ROUTE_106, MAPSEC_ROUTE_106, MAPSEC_ROUTE_106, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_ROUTE_109, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE}, + {MAPSEC_NONE, MAPSEC_NONE, MAPSEC_DEWFORD_TOWN, MAPSEC_ROUTE_107, MAPSEC_ROUTE_107, MAPSEC_ROUTE_107, MAPSEC_ROUTE_108, MAPSEC_ROUTE_108, MAPSEC_ROUTE_109, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_SOUTHERN_ISLAND, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE, MAPSEC_NONE}, +}; diff --git a/src/data/region_map/region_map_sections.json b/src/data/region_map/region_map_sections.json new file mode 100644 index 000000000..8fa007911 --- /dev/null +++ b/src/data/region_map/region_map_sections.json @@ -0,0 +1,1715 @@ +{ + "map_sections": [ + { + "map_section": "MAPSEC_LITTLEROOT_TOWN", + "name": "LITTLEROOT TOWN", + "x": 4, + "y": 11, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_OLDALE_TOWN", + "name": "OLDALE TOWN", + "x": 4, + "y": 9, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_DEWFORD_TOWN", + "name": "DEWFORD TOWN", + "x": 2, + "y": 14, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_LAVARIDGE_TOWN", + "name": "LAVARIDGE TOWN", + "x": 5, + "y": 3, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_FALLARBOR_TOWN", + "name": "FALLARBOR TOWN", + "x": 3, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_VERDANTURF_TOWN", + "name": "VERDANTURF TOWN", + "x": 4, + "y": 6, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_PACIFIDLOG_TOWN", + "name": "PACIFIDLOG TOWN", + "x": 17, + "y": 10, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_PETALBURG_CITY", + "name": "PETALBURG CITY", + "x": 1, + "y": 9, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_SLATEPORT_CITY", + "name": "SLATEPORT CITY", + "x": 8, + "y": 10, + "width": 1, + "height": 2 + }, + { + "map_section": "MAPSEC_MAUVILLE_CITY", + "name": "MAUVILLE CITY", + "x": 8, + "y": 6, + "width": 2, + "height": 1 + }, + { + "map_section": "MAPSEC_RUSTBORO_CITY", + "name": "RUSTBORO CITY", + "x": 0, + "y": 5, + "width": 1, + "height": 2 + }, + { + "map_section": "MAPSEC_FORTREE_CITY", + "name": "FORTREE CITY", + "x": 12, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_LILYCOVE_CITY", + "name": "LILYCOVE CITY", + "x": 18, + "y": 3, + "width": 2, + "height": 1 + }, + { + "map_section": "MAPSEC_MOSSDEEP_CITY", + "name": "MOSSDEEP CITY", + "x": 24, + "y": 5, + "width": 2, + "height": 1 + }, + { + "map_section": "MAPSEC_SOOTOPOLIS_CITY", + "name": "SOOTOPOLIS CITY", + "x": 21, + "y": 7, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_EVER_GRANDE_CITY", + "name": "EVER GRANDE CITY", + "x": 27, + "y": 8, + "width": 1, + "height": 2 + }, + { + "map_section": "MAPSEC_ROUTE_101", + "name": "ROUTE 101", + "x": 4, + "y": 10, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_102", + "name": "ROUTE 102", + "x": 2, + "y": 9, + "width": 2, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_103", + "name": "ROUTE 103", + "x": 4, + "y": 8, + "width": 4, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_104", + "name": "ROUTE 104", + "x": 0, + "y": 7, + "width": 1, + "height": 3 + }, + { + "map_section": "MAPSEC_ROUTE_105", + "name": "ROUTE 105", + "x": 0, + "y": 10, + "width": 1, + "height": 3 + }, + { + "map_section": "MAPSEC_ROUTE_106", + "name": "ROUTE 106", + "x": 0, + "y": 13, + "width": 2, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_107", + "name": "ROUTE 107", + "x": 3, + "y": 14, + "width": 3, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_108", + "name": "ROUTE 108", + "x": 6, + "y": 14, + "width": 2, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_109", + "name": "ROUTE 109", + "x": 8, + "y": 12, + "width": 1, + "height": 3 + }, + { + "map_section": "MAPSEC_ROUTE_110", + "name": "ROUTE 110", + "x": 8, + "y": 7, + "width": 1, + "height": 3 + }, + { + "map_section": "MAPSEC_ROUTE_111", + "name": "ROUTE 111", + "x": 8, + "y": 0, + "width": 1, + "height": 6 + }, + { + "map_section": "MAPSEC_ROUTE_112", + "name": "ROUTE 112", + "x": 6, + "y": 3, + "width": 2, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_113", + "name": "ROUTE 113", + "x": 4, + "y": 0, + "width": 4, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_114", + "name": "ROUTE 114", + "x": 1, + "y": 0, + "width": 2, + "height": 3 + }, + { + "map_section": "MAPSEC_ROUTE_115", + "name": "ROUTE 115", + "x": 0, + "y": 2, + "width": 1, + "height": 3 + }, + { + "map_section": "MAPSEC_ROUTE_116", + "name": "ROUTE 116", + "x": 1, + "y": 5, + "width": 4, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_117", + "name": "ROUTE 117", + "x": 5, + "y": 6, + "width": 3, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_118", + "name": "ROUTE 118", + "x": 10, + "y": 6, + "width": 2, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_119", + "name": "ROUTE 119", + "x": 11, + "y": 0, + "width": 1, + "height": 6 + }, + { + "map_section": "MAPSEC_ROUTE_120", + "name": "ROUTE 120", + "x": 13, + "y": 0, + "width": 1, + "height": 4 + }, + { + "map_section": "MAPSEC_ROUTE_121", + "name": "ROUTE 121", + "x": 14, + "y": 3, + "width": 4, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_122", + "name": "ROUTE 122", + "x": 16, + "y": 4, + "width": 1, + "height": 2 + }, + { + "map_section": "MAPSEC_ROUTE_123", + "name": "ROUTE 123", + "x": 12, + "y": 6, + "width": 5, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_124", + "name": "ROUTE 124", + "x": 20, + "y": 3, + "width": 4, + "height": 3 + }, + { + "map_section": "MAPSEC_ROUTE_125", + "name": "ROUTE 125", + "x": 24, + "y": 3, + "width": 2, + "height": 2 + }, + { + "map_section": "MAPSEC_ROUTE_126", + "name": "ROUTE 126", + "x": 20, + "y": 6, + "width": 3, + "height": 3 + }, + { + "map_section": "MAPSEC_ROUTE_127", + "name": "ROUTE 127", + "x": 23, + "y": 6, + "width": 3, + "height": 3 + }, + { + "map_section": "MAPSEC_ROUTE_128", + "name": "ROUTE 128", + "x": 23, + "y": 9, + "width": 4, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_129", + "name": "ROUTE 129", + "x": 24, + "y": 10, + "width": 2, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_130", + "name": "ROUTE 130", + "x": 21, + "y": 10, + "width": 3, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_131", + "name": "ROUTE 131", + "x": 18, + "y": 10, + "width": 3, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_132", + "name": "ROUTE 132", + "x": 15, + "y": 10, + "width": 2, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_133", + "name": "ROUTE 133", + "x": 12, + "y": 10, + "width": 3, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_134", + "name": "ROUTE 134", + "x": 9, + "y": 10, + "width": 3, + "height": 1 + }, + { + "map_section": "MAPSEC_UNDERWATER_124", + "name": "UNDERWATER", + "x": 20, + "y": 3, + "width": 4, + "height": 3 + }, + { + "map_section": "MAPSEC_UNDERWATER_126", + "name": "UNDERWATER", + "x": 20, + "y": 6, + "width": 3, + "height": 3 + }, + { + "map_section": "MAPSEC_UNDERWATER_127", + "name": "UNDERWATER", + "x": 23, + "y": 6, + "width": 3, + "height": 3 + }, + { + "map_section": "MAPSEC_UNDERWATER_128", + "name": "UNDERWATER", + "x": 23, + "y": 9, + "width": 4, + "height": 1 + }, + { + "map_section": "MAPSEC_UNDERWATER_SOOTOPOLIS", + "name": "UNDERWATER", + "x": 21, + "y": 7, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_GRANITE_CAVE", + "name": "GRANITE CAVE", + "x": 1, + "y": 13, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_MT_CHIMNEY", + "name": "MT. CHIMNEY", + "x": 6, + "y": 2, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_SAFARI_ZONE", + "name": "SAFARI ZONE", + "x": 16, + "y": 2, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_BATTLE_FRONTIER", + "name": "BATTLE FRONTIER", + "x": 22, + "y": 12, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_PETALBURG_WOODS", + "name": "PETALBURG WOODS", + "x": 0, + "y": 8, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_RUSTURF_TUNNEL", + "name": "RUSTURF TUNNEL", + "x": 2, + "y": 5, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ABANDONED_SHIP", + "name": "ABANDONED SHIP", + "x": 6, + "y": 14, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_NEW_MAUVILLE", + "name": "NEW MAUVILLE", + "x": 8, + "y": 7, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_METEOR_FALLS", + "name": "METEOR FALLS", + "x": 0, + "y": 3, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_METEOR_FALLS2", + "name": "METEOR FALLS", + "x": 1, + "y": 2, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_MT_PYRE", + "name": "MT. PYRE", + "x": 16, + "y": 4, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_AQUA_HIDEOUT_OLD", + "name": "{AQUA} HIDEOUT", + "name_clone": true, + "x": 19, + "y": 3, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_SHOAL_CAVE", + "name": "SHOAL CAVE", + "x": 24, + "y": 4, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_SEAFLOOR_CAVERN", + "name": "SEAFLOOR CAVERN", + "x": 24, + "y": 9, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_UNDERWATER_SEAFLOOR_CAVERN", + "name": "UNDERWATER", + "x": 24, + "y": 9, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_VICTORY_ROAD", + "name": "VICTORY ROAD", + "x": 27, + "y": 9, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_MIRAGE_ISLAND", + "name": "MIRAGE ISLAND", + "x": 17, + "y": 10, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_CAVE_OF_ORIGIN", + "name": "CAVE OF ORIGIN", + "x": 21, + "y": 7, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_SOUTHERN_ISLAND", + "name": "SOUTHERN ISLAND", + "x": 12, + "y": 14, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_FIERY_PATH", + "name": "FIERY PATH", + "x": 6, + "y": 3, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_FIERY_PATH2", + "name": "FIERY PATH", + "x": 7, + "y": 3, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_JAGGED_PASS", + "name": "JAGGED PASS", + "x": 6, + "y": 3, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_JAGGED_PASS2", + "name": "JAGGED PASS", + "x": 7, + "y": 2, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_SEALED_CHAMBER", + "name": "SEALED CHAMBER", + "x": 11, + "y": 10, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_UNDERWATER_SEALED_CHAMBER", + "name": "UNDERWATER", + "x": 11, + "y": 10, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_SCORCHED_SLAB", + "name": "SCORCHED SLAB", + "x": 13, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ISLAND_CAVE", + "name": "ISLAND CAVE", + "x": 0, + "y": 10, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_DESERT_RUINS", + "name": "DESERT RUINS", + "x": 8, + "y": 3, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ANCIENT_TOMB", + "name": "ANCIENT TOMB", + "x": 13, + "y": 2, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_INSIDE_OF_TRUCK", + "name": "INSIDE OF TRUCK", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_SKY_PILLAR", + "name": "SKY PILLAR", + "x": 19, + "y": 10, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_SECRET_BASE", + "name": "SECRET BASE", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_DYNAMIC", + "name": "", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_PALLET_TOWN", + "name": "PALLET TOWN", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_VIRIDIAN_CITY", + "name": "VIRIDIAN CITY", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_PEWTER_CITY", + "name": "PEWTER CITY", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_CERULEAN_CITY", + "name": "CERULEAN CITY", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_LAVENDER_TOWN", + "name": "LAVENDER TOWN", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_VERMILION_CITY", + "name": "VERMILION CITY", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_CELADON_CITY", + "name": "CELADON CITY", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_FUCHSIA_CITY", + "name": "FUCHSIA CITY", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_CINNABAR_ISLAND", + "name": "CINNABAR ISLAND", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_INDIGO_PLATEAU", + "name": "INDIGO PLATEAU", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_SAFFRON_CITY", + "name": "SAFFRON CITY", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_4_POKECENTER", + "name": "ROUTE 4", + "name_clone": true, + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_10_POKECENTER", + "name": "ROUTE 10", + "name_clone": true, + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_1", + "name": "ROUTE 1", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_2", + "name": "ROUTE 2", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_3", + "name": "ROUTE 3", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_4", + "name": "ROUTE 4", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_5", + "name": "ROUTE 5", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_6", + "name": "ROUTE 6", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_7", + "name": "ROUTE 7", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_8", + "name": "ROUTE 8", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_9", + "name": "ROUTE 9", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_10", + "name": "ROUTE 10", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_11", + "name": "ROUTE 11", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_12", + "name": "ROUTE 12", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_13", + "name": "ROUTE 13", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_14", + "name": "ROUTE 14", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_15", + "name": "ROUTE 15", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_16", + "name": "ROUTE 16", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_17", + "name": "ROUTE 17", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_18", + "name": "ROUTE 18", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_19", + "name": "ROUTE 19", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_20", + "name": "ROUTE 20", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_21", + "name": "ROUTE 21", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_22", + "name": "ROUTE 22", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_23", + "name": "ROUTE 23", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_24", + "name": "ROUTE 24", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ROUTE_25", + "name": "ROUTE 25", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_VIRIDIAN_FOREST", + "name": "VIRIDIAN FOREST", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_MT_MOON", + "name": "MT. MOON", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_S_S_ANNE", + "name": "S.S. ANNE", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_UNDERGROUND_PATH", + "name": "UNDERGROUND PATH", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_UNDERGROUND_PATH_2", + "name": "UNDERGROUND PATH", + "name_clone": true, + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_DIGLETTS_CAVE", + "name": "DIGLETT'S CAVE", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_KANTO_VICTORY_ROAD", + "name": "VICTORY ROAD", + "name_clone": true, + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ROCKET_HIDEOUT", + "name": "ROCKET HIDEOUT", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_SILPH_CO", + "name": "SILPH CO.", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_POKEMON_MANSION", + "name": "POKéMON MANSION", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_KANTO_SAFARI_ZONE", + "name": "SAFARI ZONE", + "name_clone": true, + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_POKEMON_LEAGUE", + "name": "POKéMON LEAGUE", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ROCK_TUNNEL", + "name": "ROCK TUNNEL", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_SEAFOAM_ISLANDS", + "name": "SEAFOAM ISLANDS", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_POKEMON_TOWER", + "name": "POKéMON TOWER", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_CERULEAN_CAVE", + "name": "CERULEAN CAVE", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_POWER_PLANT", + "name": "POWER PLANT", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ONE_ISLAND", + "name": "ONE ISLAND", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_TWO_ISLAND", + "name": "TWO ISLAND", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_THREE_ISLAND", + "name": "THREE ISLAND", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_FOUR_ISLAND", + "name": "FOUR ISLAND", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_FIVE_ISLAND", + "name": "FIVE ISLAND", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_SEVEN_ISLAND", + "name": "SEVEN ISLAND", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_SIX_ISLAND", + "name": "SIX ISLAND", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_KINDLE_ROAD", + "name": "KINDLE ROAD", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_TREASURE_BEACH", + "name": "TREASURE BEACH", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_CAPE_BRINK", + "name": "CAPE BRINK", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_BOND_BRIDGE", + "name": "BOND BRIDGE", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_THREE_ISLE_PORT", + "name": "THREE ISLE PORT", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_SEVII_ISLE_6", + "name": "SEVII ISLE 6", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_SEVII_ISLE_7", + "name": "SEVII ISLE 7", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_SEVII_ISLE_8", + "name": "SEVII ISLE 8", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_SEVII_ISLE_9", + "name": "SEVII ISLE 9", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_RESORT_GORGEOUS", + "name": "RESORT GORGEOUS", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_WATER_LABYRINTH", + "name": "WATER LABYRINTH", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_FIVE_ISLE_MEADOW", + "name": "FIVE ISLE MEADOW", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_MEMORIAL_PILLAR", + "name": "MEMORIAL PILLAR", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_OUTCAST_ISLAND", + "name": "OUTCAST ISLAND", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_GREEN_PATH", + "name": "GREEN PATH", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_WATER_PATH", + "name": "WATER PATH", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_RUIN_VALLEY", + "name": "RUIN VALLEY", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_TRAINER_TOWER", + "name": "TRAINER TOWER", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_CANYON_ENTRANCE", + "name": "CANYON ENTRANCE", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_SEVAULT_CANYON", + "name": "SEVAULT CANYON", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_TANOBY_RUINS", + "name": "TANOBY RUINS", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_SEVII_ISLE_22", + "name": "SEVII ISLE 22", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_SEVII_ISLE_23", + "name": "SEVII ISLE 23", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_SEVII_ISLE_24", + "name": "SEVII ISLE 24", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_NAVEL_ROCK_FRLG", + "name": "NAVEL ROCK", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_MT_EMBER", + "name": "MT. EMBER", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_BERRY_FOREST", + "name": "BERRY FOREST", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ICEFALL_CAVE", + "name": "ICEFALL CAVE", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ROCKET_WAREHOUSE", + "name": "ROCKET WAREHOUSE", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_TRAINER_TOWER_2", + "name": "TRAINER TOWER", + "name_clone": true, + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_DOTTED_HOLE", + "name": "DOTTED HOLE", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_LOST_CAVE", + "name": "LOST CAVE", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_PATTERN_BUSH", + "name": "PATTERN BUSH", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ALTERING_CAVE_FRLG", + "name": "ALTERING CAVE", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_TANOBY_CHAMBERS", + "name": "TANOBY CHAMBERS", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_THREE_ISLE_PATH", + "name": "THREE ISLE PATH", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_TANOBY_KEY", + "name": "TANOBY KEY", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_BIRTH_ISLAND_FRLG", + "name": "BIRTH ISLAND", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_MONEAN_CHAMBER", + "name": "MONEAN CHAMBER", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_LIPTOO_CHAMBER", + "name": "LIPTOO CHAMBER", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_WEEPTH_CHAMBER", + "name": "WEEPTH CHAMBER", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_DILFORD_CHAMBER", + "name": "DILFORD CHAMBER", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_SCUFIB_CHAMBER", + "name": "SCUFIB CHAMBER", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_RIXY_CHAMBER", + "name": "RIXY CHAMBER", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_VIAPOIS_CHAMBER", + "name": "VIAPOIS CHAMBER", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_EMBER_SPA", + "name": "EMBER SPA", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_SPECIAL_AREA", + "name": "SPECIAL AREA", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_AQUA_HIDEOUT", + "name": "AQUA HIDEOUT", + "x": 19, + "y": 3, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_MAGMA_HIDEOUT", + "name": "MAGMA HIDEOUT", + "x": 6, + "y": 3, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_MIRAGE_TOWER", + "name": "MIRAGE TOWER", + "x": 8, + "y": 2, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_BIRTH_ISLAND", + "name": "BIRTH ISLAND", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_FARAWAY_ISLAND", + "name": "FARAWAY ISLAND", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ARTISAN_CAVE", + "name": "ARTISAN CAVE", + "x": 22, + "y": 12, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_MARINE_CAVE", + "name": "MARINE CAVE", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_UNDERWATER_MARINE_CAVE", + "name": "UNDERWATER", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_TERRA_CAVE", + "name": "TERRA CAVE", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_UNDERWATER_105", + "name": "UNDERWATER", + "x": 0, + "y": 10, + "width": 1, + "height": 3 + }, + { + "map_section": "MAPSEC_UNDERWATER_125", + "name": "UNDERWATER", + "x": 24, + "y": 3, + "width": 2, + "height": 2 + }, + { + "map_section": "MAPSEC_UNDERWATER_129", + "name": "UNDERWATER", + "x": 24, + "y": 10, + "width": 2, + "height": 1 + }, + { + "map_section": "MAPSEC_DESERT_UNDERPASS", + "name": "DESERT UNDERPASS", + "x": 2, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_ALTERING_CAVE", + "name": "ALTERING CAVE", + "x": 6, + "y": 8, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_NAVEL_ROCK", + "name": "NAVEL ROCK", + "x": 0, + "y": 0, + "width": 1, + "height": 1 + }, + { + "map_section": "MAPSEC_TRAINER_HILL", + "name": "TRAINER HILL", + "x": 8, + "y": 4, + "width": 1, + "height": 1 + } + ] +} diff --git a/src/data/region_map/region_map_sections.json.txt b/src/data/region_map/region_map_sections.json.txt new file mode 100644 index 000000000..e9c372cb5 --- /dev/null +++ b/src/data/region_map/region_map_sections.json.txt @@ -0,0 +1,24 @@ +{{ doNotModifyHeader }} +#ifndef GUARD_DATA_REGION_MAP_REGION_MAP_ENTRIES_H +#define GUARD_DATA_REGION_MAP_REGION_MAP_ENTRIES_H + +## for map_section in map_sections +{% if isEmptyString(getVar(map_section.name)) and not existsIn(map_section, "name_clone") %}{{ setVar(map_section.name, map_section.map_section) }}{% endif %} +## endfor + +## for map_section in map_sections +{% if getVar(map_section.name) == map_section.map_section %} +static const u8 sMapName_{{ cleanString(map_section.name) }}[] = _("{{ map_section.name }}"); +{% endif %} +{% if existsIn(map_section, "name_clone") %} +static const u8 sMapName_{{ cleanString(map_section.name) }}_Clone[] = _("{{ map_section.name }}"); +{% endif %} +## endfor + +const struct RegionMapLocation gRegionMapEntries[] = { +## for map_section in map_sections + [{{ map_section.map_section }}] = { {{ map_section.x }}, {{ map_section.y }}, {{ map_section.width }}, {{ map_section.height }}, sMapName_{{ cleanString(map_section.name) }}{% if existsIn(map_section, "name_clone") %}_Clone{% endif %} }, +## endfor +}; + +#endif // GUARD_DATA_REGION_MAP_REGION_MAP_ENTRIES_H diff --git a/src/data/text/move_descriptions.h b/src/data/text/move_descriptions.h index a4a1941ad..7000759f7 100644 --- a/src/data/text/move_descriptions.h +++ b/src/data/text/move_descriptions.h @@ -2962,8 +2962,8 @@ static const u8 sPsyshieldBashDescription[] = _( "energy. May raise Defense."); static const u8 sPowerShiftDescription[] = _( - "The user swaps its offensive\n" - "and defensive stats."); + "The user swaps its Attack\n" + "and Defense stats."); static const u8 sStoneAxeDescription[] = _( "High critical hit ratio. Sets\n" @@ -2974,52 +2974,52 @@ static const u8 sSpringtideStormDescription[] = _( "Varies with the user's form."); static const u8 sMysticalPowerDescription[] = _( - "Increases the user's better\n" - "of Atk. and Def. stats."); + "A mysterious power strikes,\n" + "raising the user's Sp. Atk."); static const u8 sRagingFuryDescription[] = _( - "Viciously spews flames at\n" - "a foe, becoming fixated."); + "A rampage of 2 to 3 turns\n" + "that confuses the user."); static const u8 sWaveCrashDescription[] = _( - "A water slam. Hurts the user\n" - "and raises its Action Speed."); + "A slam shrouded in water.\n" + "It also hurts the user."); static const u8 sChloroblastDescription[] = _( - "An blast that hurts the user\n" - "and lowers its Action Speed."); + "A user-hurting blast of\n" + "amassed chlorophyll."); static const u8 sMountainGaleDescription[] = _( - "The user hurls giant chunks\n" - "of ice to damage the foe."); + "Giant chunks of ice damage\n" + "the foe. It may flinch."); static const u8 sVictoryDanceDescription[] = _( - "Dances to raise damage 50%,\n" - "plus offenses and defenses."); + "Dances to raise Attack,\n" + "Defense and Speed."); static const u8 sHeadlongRushDescription[] = _( - "Hits with a full-body tackle,\n" - "lowering the foe's Defense."); + "Hits with a full-body tackle.\n" + "Lowers the users's defenses."); static const u8 sBarbBarrageDescription[] = _( "Can poison on impact. Powers\n" - "up if the foe has an ailment."); + "up against poisoned foes."); static const u8 sEsperWingDescription[] = _( "High critical hit ratio.\n" - "Ups the user's Action Speed."); + "Ups the user's Speed."); static const u8 sBitterMaliceDescription[] = _( - "Hurts a foe harder if it has\n" - "an ailment. Can give FrstBte."); + "A spine-chilling resentment.\n" + "May lower the foe's Attack."); static const u8 sShelterDescription[] = _( - "The user hardens their skin\n" - "and obscures itself."); + "The user hardens their skin,\n" + "sharply raising its Defense."); static const u8 sTripleArrowsDescription[] = _( - "Ups critical-hit ratio for 3\n" - "turns. Lowers foe Defenses."); + "High critical hit ratio.\n" + "May lower Defense or flinch."); static const u8 sInfernalParadeDescription[] = _( "Hurts a foe harder if it has\n" @@ -3031,7 +3031,7 @@ static const u8 sCeaselessEdgeDescription[] = _( static const u8 sBleakwindStormDescription[] = _( "Hits with brutal, cold winds.\n" - "May inflict frostbite."); + "May lower the foe's Speed."); static const u8 sWildboltStormDescription[] = _( "Hits with a brutal tempest.\n" @@ -3042,13 +3042,200 @@ static const u8 sSandsearStormDescription[] = _( "May inflict a burn."); static const u8 sLunarBlessingDescription[] = _( - "The user heals themself and\n" - "conceals their presence."); + "The user heals and cures\n" + "itself and its ally."); static const u8 sTakeHeartDescription[] = _( "The user lifts its spirits to\n" "heal and strengthen itself."); +static const u8 sTeraBlastDescription[] = _( + "If the user's Terastallized,\n" + "it hits with its Tera-type."); + +static const u8 sSilkTrapDescription[] =_( + "Protects itself, lowering\n" + "Speed on contact."); + +static const u8 sAxeKickDescription[] = _( + "May miss and hurt the kicker.\n" + "May cause confusion."); + +static const u8 sLastRespectsDescription[] = _( + "This move deals more damage\n" + "for each defeated ally."); + +static const u8 sLuminaCrashDescription[] = _( + "A mind-affecting light\n" + "harshly lowers Sp. Def."); + +static const u8 sOrderUpDescription[] = _( + "Boosts a user's stats\n" + "depending on Tatsugiri."); + +static const u8 sJetPunchDescription[] = _( + "A punch is thrown at blinding\n" + "speed to strike first."); + +static const u8 sSpicyExtractDescription[] = _( + "Sharply ups target's Attack,\n" + "harshly lowers its Defense."); + +static const u8 sSpinOutDescription[] = _( + "Furiously strains its legs.\n" + "Harshly lowers user's Speed."); + +static const u8 sPopulationBombDescription[] = _( + "The user's fellows hit one\n" + "to ten times in a row."); + +static const u8 sIceSpinnerDescription[] = _( + "Ice-covered feet hit a foe\n" + "and destroy the terrain."); + +static const u8 sGlaiveRushDescription[] = _( + "Foe attacks next turn can't\n" + "miss and do double damage."); + +static const u8 sRevivalBlessingDescription[] = _( + "Revives a fainted party {PKMN}\n" + "and restores half of its HP."); + +static const u8 sSaltCureDescription[] = _( + "Hurts foe every turn. Double\n" + "damage to Steel and Water."); + +static const u8 sTripleDiveDescription[] = _( + "Hits target with splashes\n" + "of water 3 times in a row."); + +static const u8 sMortalSpinDescription[] = _( + "Erases trap moves and Leech\n" + "Seed. Poisons adjecent foes."); + +static const u8 sDoodleDescription[] = _( + "Changes user's and ally's\n" + "Ability into the target's."); + +static const u8 sFilletAwayDescription[] = _( + "Sharply boosts offenses and\n" + "Speed by using its own HP."); + +static const u8 sKowtowCleaveDescription[] = _( + "User slashes the foe after\n" + "kowtowing. It never misses."); + +static const u8 sFlowerTrickDescription[] = _( + "Rigged bouquet. Always gets\n" + "a critical hit, never missing."); + +static const u8 sTorchSongDescription[] = _( + "Flames scorch the target.\n" + "Boosts the user's Sp. Atk."); + +static const u8 sAquaStepDescription[] = _( + "Hits with light, fluid dance\n" + "steps. Ups the user's Speed."); + +static const u8 sRagingBullDescription[] = _( + "Tackle that breaks barriers.\n" + "User's form determines type."); + +static const u8 sMakeItRainDescription[] = _( + "Lowers the user's Sp. Atk.\n" + "Money is recovered after."); + +static const u8 sRuinationDescription[] = _( + "Summons a ruinous disaster\n" + "and cuts half the foe's HP."); + +static const u8 sCollisionCourseDescription[] = _( + "Prehistoric explosion that's\n" + "stronger if supereffective."); + +static const u8 sElectroDriftDescription[] = _( + "Futuristic electricity. It's\n" + "stronger if supereffective."); + +static const u8 sShedTailDescription[] = _( + "Creates a Substitute for\n" + "itself before switching out."); + +static const u8 sChillyReceptionDescription[] =_( + "Bad joke summons snowstorm.\n" + "The user also switches out."); + +static const u8 sTidyUpDescription[] = _( + "User tidies up hazards and\n" + "raises its Attack and Speed."); + +static const u8 sSnowscapeDescription[] = _( + "Summons a snowstorm that\n" + "lasts for five turns."); + +static const u8 sPounceDescription[] = _( + "The user pounces on the foe,\n" + "lowering its Speed."); + +static const u8 sTrailblazeDescription[] = _( + "The user attacks suddenly,\n" + "raising its Speed."); + +static const u8 sChillingWaterDescription[] = _( + "A shower with ice-cold water\n" + "lowers the target's Attack."); + +static const u8 sHyperDrillDescription[] = _( + "A spinning pointed part\n" + "bypasses a foe's Protect."); + +static const u8 sTwinBeamDescription[] = _( + "Mystical eye-beams that hit\n" + "the target twice in a row."); + +static const u8 sRageFistDescription[] = _( + "The more the user has been\n" + "hit, the stronger the move."); + +static const u8 sArmorCannonDescription[] = _( + "A strong attack but lowers\n" + "the defensive stats."); + +static const u8 sBitterBladeDescription[] = _( + "An attack that absorbs\n" + "half the damage inflicted."); + +static const u8 sDoubleShockDescription[] = _( + "Discharges all electricity,\n" + "losing the Electric type."); + +static const u8 sGigatonHammerDescription[] = _( + "Swings a huge hammer. Can't\n" + "be used twice in a row."); + +static const u8 sComeuppanceDescription[] = _( + "Retaliates strongly against\n" + "who last hurt the user."); + +static const u8 sAquaCutterDescription[] = _( + "Pressurized water cut with a\n" + "high critical-hit ratio."); + +static const u8 sBlazingTorqueDescription[] = _( + "---"); + +static const u8 sWickedTorqueDescription[] = _( + "---"); + +static const u8 sNoxiousTorqueDescription[] = _( + "---"); + +static const u8 sCombatTorqueDescription[] = _( + "---"); + +static const u8 sMagicalTorqueDescription[] = _( + "---"); + const u8 gNotDoneYetDescription[] = _( "This move can't be used. Its\n" "effect is in development."); @@ -3838,4 +4025,52 @@ const u8 *const gMoveDescriptionPointers[MOVES_COUNT - 1] = [MOVE_SANDSEAR_STORM - 1] = sSandsearStormDescription, [MOVE_LUNAR_BLESSING - 1] = sLunarBlessingDescription, [MOVE_TAKE_HEART - 1] = sTakeHeartDescription, + [MOVE_TERA_BLAST - 1] = sTeraBlastDescription, + [MOVE_SILK_TRAP - 1] = sSilkTrapDescription, + [MOVE_AXE_KICK - 1] = sAxeKickDescription, + [MOVE_LAST_RESPECTS - 1] = sLastRespectsDescription, + [MOVE_LUMINA_CRASH - 1] = sLuminaCrashDescription, + [MOVE_ORDER_UP - 1] = sOrderUpDescription, + [MOVE_JET_PUNCH - 1] = sJetPunchDescription, + [MOVE_SPICY_EXTRACT - 1] = sSpicyExtractDescription, + [MOVE_SPIN_OUT - 1] = sSpinOutDescription, + [MOVE_POPULATION_BOMB - 1] = sPopulationBombDescription, + [MOVE_ICE_SPINNER - 1] = sIceSpinnerDescription, + [MOVE_GLAIVE_RUSH - 1] = sGlaiveRushDescription, + [MOVE_REVIVAL_BLESSING - 1] = sRevivalBlessingDescription, + [MOVE_SALT_CURE - 1] = sSaltCureDescription, + [MOVE_TRIPLE_DIVE - 1] = sTripleDiveDescription, + [MOVE_MORTAL_SPIN - 1] = sMortalSpinDescription, + [MOVE_DOODLE - 1] = sDoodleDescription, + [MOVE_FILLET_AWAY - 1] = sFilletAwayDescription, + [MOVE_KOWTOW_CLEAVE - 1] = sKowtowCleaveDescription, + [MOVE_FLOWER_TRICK - 1] = sFlowerTrickDescription, + [MOVE_TORCH_SONG - 1] = sTorchSongDescription, + [MOVE_AQUA_STEP - 1] = sAquaStepDescription, + [MOVE_RAGING_BULL - 1] = sRagingBullDescription, + [MOVE_MAKE_IT_RAIN - 1] = sMakeItRainDescription, + [MOVE_RUINATION - 1] = sRuinationDescription, + [MOVE_COLLISION_COURSE - 1] = sCollisionCourseDescription, + [MOVE_ELECTRO_DRIFT - 1] = sElectroDriftDescription, + [MOVE_SHED_TAIL - 1] = sShedTailDescription, + [MOVE_CHILLY_RECEPTION - 1] = sChillyReceptionDescription, + [MOVE_TIDY_UP - 1] = sTidyUpDescription, + [MOVE_SNOWSCAPE - 1] = sSnowscapeDescription, + [MOVE_POUNCE - 1] = sPounceDescription, + [MOVE_TRAILBLAZE - 1] = sTrailblazeDescription, + [MOVE_CHILLING_WATER - 1] = sChillingWaterDescription, + [MOVE_HYPER_DRILL - 1] = sHyperDrillDescription, + [MOVE_TWIN_BEAM - 1] = sTwinBeamDescription, + [MOVE_RAGE_FIST - 1] = sRageFistDescription, + [MOVE_ARMOR_CANNON - 1] = sArmorCannonDescription, + [MOVE_BITTER_BLADE - 1] = sBitterBladeDescription, + [MOVE_DOUBLE_SHOCK - 1] = sDoubleShockDescription, + [MOVE_GIGATON_HAMMER - 1] = sGigatonHammerDescription, + [MOVE_COMEUPPANCE - 1] = sComeuppanceDescription, + [MOVE_AQUA_CUTTER - 1] = sAquaCutterDescription, + [MOVE_BLAZING_TORQUE - 1] = sBlazingTorqueDescription, + [MOVE_WICKED_TORQUE - 1] = sWickedTorqueDescription, + [MOVE_NOXIOUS_TORQUE - 1] = sNoxiousTorqueDescription, + [MOVE_COMBAT_TORQUE - 1] = sCombatTorqueDescription, + [MOVE_MAGICAL_TORQUE - 1] = sMagicalTorqueDescription, }; diff --git a/src/data/text/move_names.h b/src/data/text/move_names.h index 5f0a741cb..221d3db73 100644 --- a/src/data/text/move_names.h +++ b/src/data/text/move_names.h @@ -781,6 +781,54 @@ const u8 gMoveNames[MOVES_COUNT][MOVE_NAME_LENGTH + 1] = [MOVE_SANDSEAR_STORM] = _("Sandsear Storm"), [MOVE_LUNAR_BLESSING] = _("Lunar Blessing"), [MOVE_TAKE_HEART] = _("Take Heart"), + [MOVE_TERA_BLAST] = _("Tera Blast"), + [MOVE_SILK_TRAP] = _("Silk Trap"), + [MOVE_AXE_KICK] = _("Axe Kick"), + [MOVE_LAST_RESPECTS] = _("Last Respects"), + [MOVE_LUMINA_CRASH] = _("Lumina Crash"), + [MOVE_ORDER_UP] = _("Order Up"), + [MOVE_JET_PUNCH] = _("Jet Punch"), + [MOVE_SPICY_EXTRACT] = _("Spicy Extract"), + [MOVE_SPIN_OUT] = _("Spin Out"), + [MOVE_POPULATION_BOMB] = _("Population Bomb"), + [MOVE_ICE_SPINNER] = _("Ice Spinner"), + [MOVE_GLAIVE_RUSH] = _("Glaive Rush"), + [MOVE_REVIVAL_BLESSING] = _("Revival Blessing"), + [MOVE_SALT_CURE] = _("Salt Cure"), + [MOVE_TRIPLE_DIVE] = _("Triple Dive"), + [MOVE_MORTAL_SPIN] = _("Mortal Spin"), + [MOVE_DOODLE] = _("Doodle"), + [MOVE_FILLET_AWAY] = _("Fillet Away"), + [MOVE_KOWTOW_CLEAVE] = _("Kowtow Cleave"), + [MOVE_FLOWER_TRICK] = _("Flower Trick"), + [MOVE_TORCH_SONG] = _("Torch Song"), + [MOVE_AQUA_STEP] = _("Aqua Step"), + [MOVE_RAGING_BULL] = _("Raging Bull"), + [MOVE_MAKE_IT_RAIN] = _("Make It Rain"), + [MOVE_RUINATION] = _("Ruination"), + [MOVE_COLLISION_COURSE] = _("Collision Course"), + [MOVE_ELECTRO_DRIFT] = _("Electro Drift"), + [MOVE_SHED_TAIL] = _("Shed Tail"), + [MOVE_CHILLY_RECEPTION] = _("Chilly Reception"), + [MOVE_TIDY_UP] = _("Tidy Up"), + [MOVE_SNOWSCAPE] = _("Snowscape"), + [MOVE_POUNCE] = _("Pounce"), + [MOVE_TRAILBLAZE] = _("Trailblaze"), + [MOVE_CHILLING_WATER] = _("Chilling Water"), + [MOVE_HYPER_DRILL] = _("Hyper Drill"), + [MOVE_TWIN_BEAM] = _("Twin Beam"), + [MOVE_RAGE_FIST] = _("Rage Fist"), + [MOVE_ARMOR_CANNON] = _("Armor Cannon"), + [MOVE_BITTER_BLADE] = _("Bitter Blade"), + [MOVE_DOUBLE_SHOCK] = _("Double Shock"), + [MOVE_GIGATON_HAMMER] = _("Gigaton Hammer"), + [MOVE_COMEUPPANCE] = _("Comeuppance"), + [MOVE_AQUA_CUTTER] = _("Aqua Cutter"), + [MOVE_BLAZING_TORQUE] = _("Blazing Torque"), + [MOVE_WICKED_TORQUE] = _("Wicked Torque"), + [MOVE_NOXIOUS_TORQUE] = _("Noxious Torque"), + [MOVE_COMBAT_TORQUE] = _("Combat Torque"), + [MOVE_MAGICAL_TORQUE] = _("Magical Torque"), }; #else // 12 letters @@ -1565,6 +1613,54 @@ const u8 gMoveNames[MOVES_COUNT][MOVE_NAME_LENGTH + 1] = [MOVE_SANDSEAR_STORM] = _("SndsearStorm"), [MOVE_LUNAR_BLESSING] = _("LunarBlessng"), [MOVE_TAKE_HEART] = _("Take Heart"), + [MOVE_TERA_BLAST] = _("Tera Blast"), + [MOVE_SILK_TRAP] = _("Silk Trap"), + [MOVE_AXE_KICK] = _("Axe Kick"), + [MOVE_LAST_RESPECTS] = _("LastRespects"), + [MOVE_LUMINA_CRASH] = _("Lumina Crash"), + [MOVE_ORDER_UP] = _("Order Up"), + [MOVE_JET_PUNCH] = _("Jet Punch"), + [MOVE_SPICY_EXTRACT] = _("SpicyExtract"), + [MOVE_SPIN_OUT] = _("Spin Out"), + [MOVE_POPULATION_BOMB] = _("PoplatinBomb"), + [MOVE_ICE_SPINNER] = _("Ice Spinner"), + [MOVE_GLAIVE_RUSH] = _("Glaive Rush"), + [MOVE_REVIVAL_BLESSING] = _("RevivlBlesng"), + [MOVE_SALT_CURE] = _("Salt Cure"), + [MOVE_TRIPLE_DIVE] = _("Triple Dive"), + [MOVE_MORTAL_SPIN] = _("Mortal Spin"), + [MOVE_DOODLE] = _("Doodle"), + [MOVE_FILLET_AWAY] = _("Fillet Away"), + [MOVE_KOWTOW_CLEAVE] = _("KowtowCleave"), + [MOVE_FLOWER_TRICK] = _("Flower Trick"), + [MOVE_TORCH_SONG] = _("Torch Song"), + [MOVE_AQUA_STEP] = _("Aqua Step"), + [MOVE_RAGING_BULL] = _("Raging Bull"), + [MOVE_MAKE_IT_RAIN] = _("Make It Rain"), + [MOVE_RUINATION] = _("Ruination"), + [MOVE_COLLISION_COURSE] = _("ColisinCours"), + [MOVE_ELECTRO_DRIFT] = _("ElectroDrift"), + [MOVE_SHED_TAIL] = _("Shed Tail"), + [MOVE_CHILLY_RECEPTION] = _("ChilReceptin"), + [MOVE_TIDY_UP] = _("Tidy Up"), + [MOVE_SNOWSCAPE] = _("Snowscape"), + [MOVE_POUNCE] = _("Pounce"), + [MOVE_TRAILBLAZE] = _("Trailblaze"), + [MOVE_CHILLING_WATER] = _("ChillingWatr"), + [MOVE_HYPER_DRILL] = _("Hyper Drill"), + [MOVE_TWIN_BEAM] = _("Twin Beam"), + [MOVE_RAGE_FIST] = _("Rage Fist"), + [MOVE_ARMOR_CANNON] = _("Armor Cannon"), + [MOVE_BITTER_BLADE] = _("Bitter Blade"), + [MOVE_DOUBLE_SHOCK] = _("Double Shock"), + [MOVE_GIGATON_HAMMER] = _("GigatonHammr"), + [MOVE_COMEUPPANCE] = _("Comeuppance"), + [MOVE_AQUA_CUTTER] = _("Aqua Cutter"), + [MOVE_BLAZING_TORQUE] = _("BlazngTorque"), + [MOVE_WICKED_TORQUE] = _("WickedTorque"), + [MOVE_NOXIOUS_TORQUE] = _("NoxiusTorque"), + [MOVE_COMBAT_TORQUE] = _("CombatTorque"), + [MOVE_MAGICAL_TORQUE] = _("MagiclTorque"), }; #endif diff --git a/src/data/tilesets/graphics.h b/src/data/tilesets/graphics.h new file mode 100644 index 000000000..2fdc28d21 --- /dev/null +++ b/src/data/tilesets/graphics.h @@ -0,0 +1,1636 @@ +const u32 gTilesetTiles_Petalburg[] = INCBIN_U32("data/tilesets/secondary/petalburg/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_Petalburg[][16] = +{ + INCBIN_U16("data/tilesets/secondary/petalburg/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_Rustboro[] = INCBIN_U32("data/tilesets/secondary/rustboro/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_Rustboro[][16] = +{ + INCBIN_U16("data/tilesets/secondary/rustboro/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_Dewford[] = INCBIN_U32("data/tilesets/secondary/dewford/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_Dewford[][16] = +{ + INCBIN_U16("data/tilesets/secondary/dewford/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_Slateport[] = INCBIN_U32("data/tilesets/secondary/slateport/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_Slateport[][16] = +{ + INCBIN_U16("data/tilesets/secondary/slateport/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/slateport/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/slateport/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/slateport/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/slateport/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/slateport/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/slateport/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/slateport/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/slateport/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/slateport/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/slateport/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/slateport/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/slateport/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/slateport/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/slateport/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/slateport/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_Mauville[] = INCBIN_U32("data/tilesets/secondary/mauville/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_Mauville[][16] = +{ + INCBIN_U16("data/tilesets/secondary/mauville/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_Lavaridge[] = INCBIN_U32("data/tilesets/secondary/lavaridge/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_Lavaridge[][16] = +{ + INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_Fallarbor[] = INCBIN_U32("data/tilesets/secondary/fallarbor/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_Fallarbor[][16] = +{ + INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_Fortree[] = INCBIN_U32("data/tilesets/secondary/fortree/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_Fortree[][16] = +{ + INCBIN_U16("data/tilesets/secondary/fortree/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_Lilycove[] = INCBIN_U32("data/tilesets/secondary/lilycove/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_Lilycove[][16] = +{ + INCBIN_U16("data/tilesets/secondary/lilycove/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_Mossdeep[] = INCBIN_U32("data/tilesets/secondary/mossdeep/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_Mossdeep[][16] = +{ + INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_EverGrande[] = INCBIN_U32("data/tilesets/secondary/ever_grande/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_EverGrande[][16] = +{ + INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_Pacifidlog[] = INCBIN_U32("data/tilesets/secondary/pacifidlog/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_Pacifidlog[][16] = +{ + INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_Sootopolis[] = INCBIN_U32("data/tilesets/secondary/sootopolis/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_Sootopolis[][16] = +{ + INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_BattleFrontierOutsideWest[] = INCBIN_U32("data/tilesets/secondary/battle_frontier_outside_west/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_BattleFrontierOutsideWest[][16] = +{ + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_BattleFrontierOutsideEast[] = INCBIN_U32("data/tilesets/secondary/battle_frontier_outside_east/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_BattleFrontierOutsideEast[][16] = +{ + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_InsideBuilding[] = INCBIN_U32("data/tilesets/primary/building/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_InsideBuilding[][16] = +{ + INCBIN_U16("data/tilesets/primary/building/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/primary/building/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/primary/building/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/primary/building/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/primary/building/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/primary/building/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/primary/building/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/primary/building/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/primary/building/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/primary/building/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/primary/building/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/primary/building/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/primary/building/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/primary/building/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/primary/building/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/primary/building/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_Shop[] = INCBIN_U32("data/tilesets/secondary/shop/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_Shop[][16] = +{ + INCBIN_U16("data/tilesets/secondary/shop/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_PokemonCenter[] = INCBIN_U32("data/tilesets/secondary/pokemon_center/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_PokemonCenter[][16] = +{ + INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_Cave[] = INCBIN_U32("data/tilesets/secondary/cave/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_Cave[][16] = +{ + INCBIN_U16("data/tilesets/secondary/cave/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/cave/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/cave/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/cave/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/cave/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/cave/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/cave/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/cave/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/cave/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/cave/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/cave/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/cave/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/cave/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/cave/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/cave/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/cave/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_PokemonSchool[] = INCBIN_U32("data/tilesets/secondary/pokemon_school/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_PokemonSchool[][16] = +{ + INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_PokemonFanClub[] = INCBIN_U32("data/tilesets/secondary/pokemon_fan_club/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_PokemonFanClub[][16] = +{ + INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_Unused1[] = INCBIN_U32("data/tilesets/secondary/unused_1/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_Unused1[][16] = +{ + INCBIN_U16("data/tilesets/secondary/unused_1/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_1/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_1/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_1/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_1/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_1/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_1/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_1/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_1/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_1/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_1/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_1/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_1/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_1/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_1/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_1/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_MeteorFalls[] = INCBIN_U32("data/tilesets/secondary/meteor_falls/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_MeteorFalls[][16] = +{ + INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_OceanicMuseum[] = INCBIN_U32("data/tilesets/secondary/oceanic_museum/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_OceanicMuseum[][16] = +{ + INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_CableClub[] = INCBIN_U32("data/tilesets/secondary/cable_club/tiles.4bpp"); +const u32 gTilesetTiles_UnknownCableClub[] = INCBIN_U32("data/tilesets/secondary/cable_club/unknown_tiles.4bpp"); + +const u16 gTilesetPalettes_CableClub[][16] = +{ + INCBIN_U16("data/tilesets/secondary/cable_club/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/cable_club/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/cable_club/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/cable_club/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/cable_club/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/cable_club/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/cable_club/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/cable_club/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/cable_club/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/cable_club/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/cable_club/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/cable_club/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/cable_club/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/cable_club/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/cable_club/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/cable_club/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_SeashoreHouse[] = INCBIN_U32("data/tilesets/secondary/seashore_house/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_SeashoreHouse[][16] = +{ + INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_PrettyPetalFlowerShop[] = INCBIN_U32("data/tilesets/secondary/pretty_petal_flower_shop/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_PrettyPetalFlowerShop[][16] = +{ + INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_PokemonDayCare[] = INCBIN_U32("data/tilesets/secondary/pokemon_day_care/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_PokemonDayCare[][16] = +{ + INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_Facility[] = INCBIN_U32("data/tilesets/secondary/facility/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_Facility[][16] = +{ + INCBIN_U16("data/tilesets/secondary/facility/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/facility/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/facility/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/facility/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/facility/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/facility/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/facility/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/facility/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/facility/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/facility/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/facility/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/facility/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/facility/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/facility/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/facility/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/facility/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_BikeShop[] = INCBIN_U32("data/tilesets/secondary/bike_shop/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_BikeShop[][16] = +{ + INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_RusturfTunnel[] = INCBIN_U32("data/tilesets/secondary/rusturf_tunnel/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_RusturfTunnel[][16] = +{ + INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_SecretBaseBrownCaveCompressed[] = INCBIN_U32("data/tilesets/secondary/secret_base/brown_cave/unused_tiles.4bpp.lz"); + +const u16 gTilesetPalettes_SecretBaseBrownCave[][16] = +{ + INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_SecretBaseTreeCompressed[] = INCBIN_U32("data/tilesets/secondary/secret_base/tree/unused_tiles.4bpp.lz"); + +const u16 gTilesetPalettes_SecretBaseTree[][16] = +{ + INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_SecretBaseShrubCompressed[] = INCBIN_U32("data/tilesets/secondary/secret_base/shrub/unused_tiles.4bpp.lz"); + +const u16 gTilesetPalettes_SecretBaseShrub[][16] = +{ + INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_SecretBaseBlueCaveCompressed[] = INCBIN_U32("data/tilesets/secondary/secret_base/blue_cave/unused_tiles.4bpp.lz"); + +const u16 gTilesetPalettes_SecretBaseBlueCave[][16] = +{ + INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_SecretBaseYellowCaveCompressed[] = INCBIN_U32("data/tilesets/secondary/secret_base/yellow_cave/unused_tiles.4bpp.lz"); + +const u16 gTilesetPalettes_SecretBaseYellowCave[][16] = +{ + INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_SecretBaseRedCaveCompressed[] = INCBIN_U32("data/tilesets/secondary/secret_base/red_cave/unused_tiles.4bpp.lz"); + +const u16 gTilesetPalettes_SecretBaseRedCave[][16] = +{ + INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_SecretBaseBrownCave[] = INCBIN_U32("data/tilesets/secondary/secret_base/brown_cave/tiles.4bpp"); +const u32 gTilesetTiles_SecretBaseTree[] = INCBIN_U32("data/tilesets/secondary/secret_base/tree/tiles.4bpp"); +const u32 gTilesetTiles_SecretBaseShrub[] = INCBIN_U32("data/tilesets/secondary/secret_base/shrub/tiles.4bpp"); +const u32 gTilesetTiles_SecretBaseBlueCave[] = INCBIN_U32("data/tilesets/secondary/secret_base/blue_cave/tiles.4bpp"); +const u32 gTilesetTiles_SecretBaseYellowCave[] = INCBIN_U32("data/tilesets/secondary/secret_base/yellow_cave/tiles.4bpp"); +const u32 gTilesetTiles_SecretBaseRedCave[] = INCBIN_U32("data/tilesets/secondary/secret_base/red_cave/tiles.4bpp"); + +const u32 gTilesetTiles_InsideOfTruck[] = INCBIN_U32("data/tilesets/secondary/inside_of_truck/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_InsideOfTruck[][16] = +{ + INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_Contest[] = INCBIN_U32("data/tilesets/secondary/contest/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_Contest[][16] = +{ + INCBIN_U16("data/tilesets/secondary/contest/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/contest/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/contest/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/contest/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/contest/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/contest/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/contest/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/contest/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/contest/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/contest/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/contest/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/contest/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/contest/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/contest/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/contest/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/contest/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_LilycoveMuseum[] = INCBIN_U32("data/tilesets/secondary/lilycove_museum/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_LilycoveMuseum[][16] = +{ + INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_BrendansMaysHouse[] = INCBIN_U32("data/tilesets/secondary/brendans_mays_house/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_BrendansMaysHouse[][16] = +{ + INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_Lab[] = INCBIN_U32("data/tilesets/secondary/lab/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_Lab[][16] = +{ + INCBIN_U16("data/tilesets/secondary/lab/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/lab/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/lab/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/lab/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/lab/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/lab/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/lab/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/lab/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/lab/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/lab/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/lab/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/lab/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/lab/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/lab/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/lab/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/lab/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_Underwater[] = INCBIN_U32("data/tilesets/secondary/underwater/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_Underwater[][16] = +{ + INCBIN_U16("data/tilesets/secondary/underwater/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/underwater/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/underwater/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/underwater/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/underwater/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/underwater/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/underwater/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/underwater/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/underwater/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/underwater/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/underwater/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/underwater/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/underwater/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/underwater/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/underwater/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/underwater/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_GenericBuilding[] = INCBIN_U32("data/tilesets/secondary/generic_building/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_GenericBuilding[][16] = +{ + INCBIN_U16("data/tilesets/secondary/generic_building/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/generic_building/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/generic_building/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/generic_building/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/generic_building/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/generic_building/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/generic_building/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/generic_building/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/generic_building/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/generic_building/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/generic_building/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/generic_building/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/generic_building/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/generic_building/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/generic_building/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/generic_building/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_MauvilleGameCorner[] = INCBIN_U32("data/tilesets/secondary/mauville_game_corner/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_MauvilleGameCorner[][16] = +{ + INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_Unused2[] = INCBIN_U32("data/tilesets/secondary/unused_2/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_Unused2[][16] = +{ + INCBIN_U16("data/tilesets/secondary/unused_2/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_2/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_2/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_2/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_2/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_2/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_2/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_2/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_2/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_2/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_2/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_2/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_2/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_2/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_2/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_2/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_RustboroGym[] = INCBIN_U32("data/tilesets/secondary/rustboro_gym/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_RustboroGym[][16] = +{ + INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_DewfordGym[] = INCBIN_U32("data/tilesets/secondary/dewford_gym/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_DewfordGym[][16] = +{ + INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_MauvilleGym[] = INCBIN_U32("data/tilesets/secondary/mauville_gym/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_MauvilleGym[][16] = +{ + INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_LavaridgeGym[] = INCBIN_U32("data/tilesets/secondary/lavaridge_gym/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_LavaridgeGym[][16] = +{ + INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_PetalburgGym[] = INCBIN_U32("data/tilesets/secondary/petalburg_gym/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_PetalburgGym[][16] = +{ + INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_FortreeGym[] = INCBIN_U32("data/tilesets/secondary/fortree_gym/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_FortreeGym[][16] = +{ + INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_MossdeepGym[] = INCBIN_U32("data/tilesets/secondary/mossdeep_gym/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_MossdeepGym[][16] = +{ + INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_SootopolisGym[] = INCBIN_U32("data/tilesets/secondary/sootopolis_gym/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_SootopolisGym[][16] = +{ + INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_TrickHousePuzzle[] = INCBIN_U32("data/tilesets/secondary/trick_house_puzzle/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_TrickHousePuzzle[][16] = +{ + INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_InsideShip[] = INCBIN_U32("data/tilesets/secondary/inside_ship/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_InsideShip[][16] = +{ + INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_SecretBase[] = INCBIN_U32("data/tilesets/primary/secret_base/tiles.4bpp"); +const u32 gTilesetTiles_UnknownSecretBase[] = INCBIN_U32("data/tilesets/primary/secret_base/unknown_tiles.4bpp"); + +const u16 gTilesetPalettes_SecretBase[][16] = +{ + INCBIN_U16("data/tilesets/primary/secret_base/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/primary/secret_base/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/primary/secret_base/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/primary/secret_base/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/primary/secret_base/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/primary/secret_base/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/primary/secret_base/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/primary/secret_base/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/primary/secret_base/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/primary/secret_base/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/primary/secret_base/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/primary/secret_base/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/primary/secret_base/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/primary/secret_base/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/primary/secret_base/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/primary/secret_base/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_EliteFour[] = INCBIN_U32("data/tilesets/secondary/elite_four/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_EliteFour[][16] = +{ + INCBIN_U16("data/tilesets/secondary/elite_four/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/elite_four/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/elite_four/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/elite_four/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/elite_four/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/elite_four/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/elite_four/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/elite_four/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/elite_four/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/elite_four/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/elite_four/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/elite_four/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/elite_four/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/elite_four/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/elite_four/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/elite_four/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_BattleFrontier[] = INCBIN_U32("data/tilesets/secondary/battle_frontier/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_BattleFrontier[][16] = +{ + INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_BattlePalace[] = INCBIN_U32("data/tilesets/secondary/battle_palace/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_BattlePalace[][16] = +{ + INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_BattleDome[] = INCBIN_U32("data/tilesets/secondary/battle_dome/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_BattleDome[][16] = +{ + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_BattleFactory[] = INCBIN_U32("data/tilesets/secondary/battle_factory/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_BattleFactory[][16] = +{ + INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_BattlePike[] = INCBIN_U32("data/tilesets/secondary/battle_pike/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_BattlePike[][16] = +{ + INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_BattleArena[] = INCBIN_U32("data/tilesets/secondary/battle_arena/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_BattleArena[][16] = +{ + INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_BattlePyramid[] = INCBIN_U32("data/tilesets/secondary/battle_pyramid/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_BattlePyramid[][16] = +{ + INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_MirageTower[] = INCBIN_U32("data/tilesets/secondary/mirage_tower/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_MirageTower[][16] = +{ + INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_MossdeepGameCorner[] = INCBIN_U32("data/tilesets/secondary/mossdeep_game_corner/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_MossdeepGameCorner[][16] = +{ + INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_IslandHarbor[] = INCBIN_U32("data/tilesets/secondary/island_harbor/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_IslandHarbor[][16] = +{ + INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_TrainerHill[] = INCBIN_U32("data/tilesets/secondary/trainer_hill/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_TrainerHill[][16] = +{ + INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_NavelRock[] = INCBIN_U32("data/tilesets/secondary/navel_rock/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_NavelRock[][16] = +{ + INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_BattleFrontierRankingHall[] = INCBIN_U32("data/tilesets/secondary/battle_frontier_ranking_hall/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_BattleFrontierRankingHall[][16] = +{ + INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_BattleTent[] = INCBIN_U32("data/tilesets/secondary/battle_tent/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_BattleTent[][16] = +{ + INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_MysteryEventsHouse[] = INCBIN_U32("data/tilesets/secondary/mystery_events_house/tiles.4bpp.lz"); + +const u16 gTilesetPalettes_MysteryEventsHouse[][16] = +{ + INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/15.gbapal"), +}; + +const u16 gTilesetPalettes_UnionRoom[][16] = +{ + INCBIN_U16("data/tilesets/secondary/union_room/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/union_room/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/union_room/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/union_room/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/union_room/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/union_room/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/union_room/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/union_room/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/union_room/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/union_room/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/union_room/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/union_room/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/union_room/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/union_room/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/union_room/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/union_room/palettes/15.gbapal"), +}; + +const u32 gTilesetTiles_UnionRoom[] = INCBIN_U32("data/tilesets/secondary/union_room/tiles.4bpp.lz"); diff --git a/src/data/tilesets/headers.h b/src/data/tilesets/headers.h new file mode 100644 index 000000000..2eae1be1e --- /dev/null +++ b/src/data/tilesets/headers.h @@ -0,0 +1,827 @@ +const struct Tileset gTileset_General = +{ + .isCompressed = TRUE, + .isSecondary = FALSE, + .tiles = gTilesetTiles_General, + .palettes = gTilesetPalettes_General, + .metatiles = gMetatiles_General, + .metatileAttributes = gMetatileAttributes_General, + .callback = InitTilesetAnim_General, +}; + +const struct Tileset gTileset_Petalburg = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_Petalburg, + .palettes = gTilesetPalettes_Petalburg, + .metatiles = gMetatiles_Petalburg, + .metatileAttributes = gMetatileAttributes_Petalburg, + .callback = InitTilesetAnim_Petalburg, +}; + +const struct Tileset gTileset_Rustboro = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_Rustboro, + .palettes = gTilesetPalettes_Rustboro, + .metatiles = gMetatiles_Rustboro, + .metatileAttributes = gMetatileAttributes_Rustboro, + .callback = InitTilesetAnim_Rustboro, +}; + +const struct Tileset gTileset_Dewford = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_Dewford, + .palettes = gTilesetPalettes_Dewford, + .metatiles = gMetatiles_Dewford, + .metatileAttributes = gMetatileAttributes_Dewford, + .callback = InitTilesetAnim_Dewford, +}; + +const struct Tileset gTileset_Slateport = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_Slateport, + .palettes = gTilesetPalettes_Slateport, + .metatiles = gMetatiles_Slateport, + .metatileAttributes = gMetatileAttributes_Slateport, + .callback = InitTilesetAnim_Slateport, +}; + +const struct Tileset gTileset_Mauville = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_Mauville, + .palettes = gTilesetPalettes_Mauville, + .metatiles = gMetatiles_Mauville, + .metatileAttributes = gMetatileAttributes_Mauville, + .callback = InitTilesetAnim_Mauville, +}; + +const struct Tileset gTileset_Lavaridge = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_Lavaridge, + .palettes = gTilesetPalettes_Lavaridge, + .metatiles = gMetatiles_Lavaridge, + .metatileAttributes = gMetatileAttributes_Lavaridge, + .callback = InitTilesetAnim_Lavaridge, +}; + +const struct Tileset gTileset_Fallarbor = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_Fallarbor, + .palettes = gTilesetPalettes_Fallarbor, + .metatiles = gMetatiles_Fallarbor, + .metatileAttributes = gMetatileAttributes_Fallarbor, + .callback = InitTilesetAnim_Fallarbor, +}; + +const struct Tileset gTileset_Fortree = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_Fortree, + .palettes = gTilesetPalettes_Fortree, + .metatiles = gMetatiles_Fortree, + .metatileAttributes = gMetatileAttributes_Fortree, + .callback = InitTilesetAnim_Fortree, +}; + +const struct Tileset gTileset_Lilycove = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_Lilycove, + .palettes = gTilesetPalettes_Lilycove, + .metatiles = gMetatiles_Lilycove, + .metatileAttributes = gMetatileAttributes_Lilycove, + .callback = InitTilesetAnim_Lilycove, +}; + +const struct Tileset gTileset_Mossdeep = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_Mossdeep, + .palettes = gTilesetPalettes_Mossdeep, + .metatiles = gMetatiles_Mossdeep, + .metatileAttributes = gMetatileAttributes_Mossdeep, + .callback = InitTilesetAnim_Mossdeep, +}; + +const struct Tileset gTileset_EverGrande = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_EverGrande, + .palettes = gTilesetPalettes_EverGrande, + .metatiles = gMetatiles_EverGrande, + .metatileAttributes = gMetatileAttributes_EverGrande, + .callback = InitTilesetAnim_EverGrande, +}; + +const struct Tileset gTileset_Pacifidlog = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_Pacifidlog, + .palettes = gTilesetPalettes_Pacifidlog, + .metatiles = gMetatiles_Pacifidlog, + .metatileAttributes = gMetatileAttributes_Pacifidlog, + .callback = InitTilesetAnim_Pacifidlog, +}; + +const struct Tileset gTileset_Sootopolis = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_Sootopolis, + .palettes = gTilesetPalettes_Sootopolis, + .metatiles = gMetatiles_Sootopolis, + .metatileAttributes = gMetatileAttributes_Sootopolis, + .callback = InitTilesetAnim_Sootopolis, +}; + +const struct Tileset gTileset_BattleFrontierOutsideWest = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_BattleFrontierOutsideWest, + .palettes = gTilesetPalettes_BattleFrontierOutsideWest, + .metatiles = gMetatiles_BattleFrontierOutsideWest, + .metatileAttributes = gMetatileAttributes_BattleFrontierOutsideWest, + .callback = InitTilesetAnim_BattleFrontierOutsideWest, +}; + +const struct Tileset gTileset_BattleFrontierOutsideEast = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_BattleFrontierOutsideEast, + .palettes = gTilesetPalettes_BattleFrontierOutsideEast, + .metatiles = gMetatiles_BattleFrontierOutsideEast, + .metatileAttributes = gMetatileAttributes_BattleFrontierOutsideEast, + .callback = InitTilesetAnim_BattleFrontierOutsideEast, +}; + +const struct Tileset gTileset_Building = +{ + .isCompressed = TRUE, + .isSecondary = FALSE, + .tiles = gTilesetTiles_InsideBuilding, + .palettes = gTilesetPalettes_InsideBuilding, + .metatiles = gMetatiles_InsideBuilding, + .metatileAttributes = gMetatileAttributes_InsideBuilding, + .callback = InitTilesetAnim_Building, +}; + +const struct Tileset gTileset_Shop = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_Shop, + .palettes = gTilesetPalettes_Shop, + .metatiles = gMetatiles_Shop, + .metatileAttributes = gMetatileAttributes_Shop, + .callback = NULL, +}; + +const struct Tileset gTileset_PokemonCenter = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_PokemonCenter, + .palettes = gTilesetPalettes_PokemonCenter, + .metatiles = gMetatiles_PokemonCenter, + .metatileAttributes = gMetatileAttributes_PokemonCenter, + .callback = NULL, +}; + +const struct Tileset gTileset_Cave = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_Cave, + .palettes = gTilesetPalettes_Cave, + .metatiles = gMetatiles_Cave, + .metatileAttributes = gMetatileAttributes_Cave, + .callback = InitTilesetAnim_Cave, +}; + +const struct Tileset gTileset_PokemonSchool = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_PokemonSchool, + .palettes = gTilesetPalettes_PokemonSchool, + .metatiles = gMetatiles_PokemonSchool, + .metatileAttributes = gMetatileAttributes_PokemonSchool, + .callback = NULL, +}; + +const struct Tileset gTileset_PokemonFanClub = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_PokemonFanClub, + .palettes = gTilesetPalettes_PokemonFanClub, + .metatiles = gMetatiles_PokemonFanClub, + .metatileAttributes = gMetatileAttributes_PokemonFanClub, + .callback = NULL, +}; + +const struct Tileset gTileset_Unused1 = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_Unused1, + .palettes = gTilesetPalettes_Unused1, + .metatiles = gMetatiles_Unused1, + .metatileAttributes = gMetatileAttributes_Unused1, + .callback = NULL, +}; + +const struct Tileset gTileset_MeteorFalls = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_MeteorFalls, + .palettes = gTilesetPalettes_MeteorFalls, + .metatiles = gMetatiles_MeteorFalls, + .metatileAttributes = gMetatileAttributes_MeteorFalls, + .callback = NULL, +}; + +const struct Tileset gTileset_OceanicMuseum = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_OceanicMuseum, + .palettes = gTilesetPalettes_OceanicMuseum, + .metatiles = gMetatiles_OceanicMuseum, + .metatileAttributes = gMetatileAttributes_OceanicMuseum, + .callback = NULL, +}; + +const struct Tileset gTileset_CableClub = +{ + .isCompressed = FALSE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_CableClub, + .palettes = gTilesetPalettes_CableClub, + .metatiles = gMetatiles_CableClub, + .metatileAttributes = gMetatileAttributes_CableClub, + .callback = NULL, +}; + +const struct Tileset gTileset_SeashoreHouse = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_SeashoreHouse, + .palettes = gTilesetPalettes_SeashoreHouse, + .metatiles = gMetatiles_SeashoreHouse, + .metatileAttributes = gMetatileAttributes_SeashoreHouse, + .callback = NULL, +}; + +const struct Tileset gTileset_PrettyPetalFlowerShop = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_PrettyPetalFlowerShop, + .palettes = gTilesetPalettes_PrettyPetalFlowerShop, + .metatiles = gMetatiles_PrettyPetalFlowerShop, + .metatileAttributes = gMetatileAttributes_PrettyPetalFlowerShop, + .callback = NULL, +}; + +const struct Tileset gTileset_PokemonDayCare = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_PokemonDayCare, + .palettes = gTilesetPalettes_PokemonDayCare, + .metatiles = gMetatiles_PokemonDayCare, + .metatileAttributes = gMetatileAttributes_PokemonDayCare, + .callback = NULL, +}; + +const struct Tileset gTileset_Facility = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_Facility, + .palettes = gTilesetPalettes_Facility, + .metatiles = gMetatiles_Facility, + .metatileAttributes = gMetatileAttributes_Facility, + .callback = NULL, +}; + +const struct Tileset gTileset_BikeShop = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_BikeShop, + .palettes = gTilesetPalettes_BikeShop, + .metatiles = gMetatiles_BikeShop, + .metatileAttributes = gMetatileAttributes_BikeShop, + .callback = InitTilesetAnim_BikeShop, +}; + +const struct Tileset gTileset_RusturfTunnel = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_RusturfTunnel, + .palettes = gTilesetPalettes_RusturfTunnel, + .metatiles = gMetatiles_RusturfTunnel, + .metatileAttributes = gMetatileAttributes_RusturfTunnel, + .callback = NULL, +}; + +const struct Tileset gTileset_SecretBaseBrownCave = +{ + .isCompressed = FALSE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_SecretBaseBrownCave, + .palettes = gTilesetPalettes_SecretBaseBrownCave, + .metatiles = gMetatiles_SecretBaseSecondary, + .metatileAttributes = gMetatileAttributes_SecretBaseSecondary, + .callback = NULL, +}; + +const struct Tileset gTileset_SecretBaseTree = +{ + .isCompressed = FALSE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_SecretBaseTree, + .palettes = gTilesetPalettes_SecretBaseTree, + .metatiles = gMetatiles_SecretBaseSecondary, + .metatileAttributes = gMetatileAttributes_SecretBaseSecondary, + .callback = NULL, +}; + +const struct Tileset gTileset_SecretBaseShrub = +{ + .isCompressed = FALSE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_SecretBaseShrub, + .palettes = gTilesetPalettes_SecretBaseShrub, + .metatiles = gMetatiles_SecretBaseSecondary, + .metatileAttributes = gMetatileAttributes_SecretBaseSecondary, + .callback = NULL, +}; + +const struct Tileset gTileset_SecretBaseBlueCave = +{ + .isCompressed = FALSE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_SecretBaseBlueCave, + .palettes = gTilesetPalettes_SecretBaseBlueCave, + .metatiles = gMetatiles_SecretBaseSecondary, + .metatileAttributes = gMetatileAttributes_SecretBaseSecondary, + .callback = NULL, +}; + +const struct Tileset gTileset_SecretBaseYellowCave = +{ + .isCompressed = FALSE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_SecretBaseYellowCave, + .palettes = gTilesetPalettes_SecretBaseYellowCave, + .metatiles = gMetatiles_SecretBaseSecondary, + .metatileAttributes = gMetatileAttributes_SecretBaseSecondary, + .callback = NULL, +}; + +const struct Tileset gTileset_SecretBaseRedCave = +{ + .isCompressed = FALSE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_SecretBaseRedCave, + .palettes = gTilesetPalettes_SecretBaseRedCave, + .metatiles = gMetatiles_SecretBaseSecondary, + .metatileAttributes = gMetatileAttributes_SecretBaseSecondary, + .callback = NULL, +}; + +const struct Tileset gTileset_InsideOfTruck = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_InsideOfTruck, + .palettes = gTilesetPalettes_InsideOfTruck, + .metatiles = gMetatiles_InsideOfTruck, + .metatileAttributes = gMetatileAttributes_InsideOfTruck, + .callback = NULL, +}; + +const struct Tileset gTileset_Unused2 = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_Unused2, + .palettes = gTilesetPalettes_Unused2, + .metatiles = gMetatiles_Unused2, + .metatileAttributes = gMetatileAttributes_Unused2, + .callback = NULL, +}; + +const struct Tileset gTileset_Contest = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_Contest, + .palettes = gTilesetPalettes_Contest, + .metatiles = gMetatiles_Contest, + .metatileAttributes = gMetatileAttributes_Contest, + .callback = NULL, +}; + +const struct Tileset gTileset_LilycoveMuseum = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_LilycoveMuseum, + .palettes = gTilesetPalettes_LilycoveMuseum, + .metatiles = gMetatiles_LilycoveMuseum, + .metatileAttributes = gMetatileAttributes_LilycoveMuseum, + .callback = NULL, +}; + +const struct Tileset gTileset_BrendansMaysHouse = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_BrendansMaysHouse, + .palettes = gTilesetPalettes_BrendansMaysHouse, + .metatiles = gMetatiles_BrendansMaysHouse, + .metatileAttributes = gMetatileAttributes_BrendansMaysHouse, + .callback = NULL, +}; + +const struct Tileset gTileset_Lab = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_Lab, + .palettes = gTilesetPalettes_Lab, + .metatiles = gMetatiles_Lab, + .metatileAttributes = gMetatileAttributes_Lab, + .callback = NULL, +}; + +const struct Tileset gTileset_Underwater = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_Underwater, + .palettes = gTilesetPalettes_Underwater, + .metatiles = gMetatiles_Underwater, + .metatileAttributes = gMetatileAttributes_Underwater, + .callback = InitTilesetAnim_Underwater, +}; + +const struct Tileset gTileset_PetalburgGym = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_PetalburgGym, + .palettes = gTilesetPalettes_PetalburgGym, + .metatiles = gMetatiles_PetalburgGym, + .metatileAttributes = gMetatileAttributes_PetalburgGym, + .callback = NULL, +}; + +const struct Tileset gTileset_SootopolisGym = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_SootopolisGym, + .palettes = gTilesetPalettes_SootopolisGym, + .metatiles = gMetatiles_SootopolisGym, + .metatileAttributes = gMetatileAttributes_SootopolisGym, + .callback = InitTilesetAnim_SootopolisGym, +}; + +const struct Tileset gTileset_GenericBuilding = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_GenericBuilding, + .palettes = gTilesetPalettes_GenericBuilding, + .metatiles = gMetatiles_GenericBuilding, + .metatileAttributes = gMetatileAttributes_GenericBuilding, + .callback = NULL, +}; + +const struct Tileset gTileset_MauvilleGameCorner = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_MauvilleGameCorner, + .palettes = gTilesetPalettes_MauvilleGameCorner, + .metatiles = gMetatiles_MauvilleGameCorner, + .metatileAttributes = gMetatileAttributes_MauvilleGameCorner, + .callback = NULL, +}; + +const struct Tileset gTileset_RustboroGym = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_RustboroGym, + .palettes = gTilesetPalettes_RustboroGym, + .metatiles = gMetatiles_RustboroGym, + .metatileAttributes = gMetatileAttributes_RustboroGym, + .callback = NULL, +}; + +const struct Tileset gTileset_DewfordGym = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_DewfordGym, + .palettes = gTilesetPalettes_DewfordGym, + .metatiles = gMetatiles_DewfordGym, + .metatileAttributes = gMetatileAttributes_DewfordGym, + .callback = NULL, +}; + +const struct Tileset gTileset_MauvilleGym = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_MauvilleGym, + .palettes = gTilesetPalettes_MauvilleGym, + .metatiles = gMetatiles_MauvilleGym, + .metatileAttributes = gMetatileAttributes_MauvilleGym, + .callback = InitTilesetAnim_MauvilleGym, +}; + +const struct Tileset gTileset_LavaridgeGym = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_LavaridgeGym, + .palettes = gTilesetPalettes_LavaridgeGym, + .metatiles = gMetatiles_LavaridgeGym, + .metatileAttributes = gMetatileAttributes_LavaridgeGym, + .callback = NULL, +}; + +const struct Tileset gTileset_TrickHousePuzzle = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_TrickHousePuzzle, + .palettes = gTilesetPalettes_TrickHousePuzzle, + .metatiles = gMetatiles_TrickHousePuzzle, + .metatileAttributes = gMetatileAttributes_TrickHousePuzzle, + .callback = NULL, +}; + +const struct Tileset gTileset_FortreeGym = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_FortreeGym, + .palettes = gTilesetPalettes_FortreeGym, + .metatiles = gMetatiles_FortreeGym, + .metatileAttributes = gMetatileAttributes_FortreeGym, + .callback = NULL, +}; + +const struct Tileset gTileset_MossdeepGym = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_MossdeepGym, + .palettes = gTilesetPalettes_MossdeepGym, + .metatiles = gMetatiles_MossdeepGym, + .metatileAttributes = gMetatileAttributes_MossdeepGym, + .callback = NULL, +}; + +const struct Tileset gTileset_InsideShip = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_InsideShip, + .palettes = gTilesetPalettes_InsideShip, + .metatiles = gMetatiles_InsideShip, + .metatileAttributes = gMetatileAttributes_InsideShip, + .callback = NULL, +}; + +const struct Tileset gTileset_SecretBase = +{ + .isCompressed = FALSE, + .isSecondary = FALSE, + .tiles = gTilesetTiles_SecretBase, + .palettes = gTilesetPalettes_SecretBase, + .metatiles = gMetatiles_SecretBasePrimary, + .metatileAttributes = gMetatileAttributes_SecretBasePrimary, + .callback = NULL, +}; + +const struct Tileset * const gTilesetPointer_SecretBase = &gTileset_SecretBase; +const struct Tileset * const gTilesetPointer_SecretBaseRedCave = &gTileset_SecretBaseRedCave; + +const struct Tileset gTileset_EliteFour = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_EliteFour, + .palettes = gTilesetPalettes_EliteFour, + .metatiles = gMetatiles_EliteFour, + .metatileAttributes = gMetatileAttributes_EliteFour, + .callback = InitTilesetAnim_EliteFour, +}; + +const struct Tileset gTileset_BattleFrontier = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_BattleFrontier, + .palettes = gTilesetPalettes_BattleFrontier, + .metatiles = gMetatiles_BattleFrontier, + .metatileAttributes = gMetatileAttributes_BattleFrontier, + .callback = NULL, +}; + +const struct Tileset gTileset_BattlePalace = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_BattlePalace, + .palettes = gTilesetPalettes_BattlePalace, + .metatiles = gMetatiles_BattlePalace, + .metatileAttributes = gMetatileAttributes_BattlePalace, + .callback = NULL, +}; + +const struct Tileset gTileset_BattleDome = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_BattleDome, + .palettes = gTilesetPalettes_BattleDome, + .metatiles = gMetatiles_BattleDome, + .metatileAttributes = gMetatileAttributes_BattleDome, + .callback = InitTilesetAnim_BattleDome, +}; + +const struct Tileset gTileset_BattleFactory = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_BattleFactory, + .palettes = gTilesetPalettes_BattleFactory, + .metatiles = gMetatiles_BattleFactory, + .metatileAttributes = gMetatileAttributes_BattleFactory, + .callback = NULL, +}; + +const struct Tileset gTileset_BattlePike = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_BattlePike, + .palettes = gTilesetPalettes_BattlePike, + .metatiles = gMetatiles_BattlePike, + .metatileAttributes = gMetatileAttributes_BattlePike, + .callback = NULL, +}; + +const struct Tileset gTileset_BattleArena = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_BattleArena, + .palettes = gTilesetPalettes_BattleArena, + .metatiles = gMetatiles_BattleArena, + .metatileAttributes = gMetatileAttributes_BattleArena, + .callback = NULL, +}; + +const struct Tileset gTileset_BattlePyramid = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_BattlePyramid, + .palettes = gTilesetPalettes_BattlePyramid, + .metatiles = gMetatiles_BattlePyramid, + .metatileAttributes = gMetatileAttributes_BattlePyramid, + .callback = InitTilesetAnim_BattlePyramid, +}; + +const struct Tileset gTileset_MirageTower = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_MirageTower, + .palettes = gTilesetPalettes_MirageTower, + .metatiles = gMetatiles_MirageTower, + .metatileAttributes = gMetatileAttributes_MirageTower, + .callback = NULL, +}; + +const struct Tileset gTileset_MossdeepGameCorner = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_MossdeepGameCorner, + .palettes = gTilesetPalettes_MossdeepGameCorner, + .metatiles = gMetatiles_MossdeepGameCorner, + .metatileAttributes = gMetatileAttributes_MossdeepGameCorner, + .callback = NULL, +}; + +const struct Tileset gTileset_IslandHarbor = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_IslandHarbor, + .palettes = gTilesetPalettes_IslandHarbor, + .metatiles = gMetatiles_IslandHarbor, + .metatileAttributes = gMetatileAttributes_IslandHarbor, + .callback = NULL, +}; + +const struct Tileset gTileset_TrainerHill = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_TrainerHill, + .palettes = gTilesetPalettes_TrainerHill, + .metatiles = gMetatiles_TrainerHill, + .metatileAttributes = gMetatileAttributes_TrainerHill, + .callback = NULL, +}; + +const struct Tileset gTileset_NavelRock = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_NavelRock, + .palettes = gTilesetPalettes_NavelRock, + .metatiles = gMetatiles_NavelRock, + .metatileAttributes = gMetatileAttributes_NavelRock, + .callback = NULL, +}; + +const struct Tileset gTileset_BattleFrontierRankingHall = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_BattleFrontierRankingHall, + .palettes = gTilesetPalettes_BattleFrontierRankingHall, + .metatiles = gMetatiles_BattleFrontierRankingHall, + .metatileAttributes = gMetatileAttributes_BattleFrontierRankingHall, + .callback = NULL, +}; + +const struct Tileset gTileset_BattleTent = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_BattleTent, + .palettes = gTilesetPalettes_BattleTent, + .metatiles = gMetatiles_BattleTent, + .metatileAttributes = gMetatileAttributes_BattleTent, + .callback = NULL, +}; + +const struct Tileset gTileset_MysteryEventsHouse = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_MysteryEventsHouse, + .palettes = gTilesetPalettes_MysteryEventsHouse, + .metatiles = gMetatiles_MysteryEventsHouse, + .metatileAttributes = gMetatileAttributes_MysteryEventsHouse, + .callback = NULL, +}; + +const struct Tileset gTileset_UnionRoom = +{ + .isCompressed = TRUE, + .isSecondary = TRUE, + .tiles = gTilesetTiles_UnionRoom, + .palettes = gTilesetPalettes_UnionRoom, + .metatiles = gMetatiles_UnionRoom, + .metatileAttributes = gMetatileAttributes_UnionRoom, + .callback = NULL, +}; diff --git a/src/data/tilesets/metatiles.h b/src/data/tilesets/metatiles.h new file mode 100644 index 000000000..63f9c7b1c --- /dev/null +++ b/src/data/tilesets/metatiles.h @@ -0,0 +1,209 @@ +const u16 gMetatiles_General[] = INCBIN_U16("data/tilesets/primary/general/metatiles.bin"); +const u16 gMetatileAttributes_General[] = INCBIN_U16("data/tilesets/primary/general/metatile_attributes.bin"); + +const u16 gMetatiles_Petalburg[] = INCBIN_U16("data/tilesets/secondary/petalburg/metatiles.bin"); +const u16 gMetatileAttributes_Petalburg[] = INCBIN_U16("data/tilesets/secondary/petalburg/metatile_attributes.bin"); + +const u16 gMetatiles_Rustboro[] = INCBIN_U16("data/tilesets/secondary/rustboro/metatiles.bin"); +const u16 gMetatileAttributes_Rustboro[] = INCBIN_U16("data/tilesets/secondary/rustboro/metatile_attributes.bin"); + +const u16 gMetatiles_Dewford[] = INCBIN_U16("data/tilesets/secondary/dewford/metatiles.bin"); +const u16 gMetatileAttributes_Dewford[] = INCBIN_U16("data/tilesets/secondary/dewford/metatile_attributes.bin"); + +const u16 gMetatiles_Slateport[] = INCBIN_U16("data/tilesets/secondary/slateport/metatiles.bin"); +const u16 gMetatileAttributes_Slateport[] = INCBIN_U16("data/tilesets/secondary/slateport/metatile_attributes.bin"); + +const u16 gMetatiles_Mauville[] = INCBIN_U16("data/tilesets/secondary/mauville/metatiles.bin"); +const u16 gMetatileAttributes_Mauville[] = INCBIN_U16("data/tilesets/secondary/mauville/metatile_attributes.bin"); + +const u16 gMetatiles_Lavaridge[] = INCBIN_U16("data/tilesets/secondary/lavaridge/metatiles.bin"); +const u16 gMetatileAttributes_Lavaridge[] = INCBIN_U16("data/tilesets/secondary/lavaridge/metatile_attributes.bin"); + +const u16 gMetatiles_Fallarbor[] = INCBIN_U16("data/tilesets/secondary/fallarbor/metatiles.bin"); +const u16 gMetatileAttributes_Fallarbor[] = INCBIN_U16("data/tilesets/secondary/fallarbor/metatile_attributes.bin"); + +const u16 gMetatiles_Fortree[] = INCBIN_U16("data/tilesets/secondary/fortree/metatiles.bin"); +const u16 gMetatileAttributes_Fortree[] = INCBIN_U16("data/tilesets/secondary/fortree/metatile_attributes.bin"); + +const u16 gMetatiles_Lilycove[] = INCBIN_U16("data/tilesets/secondary/lilycove/metatiles.bin"); +const u16 gMetatileAttributes_Lilycove[] = INCBIN_U16("data/tilesets/secondary/lilycove/metatile_attributes.bin"); + +const u16 gMetatiles_Mossdeep[] = INCBIN_U16("data/tilesets/secondary/mossdeep/metatiles.bin"); +const u16 gMetatileAttributes_Mossdeep[] = INCBIN_U16("data/tilesets/secondary/mossdeep/metatile_attributes.bin"); + +const u16 gMetatiles_EverGrande[] = INCBIN_U16("data/tilesets/secondary/ever_grande/metatiles.bin"); +const u16 gMetatileAttributes_EverGrande[] = INCBIN_U16("data/tilesets/secondary/ever_grande/metatile_attributes.bin"); + +const u16 gMetatiles_Pacifidlog[] = INCBIN_U16("data/tilesets/secondary/pacifidlog/metatiles.bin"); +const u16 gMetatileAttributes_Pacifidlog[] = INCBIN_U16("data/tilesets/secondary/pacifidlog/metatile_attributes.bin"); + +const u16 gMetatiles_Sootopolis[] = INCBIN_U16("data/tilesets/secondary/sootopolis/metatiles.bin"); +const u16 gMetatileAttributes_Sootopolis[] = INCBIN_U16("data/tilesets/secondary/sootopolis/metatile_attributes.bin"); + +const u16 gMetatiles_BattleFrontierOutsideWest[] = INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/metatiles.bin"); +const u16 gMetatileAttributes_BattleFrontierOutsideWest[] = INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/metatile_attributes.bin"); + +const u16 gMetatiles_BattleFrontierOutsideEast[] = INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/metatiles.bin"); +const u16 gMetatileAttributes_BattleFrontierOutsideEast[] = INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/metatile_attributes.bin"); + +const u16 gMetatiles_InsideBuilding[] = INCBIN_U16("data/tilesets/primary/building/metatiles.bin"); +const u16 gMetatileAttributes_InsideBuilding[] = INCBIN_U16("data/tilesets/primary/building/metatile_attributes.bin"); + +const u16 gMetatiles_Shop[] = INCBIN_U16("data/tilesets/secondary/shop/metatiles.bin"); +const u16 gMetatileAttributes_Shop[] = INCBIN_U16("data/tilesets/secondary/shop/metatile_attributes.bin"); + +const u16 gMetatiles_PokemonCenter[] = INCBIN_U16("data/tilesets/secondary/pokemon_center/metatiles.bin"); +const u16 gMetatileAttributes_PokemonCenter[] = INCBIN_U16("data/tilesets/secondary/pokemon_center/metatile_attributes.bin"); + +const u16 gMetatiles_Cave[] = INCBIN_U16("data/tilesets/secondary/cave/metatiles.bin"); +const u16 gMetatileAttributes_Cave[] = INCBIN_U16("data/tilesets/secondary/cave/metatile_attributes.bin"); + +const u16 gMetatiles_PokemonSchool[] = INCBIN_U16("data/tilesets/secondary/pokemon_school/metatiles.bin"); +const u16 gMetatileAttributes_PokemonSchool[] = INCBIN_U16("data/tilesets/secondary/pokemon_school/metatile_attributes.bin"); + +const u16 gMetatiles_PokemonFanClub[] = INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/metatiles.bin"); +const u16 gMetatileAttributes_PokemonFanClub[] = INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/metatile_attributes.bin"); + +const u16 gMetatiles_Unused1[] = INCBIN_U16("data/tilesets/secondary/unused_1/metatiles.bin"); +const u16 gMetatileAttributes_Unused1[] = INCBIN_U16("data/tilesets/secondary/unused_1/metatile_attributes.bin"); + +const u16 gMetatiles_MeteorFalls[] = INCBIN_U16("data/tilesets/secondary/meteor_falls/metatiles.bin"); +const u16 gMetatileAttributes_MeteorFalls[] = INCBIN_U16("data/tilesets/secondary/meteor_falls/metatile_attributes.bin"); + +const u16 gMetatiles_OceanicMuseum[] = INCBIN_U16("data/tilesets/secondary/oceanic_museum/metatiles.bin"); +const u16 gMetatileAttributes_OceanicMuseum[] = INCBIN_U16("data/tilesets/secondary/oceanic_museum/metatile_attributes.bin"); + +const u16 gMetatiles_CableClub[] = INCBIN_U16("data/tilesets/secondary/cable_club/metatiles.bin"); +const u16 gMetatileAttributes_CableClub[] = INCBIN_U16("data/tilesets/secondary/cable_club/metatile_attributes.bin"); + +const u16 gMetatiles_SeashoreHouse[] = INCBIN_U16("data/tilesets/secondary/seashore_house/metatiles.bin"); +const u16 gMetatileAttributes_SeashoreHouse[] = INCBIN_U16("data/tilesets/secondary/seashore_house/metatile_attributes.bin"); + +const u16 gMetatiles_PrettyPetalFlowerShop[] = INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/metatiles.bin"); +const u16 gMetatileAttributes_PrettyPetalFlowerShop[] = INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/metatile_attributes.bin"); + +const u16 gMetatiles_PokemonDayCare[] = INCBIN_U16("data/tilesets/secondary/pokemon_day_care/metatiles.bin"); +const u16 gMetatileAttributes_PokemonDayCare[] = INCBIN_U16("data/tilesets/secondary/pokemon_day_care/metatile_attributes.bin"); + +const u16 gMetatiles_Facility[] = INCBIN_U16("data/tilesets/secondary/facility/metatiles.bin"); +const u16 gMetatileAttributes_Facility[] = INCBIN_U16("data/tilesets/secondary/facility/metatile_attributes.bin"); + +const u16 gMetatiles_BikeShop[] = INCBIN_U16("data/tilesets/secondary/bike_shop/metatiles.bin"); +const u16 gMetatileAttributes_BikeShop[] = INCBIN_U16("data/tilesets/secondary/bike_shop/metatile_attributes.bin"); + +const u16 gMetatiles_RusturfTunnel[] = INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/metatiles.bin"); +const u16 gMetatileAttributes_RusturfTunnel[] = INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/metatile_attributes.bin"); + +const u16 gMetatiles_SecretBaseSecondary[] = INCBIN_U16("data/tilesets/secondary/secret_base/metatiles.bin"); +const u16 gMetatileAttributes_SecretBaseSecondary[] = INCBIN_U16("data/tilesets/secondary/secret_base/metatile_attributes.bin"); + +const u16 gMetatiles_InsideOfTruck[] = INCBIN_U16("data/tilesets/secondary/inside_of_truck/metatiles.bin"); +const u16 gMetatileAttributes_InsideOfTruck[] = INCBIN_U16("data/tilesets/secondary/inside_of_truck/metatile_attributes.bin"); + +const u16 gMetatiles_Contest[] = INCBIN_U16("data/tilesets/secondary/contest/metatiles.bin"); +const u16 gMetatileAttributes_Contest[] = INCBIN_U16("data/tilesets/secondary/contest/metatile_attributes.bin"); + +const u16 gMetatiles_LilycoveMuseum[] = INCBIN_U16("data/tilesets/secondary/lilycove_museum/metatiles.bin"); +const u16 gMetatileAttributes_LilycoveMuseum[] = INCBIN_U16("data/tilesets/secondary/lilycove_museum/metatile_attributes.bin"); + +const u16 gMetatiles_BrendansMaysHouse[] = INCBIN_U16("data/tilesets/secondary/brendans_mays_house/metatiles.bin"); +const u16 gMetatileAttributes_BrendansMaysHouse[] = INCBIN_U16("data/tilesets/secondary/brendans_mays_house/metatile_attributes.bin"); + +const u16 gMetatiles_Lab[] = INCBIN_U16("data/tilesets/secondary/lab/metatiles.bin"); +const u16 gMetatileAttributes_Lab[] = INCBIN_U16("data/tilesets/secondary/lab/metatile_attributes.bin"); + +const u16 gMetatiles_Underwater[] = INCBIN_U16("data/tilesets/secondary/underwater/metatiles.bin"); +const u16 gMetatileAttributes_Underwater[] = INCBIN_U16("data/tilesets/secondary/underwater/metatile_attributes.bin"); + +const u16 gMetatiles_GenericBuilding[] = INCBIN_U16("data/tilesets/secondary/generic_building/metatiles.bin"); +const u16 gMetatileAttributes_GenericBuilding[] = INCBIN_U16("data/tilesets/secondary/generic_building/metatile_attributes.bin"); + +const u16 gMetatiles_MauvilleGameCorner[] = INCBIN_U16("data/tilesets/secondary/mauville_game_corner/metatiles.bin"); +const u16 gMetatileAttributes_MauvilleGameCorner[] = INCBIN_U16("data/tilesets/secondary/mauville_game_corner/metatile_attributes.bin"); + +const u16 gMetatiles_Unused2[] = INCBIN_U16("data/tilesets/secondary/unused_2/metatiles.bin"); +const u16 gMetatileAttributes_Unused2[] = INCBIN_U16("data/tilesets/secondary/unused_2/metatile_attributes.bin"); + +const u16 gMetatiles_RustboroGym[] = INCBIN_U16("data/tilesets/secondary/rustboro_gym/metatiles.bin"); +const u16 gMetatileAttributes_RustboroGym[] = INCBIN_U16("data/tilesets/secondary/rustboro_gym/metatile_attributes.bin"); + +const u16 gMetatiles_DewfordGym[] = INCBIN_U16("data/tilesets/secondary/dewford_gym/metatiles.bin"); +const u16 gMetatileAttributes_DewfordGym[] = INCBIN_U16("data/tilesets/secondary/dewford_gym/metatile_attributes.bin"); + +const u16 gMetatiles_MauvilleGym[] = INCBIN_U16("data/tilesets/secondary/mauville_gym/metatiles.bin"); +const u16 gMetatileAttributes_MauvilleGym[] = INCBIN_U16("data/tilesets/secondary/mauville_gym/metatile_attributes.bin"); + +const u16 gMetatiles_LavaridgeGym[] = INCBIN_U16("data/tilesets/secondary/lavaridge_gym/metatiles.bin"); +const u16 gMetatileAttributes_LavaridgeGym[] = INCBIN_U16("data/tilesets/secondary/lavaridge_gym/metatile_attributes.bin"); + +const u16 gMetatiles_PetalburgGym[] = INCBIN_U16("data/tilesets/secondary/petalburg_gym/metatiles.bin"); +const u16 gMetatileAttributes_PetalburgGym[] = INCBIN_U16("data/tilesets/secondary/petalburg_gym/metatile_attributes.bin"); + +const u16 gMetatiles_FortreeGym[] = INCBIN_U16("data/tilesets/secondary/fortree_gym/metatiles.bin"); +const u16 gMetatileAttributes_FortreeGym[] = INCBIN_U16("data/tilesets/secondary/fortree_gym/metatile_attributes.bin"); + +const u16 gMetatiles_MossdeepGym[] = INCBIN_U16("data/tilesets/secondary/mossdeep_gym/metatiles.bin"); +const u16 gMetatileAttributes_MossdeepGym[] = INCBIN_U16("data/tilesets/secondary/mossdeep_gym/metatile_attributes.bin"); + +const u16 gMetatiles_SootopolisGym[] = INCBIN_U16("data/tilesets/secondary/sootopolis_gym/metatiles.bin"); +const u16 gMetatileAttributes_SootopolisGym[] = INCBIN_U16("data/tilesets/secondary/sootopolis_gym/metatile_attributes.bin"); + +const u16 gMetatiles_TrickHousePuzzle[] = INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/metatiles.bin"); +const u16 gMetatileAttributes_TrickHousePuzzle[] = INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/metatile_attributes.bin"); + +const u16 gMetatiles_InsideShip[] = INCBIN_U16("data/tilesets/secondary/inside_ship/metatiles.bin"); +const u16 gMetatileAttributes_InsideShip[] = INCBIN_U16("data/tilesets/secondary/inside_ship/metatile_attributes.bin"); + +const u16 gMetatiles_SecretBasePrimary[] = INCBIN_U16("data/tilesets/primary/secret_base/metatiles.bin"); +const u16 gMetatileAttributes_SecretBasePrimary[] = INCBIN_U16("data/tilesets/primary/secret_base/metatile_attributes.bin"); + +const u16 gMetatiles_EliteFour[] = INCBIN_U16("data/tilesets/secondary/elite_four/metatiles.bin"); +const u16 gMetatileAttributes_EliteFour[] = INCBIN_U16("data/tilesets/secondary/elite_four/metatile_attributes.bin"); + +const u16 gMetatiles_BattleFrontier[] = INCBIN_U16("data/tilesets/secondary/battle_frontier/metatiles.bin"); +const u16 gMetatileAttributes_BattleFrontier[] = INCBIN_U16("data/tilesets/secondary/battle_frontier/metatile_attributes.bin"); + +const u16 gMetatiles_BattlePalace[] = INCBIN_U16("data/tilesets/secondary/battle_palace/metatiles.bin"); +const u16 gMetatileAttributes_BattlePalace[] = INCBIN_U16("data/tilesets/secondary/battle_palace/metatile_attributes.bin"); + +const u16 gMetatiles_BattleDome[] = INCBIN_U16("data/tilesets/secondary/battle_dome/metatiles.bin"); +const u16 gMetatileAttributes_BattleDome[] = INCBIN_U16("data/tilesets/secondary/battle_dome/metatile_attributes.bin"); + +const u16 gMetatiles_BattleFactory[] = INCBIN_U16("data/tilesets/secondary/battle_factory/metatiles.bin"); +const u16 gMetatileAttributes_BattleFactory[] = INCBIN_U16("data/tilesets/secondary/battle_factory/metatile_attributes.bin"); + +const u16 gMetatiles_BattlePike[] = INCBIN_U16("data/tilesets/secondary/battle_pike/metatiles.bin"); +const u16 gMetatileAttributes_BattlePike[] = INCBIN_U16("data/tilesets/secondary/battle_pike/metatile_attributes.bin"); + +const u16 gMetatiles_BattleArena[] = INCBIN_U16("data/tilesets/secondary/battle_arena/metatiles.bin"); +const u16 gMetatileAttributes_BattleArena[] = INCBIN_U16("data/tilesets/secondary/battle_arena/metatile_attributes.bin"); + +const u16 gMetatiles_BattlePyramid[] = INCBIN_U16("data/tilesets/secondary/battle_pyramid/metatiles.bin"); +const u16 gMetatileAttributes_BattlePyramid[] = INCBIN_U16("data/tilesets/secondary/battle_pyramid/metatile_attributes.bin"); + +const u16 gMetatiles_MirageTower[] = INCBIN_U16("data/tilesets/secondary/mirage_tower/metatiles.bin"); +const u16 gMetatileAttributes_MirageTower[] = INCBIN_U16("data/tilesets/secondary/mirage_tower/metatile_attributes.bin"); + +const u16 gMetatiles_MossdeepGameCorner[] = INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/metatiles.bin"); +const u16 gMetatileAttributes_MossdeepGameCorner[] = INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/metatile_attributes.bin"); + +const u16 gMetatiles_IslandHarbor[] = INCBIN_U16("data/tilesets/secondary/island_harbor/metatiles.bin"); +const u16 gMetatileAttributes_IslandHarbor[] = INCBIN_U16("data/tilesets/secondary/island_harbor/metatile_attributes.bin"); + +const u16 gMetatiles_TrainerHill[] = INCBIN_U16("data/tilesets/secondary/trainer_hill/metatiles.bin"); +const u16 gMetatileAttributes_TrainerHill[] = INCBIN_U16("data/tilesets/secondary/trainer_hill/metatile_attributes.bin"); + +const u16 gMetatiles_NavelRock[] = INCBIN_U16("data/tilesets/secondary/navel_rock/metatiles.bin"); +const u16 gMetatileAttributes_NavelRock[] = INCBIN_U16("data/tilesets/secondary/navel_rock/metatile_attributes.bin"); + +const u16 gMetatiles_BattleFrontierRankingHall[] = INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/metatiles.bin"); +const u16 gMetatileAttributes_BattleFrontierRankingHall[] = INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/metatile_attributes.bin"); + +const u16 gMetatiles_BattleTent[] = INCBIN_U16("data/tilesets/secondary/battle_tent/metatiles.bin"); +const u16 gMetatileAttributes_BattleTent[] = INCBIN_U16("data/tilesets/secondary/battle_tent/metatile_attributes.bin"); + +const u16 gMetatiles_MysteryEventsHouse[] = INCBIN_U16("data/tilesets/secondary/mystery_events_house/metatiles.bin"); +const u16 gMetatileAttributes_MysteryEventsHouse[] = INCBIN_U16("data/tilesets/secondary/mystery_events_house/metatile_attributes.bin"); + +const u16 gMetatiles_UnionRoom[] = INCBIN_U16("data/tilesets/secondary/union_room/metatiles.bin"); +const u16 gMetatileAttributes_UnionRoom[] = INCBIN_U16("data/tilesets/secondary/union_room/metatile_attributes.bin"); diff --git a/src/data/union_room.h b/src/data/union_room.h index 07f8e4899..f32910388 100644 --- a/src/data/union_room.h +++ b/src/data/union_room.h @@ -717,9 +717,9 @@ static const struct ListMenuTemplate sListMenuTemplate_PossibleGroupMembers = { .cursorShadowPal = 3, .lettersSpacing = 0, .itemVerticalPadding = 0, - .scrollMultiple = 0, - .fontId = 1, - .cursorKind = 1 + .scrollMultiple = LIST_NO_MULTIPLE_SCROLL, + .fontId = FONT_NORMAL, + .cursorKind = CURSOR_INVISIBLE }; static const struct WindowTemplate sWindowTemplate_GroupList = { @@ -777,9 +777,9 @@ static const struct ListMenuTemplate sListMenuTemplate_UnionRoomGroups = { .cursorShadowPal = 3, .lettersSpacing = 0, .itemVerticalPadding = 0, - .scrollMultiple = 1, - .fontId = 1, - .cursorKind = 0 + .scrollMultiple = LIST_MULTIPLE_SCROLL_DPAD, + .fontId = FONT_NORMAL, + .cursorKind = CURSOR_BLACK_ARROW }; static const struct WindowTemplate sWindowTemplate_InviteToActivity = { @@ -815,9 +815,9 @@ static const struct ListMenuTemplate sListMenuTemplate_InviteToActivity = { .cursorShadowPal = 3, .lettersSpacing = 0, .itemVerticalPadding = 0, - .scrollMultiple = 0, - .fontId = 1, - .cursorKind = 0 + .scrollMultiple = LIST_NO_MULTIPLE_SCROLL, + .fontId = FONT_NORMAL, + .cursorKind = CURSOR_BLACK_ARROW }; static const struct WindowTemplate sWindowTemplate_RegisterForTrade = { @@ -852,9 +852,9 @@ static const struct ListMenuTemplate sListMenuTemplate_RegisterForTrade = { .cursorShadowPal = 3, .lettersSpacing = 0, .itemVerticalPadding = 0, - .scrollMultiple = 0, - .fontId = 1, - .cursorKind = 0 + .scrollMultiple = LIST_NO_MULTIPLE_SCROLL, + .fontId = FONT_NORMAL, + .cursorKind = CURSOR_BLACK_ARROW }; static const struct WindowTemplate sWindowTemplate_TradingBoardRequestType = { @@ -905,9 +905,9 @@ static const struct ListMenuTemplate sMenuTemplate_TradingBoardRequestType = { .cursorShadowPal = 3, .lettersSpacing = 0, .itemVerticalPadding = 0, - .scrollMultiple = 0, - .fontId = 1, - .cursorKind = 0 + .scrollMultiple = LIST_NO_MULTIPLE_SCROLL, + .fontId = FONT_NORMAL, + .cursorKind = CURSOR_BLACK_ARROW }; static const struct WindowTemplate sWindowTemplate_TradingBoardHeader = { @@ -931,7 +931,7 @@ static const struct WindowTemplate sWindowTemplate_TradingBoardMain = { }; static const struct ListMenuItem sTradeBoardListMenuItems[] = { - { sText_EmptyString, -3 }, + { sText_EmptyString, LIST_HEADER }, { sText_EmptyString, 0 }, { sText_EmptyString, 1 }, { sText_EmptyString, 2 }, @@ -959,9 +959,9 @@ static const struct ListMenuTemplate sTradeBoardListMenuTemplate = { .cursorShadowPal = 13, .lettersSpacing = 0, .itemVerticalPadding = 0, - .scrollMultiple = 0, - .fontId = 1, - .cursorKind = 0 + .scrollMultiple = LIST_NO_MULTIPLE_SCROLL, + .fontId = FONT_NORMAL, + .cursorKind = CURSOR_BLACK_ARROW }; // Unused @@ -1011,9 +1011,9 @@ static const struct ListMenuTemplate sEmptyListMenuTemplate = { .cursorShadowPal = 3, .lettersSpacing = 0, .itemVerticalPadding = 0, - .scrollMultiple = 1, - .fontId = 1, - .cursorKind = 0 + .scrollMultiple = LIST_MULTIPLE_SCROLL_DPAD, + .fontId = FONT_NORMAL, + .cursorKind = CURSOR_BLACK_ARROW }; static const struct RfuPlayerData sUnionRoomPlayer_DummyRfu = {0}; diff --git a/src/daycare.c b/src/daycare.c index 18bc45eb0..a8bdfa0ed 100644 --- a/src/daycare.c +++ b/src/daycare.c @@ -80,7 +80,7 @@ static const struct ListMenuTemplate sDaycareListMenuLevelTemplate = .itemVerticalPadding = 0, .scrollMultiple = LIST_NO_MULTIPLE_SCROLL, .fontId = FONT_NORMAL, - .cursorKind = 0 + .cursorKind = CURSOR_BLACK_ARROW }; static const u8 *const sCompatibilityMessages[] = @@ -886,7 +886,7 @@ void CreateEgg(struct Pokemon *mon, u16 species, bool8 setHotSpringsLocation) language = LANGUAGE_JAPANESE; SetMonData(mon, MON_DATA_POKEBALL, &ball); SetMonData(mon, MON_DATA_NICKNAME, sJapaneseEggNickname); - SetMonData(mon, MON_DATA_FRIENDSHIP, &gBaseStats[species].eggCycles); + SetMonData(mon, MON_DATA_FRIENDSHIP, &gSpeciesInfo[species].eggCycles); SetMonData(mon, MON_DATA_MET_LEVEL, &metLevel); SetMonData(mon, MON_DATA_LANGUAGE, &language); if (setHotSpringsLocation) @@ -913,7 +913,7 @@ static void SetInitialEggData(struct Pokemon *mon, u16 species, struct DayCare * language = LANGUAGE_JAPANESE; SetMonData(mon, MON_DATA_POKEBALL, &ball); SetMonData(mon, MON_DATA_NICKNAME, sJapaneseEggNickname); - SetMonData(mon, MON_DATA_FRIENDSHIP, &gBaseStats[species].eggCycles); + SetMonData(mon, MON_DATA_FRIENDSHIP, &gSpeciesInfo[species].eggCycles); SetMonData(mon, MON_DATA_MET_LEVEL, &metLevel); SetMonData(mon, MON_DATA_LANGUAGE, &language); } @@ -1075,8 +1075,8 @@ static u8 GetDaycareCompatibilityScore(struct DayCare *daycare) trainerIds[i] = GetBoxMonData(&daycare->mons[i].mon, MON_DATA_OT_ID); personality = GetBoxMonData(&daycare->mons[i].mon, MON_DATA_PERSONALITY); genders[i] = GetGenderFromSpeciesAndPersonality(species[i], personality); - eggGroups[i][0] = gBaseStats[species[i]].eggGroup1; - eggGroups[i][1] = gBaseStats[species[i]].eggGroup2; + eggGroups[i][0] = gSpeciesInfo[species[i]].eggGroup1; + eggGroups[i][1] = gSpeciesInfo[species[i]].eggGroup2; } // check unbreedable egg group diff --git a/src/debug.c b/src/debug.c index dd0aab732..90081eb61 100644 --- a/src/debug.c +++ b/src/debug.c @@ -58,7 +58,7 @@ #include "constants/species.h" #include "constants/weather.h" -#if DEBUG_SYSTEM_ENABLE == TRUE +#if DEBUG_OVERWORLD_MENU == TRUE // ******************************* // Enums enum { // Main @@ -2178,6 +2178,8 @@ static void DebugAction_Give_Pokemon_SelectLevel(u8 taskId) { PlaySE(MUS_LEVEL_UP); ScriptGiveMon(sDebugMonData->mon_speciesId, gTasks[taskId].data[3], ITEM_NONE, 0,0,0); + //Set flag for user convenience + FlagSet(FLAG_SYS_POKEMON_GET); Free(sDebugMonData); //Frees EWRAM of MonData Struct DebugAction_DestroyExtraWindow(taskId); } @@ -2732,6 +2734,9 @@ static void DebugAction_Give_Pokemon_ComplexCreateMon(u8 taskId) //https://githu break; } + //Set flag for user convenience + FlagSet(FLAG_SYS_POKEMON_GET); + Free(sDebugMonData); //Frees EWRAM of MonData Struct DebugAction_DestroyExtraWindow(taskId); //return sentToPc; } @@ -3515,4 +3520,4 @@ SOUND_LIST_SE }; #undef X -#endif //DEBUG_SYSTEM_ENABLE == TRUE +#endif //DEBUG_OVERWORLD_MENU == TRUE diff --git a/src/decoration.c b/src/decoration.c index cd3e185da..8ec80415b 100644 --- a/src/decoration.c +++ b/src/decoration.c @@ -314,8 +314,9 @@ static const struct ListMenuTemplate sDecorationItemsListMenuTemplate = .cursorShadowPal = 3, .lettersSpacing = FALSE, .itemVerticalPadding = 0, - .scrollMultiple = FALSE, - .fontId = FONT_NARROW + .scrollMultiple = LIST_NO_MULTIPLE_SCROLL, + .fontId = FONT_NARROW, + .cursorKind = CURSOR_BLACK_ARROW, }; #include "data/decoration/icon.h" @@ -890,7 +891,7 @@ static void PrintDecorationItemMenuItems(u8 taskId) StringCopy(sDecorationItemsMenu->names[i], gText_Cancel); sDecorationItemsMenu->items[i].name = sDecorationItemsMenu->names[i]; - sDecorationItemsMenu->items[i].id = -2; + sDecorationItemsMenu->items[i].id = LIST_CANCEL; gMultiuseListMenuTemplate = sDecorationItemsListMenuTemplate; gMultiuseListMenuTemplate.windowId = sDecorMenuWindowIds[WINDOW_DECORATION_CATEGORIES]; gMultiuseListMenuTemplate.totalItems = sDecorationItemsMenu->numMenuItems; @@ -1976,7 +1977,7 @@ static void SetDecorSelectionMetatiles(struct PlaceDecorationGraphicsDataBuffer shape = data->decoration->shape; for (i = 0; i < sDecorTilemaps[shape].size; i++) { - data->tiles[sDecorTilemaps[shape].tiles[i]] = GetMetatile(data->decoration->tiles[sDecorTilemaps[shape].y[i]] * 8 + sDecorTilemaps[shape].x[i]); + data->tiles[sDecorTilemaps[shape].tiles[i]] = GetMetatile(data->decoration->tiles[sDecorTilemaps[shape].y[i]] * NUM_TILES_PER_METATILE + sDecorTilemaps[shape].x[i]); } } @@ -2036,7 +2037,7 @@ static u8 gpu_pal_decompress_alloc_tag_and_upload(struct PlaceDecorationGraphics SetDecorSelectionMetatiles(data); SetDecorSelectionBoxOamAttributes(data->decoration->shape); SetDecorSelectionBoxTiles(data); - CopyPalette(data->palette, ((u16 *)gTilesetPointer_SecretBaseRedCave->metatiles)[(data->decoration->tiles[0] * 8) + 7] >> 12); + CopyPalette(data->palette, ((u16 *)gTilesetPointer_SecretBaseRedCave->metatiles)[(data->decoration->tiles[0] * NUM_TILES_PER_METATILE) + 7] >> 12); LoadSpritePalette(&sSpritePal_PlaceDecoration); return CreateSprite(&sDecorationSelectorSpriteTemplate, 0, 0, 0); } @@ -2092,7 +2093,7 @@ static u8 AddDecorationIconObjectFromObjectEvent(u16 tilesTag, u16 paletteTag, u SetDecorSelectionMetatiles(&sPlaceDecorationGraphicsDataBuffer); SetDecorSelectionBoxOamAttributes(sPlaceDecorationGraphicsDataBuffer.decoration->shape); SetDecorSelectionBoxTiles(&sPlaceDecorationGraphicsDataBuffer); - CopyPalette(sPlaceDecorationGraphicsDataBuffer.palette, ((u16 *)gTilesetPointer_SecretBaseRedCave->metatiles)[(sPlaceDecorationGraphicsDataBuffer.decoration->tiles[0] * 8) + 7] >> 12); + CopyPalette(sPlaceDecorationGraphicsDataBuffer.palette, ((u16 *)gTilesetPointer_SecretBaseRedCave->metatiles)[(sPlaceDecorationGraphicsDataBuffer.decoration->tiles[0] * NUM_TILES_PER_METATILE) + 7] >> 12); sheet.data = sPlaceDecorationGraphicsDataBuffer.image; sheet.size = sDecorShapeSizes[sPlaceDecorationGraphicsDataBuffer.decoration->shape] * TILE_SIZE_4BPP; sheet.tag = tilesTag; diff --git a/src/event_object_movement.c b/src/event_object_movement.c index dde4f06a5..a4039253c 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -169,7 +169,20 @@ static bool8 AreElevationsCompatible(u8, u8); static const struct SpriteFrameImage sPicTable_PechaBerryTree[]; -const u8 gReflectionEffectPaletteMap[] = {1, 1, 6, 7, 8, 9, 6, 7, 8, 9, 11, 11, 0, 0, 0, 0}; +const u8 gReflectionEffectPaletteMap[16] = { + [PALSLOT_PLAYER] = PALSLOT_PLAYER_REFLECTION, + [PALSLOT_PLAYER_REFLECTION] = PALSLOT_PLAYER_REFLECTION, + [PALSLOT_NPC_1] = PALSLOT_NPC_1_REFLECTION, + [PALSLOT_NPC_2] = PALSLOT_NPC_2_REFLECTION, + [PALSLOT_NPC_3] = PALSLOT_NPC_3_REFLECTION, + [PALSLOT_NPC_4] = PALSLOT_NPC_4_REFLECTION, + [PALSLOT_NPC_1_REFLECTION] = PALSLOT_NPC_1_REFLECTION, + [PALSLOT_NPC_2_REFLECTION] = PALSLOT_NPC_2_REFLECTION, + [PALSLOT_NPC_3_REFLECTION] = PALSLOT_NPC_3_REFLECTION, + [PALSLOT_NPC_4_REFLECTION] = PALSLOT_NPC_4_REFLECTION, + [PALSLOT_NPC_SPECIAL] = PALSLOT_NPC_SPECIAL_REFLECTION, + [PALSLOT_NPC_SPECIAL_REFLECTION] = PALSLOT_NPC_SPECIAL_REFLECTION +}; static const struct SpriteTemplate sCameraSpriteTemplate = { .tileTag = 0, @@ -611,55 +624,55 @@ static const struct PairedPalettes sSpecialObjectReflectionPaletteSets[] = { }; static const u16 sObjectPaletteTags0[] = { - OBJ_EVENT_PAL_TAG_BRENDAN, - OBJ_EVENT_PAL_TAG_BRENDAN_REFLECTION, - OBJ_EVENT_PAL_TAG_NPC_1, - OBJ_EVENT_PAL_TAG_NPC_2, - OBJ_EVENT_PAL_TAG_NPC_3, - OBJ_EVENT_PAL_TAG_NPC_4, - OBJ_EVENT_PAL_TAG_NPC_1_REFLECTION, - OBJ_EVENT_PAL_TAG_NPC_2_REFLECTION, - OBJ_EVENT_PAL_TAG_NPC_3_REFLECTION, - OBJ_EVENT_PAL_TAG_NPC_4_REFLECTION, + [PALSLOT_PLAYER] = OBJ_EVENT_PAL_TAG_BRENDAN, + [PALSLOT_PLAYER_REFLECTION] = OBJ_EVENT_PAL_TAG_BRENDAN_REFLECTION, + [PALSLOT_NPC_1] = OBJ_EVENT_PAL_TAG_NPC_1, + [PALSLOT_NPC_2] = OBJ_EVENT_PAL_TAG_NPC_2, + [PALSLOT_NPC_3] = OBJ_EVENT_PAL_TAG_NPC_3, + [PALSLOT_NPC_4] = OBJ_EVENT_PAL_TAG_NPC_4, + [PALSLOT_NPC_1_REFLECTION] = OBJ_EVENT_PAL_TAG_NPC_1_REFLECTION, + [PALSLOT_NPC_2_REFLECTION] = OBJ_EVENT_PAL_TAG_NPC_2_REFLECTION, + [PALSLOT_NPC_3_REFLECTION] = OBJ_EVENT_PAL_TAG_NPC_3_REFLECTION, + [PALSLOT_NPC_4_REFLECTION] = OBJ_EVENT_PAL_TAG_NPC_4_REFLECTION, }; static const u16 sObjectPaletteTags1[] = { - OBJ_EVENT_PAL_TAG_BRENDAN, - OBJ_EVENT_PAL_TAG_BRENDAN_REFLECTION, - OBJ_EVENT_PAL_TAG_NPC_1, - OBJ_EVENT_PAL_TAG_NPC_2, - OBJ_EVENT_PAL_TAG_NPC_3, - OBJ_EVENT_PAL_TAG_NPC_4, - OBJ_EVENT_PAL_TAG_NPC_1_REFLECTION, - OBJ_EVENT_PAL_TAG_NPC_2_REFLECTION, - OBJ_EVENT_PAL_TAG_NPC_3_REFLECTION, - OBJ_EVENT_PAL_TAG_NPC_4_REFLECTION, + [PALSLOT_PLAYER] = OBJ_EVENT_PAL_TAG_BRENDAN, + [PALSLOT_PLAYER_REFLECTION] = OBJ_EVENT_PAL_TAG_BRENDAN_REFLECTION, + [PALSLOT_NPC_1] = OBJ_EVENT_PAL_TAG_NPC_1, + [PALSLOT_NPC_2] = OBJ_EVENT_PAL_TAG_NPC_2, + [PALSLOT_NPC_3] = OBJ_EVENT_PAL_TAG_NPC_3, + [PALSLOT_NPC_4] = OBJ_EVENT_PAL_TAG_NPC_4, + [PALSLOT_NPC_1_REFLECTION] = OBJ_EVENT_PAL_TAG_NPC_1_REFLECTION, + [PALSLOT_NPC_2_REFLECTION] = OBJ_EVENT_PAL_TAG_NPC_2_REFLECTION, + [PALSLOT_NPC_3_REFLECTION] = OBJ_EVENT_PAL_TAG_NPC_3_REFLECTION, + [PALSLOT_NPC_4_REFLECTION] = OBJ_EVENT_PAL_TAG_NPC_4_REFLECTION, }; static const u16 sObjectPaletteTags2[] = { - OBJ_EVENT_PAL_TAG_BRENDAN, - OBJ_EVENT_PAL_TAG_BRENDAN_REFLECTION, - OBJ_EVENT_PAL_TAG_NPC_1, - OBJ_EVENT_PAL_TAG_NPC_2, - OBJ_EVENT_PAL_TAG_NPC_3, - OBJ_EVENT_PAL_TAG_NPC_4, - OBJ_EVENT_PAL_TAG_NPC_1_REFLECTION, - OBJ_EVENT_PAL_TAG_NPC_2_REFLECTION, - OBJ_EVENT_PAL_TAG_NPC_3_REFLECTION, - OBJ_EVENT_PAL_TAG_NPC_4_REFLECTION, + [PALSLOT_PLAYER] = OBJ_EVENT_PAL_TAG_BRENDAN, + [PALSLOT_PLAYER_REFLECTION] = OBJ_EVENT_PAL_TAG_BRENDAN_REFLECTION, + [PALSLOT_NPC_1] = OBJ_EVENT_PAL_TAG_NPC_1, + [PALSLOT_NPC_2] = OBJ_EVENT_PAL_TAG_NPC_2, + [PALSLOT_NPC_3] = OBJ_EVENT_PAL_TAG_NPC_3, + [PALSLOT_NPC_4] = OBJ_EVENT_PAL_TAG_NPC_4, + [PALSLOT_NPC_1_REFLECTION] = OBJ_EVENT_PAL_TAG_NPC_1_REFLECTION, + [PALSLOT_NPC_2_REFLECTION] = OBJ_EVENT_PAL_TAG_NPC_2_REFLECTION, + [PALSLOT_NPC_3_REFLECTION] = OBJ_EVENT_PAL_TAG_NPC_3_REFLECTION, + [PALSLOT_NPC_4_REFLECTION] = OBJ_EVENT_PAL_TAG_NPC_4_REFLECTION, }; static const u16 sObjectPaletteTags3[] = { - OBJ_EVENT_PAL_TAG_BRENDAN, - OBJ_EVENT_PAL_TAG_BRENDAN_REFLECTION, - OBJ_EVENT_PAL_TAG_NPC_1, - OBJ_EVENT_PAL_TAG_NPC_2, - OBJ_EVENT_PAL_TAG_NPC_3, - OBJ_EVENT_PAL_TAG_NPC_4, - OBJ_EVENT_PAL_TAG_NPC_1_REFLECTION, - OBJ_EVENT_PAL_TAG_NPC_2_REFLECTION, - OBJ_EVENT_PAL_TAG_NPC_3_REFLECTION, - OBJ_EVENT_PAL_TAG_NPC_4_REFLECTION, + [PALSLOT_PLAYER] = OBJ_EVENT_PAL_TAG_BRENDAN, + [PALSLOT_PLAYER_REFLECTION] = OBJ_EVENT_PAL_TAG_BRENDAN_REFLECTION, + [PALSLOT_NPC_1] = OBJ_EVENT_PAL_TAG_NPC_1, + [PALSLOT_NPC_2] = OBJ_EVENT_PAL_TAG_NPC_2, + [PALSLOT_NPC_3] = OBJ_EVENT_PAL_TAG_NPC_3, + [PALSLOT_NPC_4] = OBJ_EVENT_PAL_TAG_NPC_4, + [PALSLOT_NPC_1_REFLECTION] = OBJ_EVENT_PAL_TAG_NPC_1_REFLECTION, + [PALSLOT_NPC_2_REFLECTION] = OBJ_EVENT_PAL_TAG_NPC_2_REFLECTION, + [PALSLOT_NPC_3_REFLECTION] = OBJ_EVENT_PAL_TAG_NPC_3_REFLECTION, + [PALSLOT_NPC_4_REFLECTION] = OBJ_EVENT_PAL_TAG_NPC_4_REFLECTION, }; static const u16 *const sObjectPaletteTagSets[] = { @@ -1397,13 +1410,13 @@ static u8 TrySetupObjectEventSprite(struct ObjectEventTemplate *objectEventTempl objectEvent = &gObjectEvents[objectEventId]; graphicsInfo = GetObjectEventGraphicsInfo(objectEvent->graphicsId); paletteSlot = graphicsInfo->paletteSlot; - if (paletteSlot == 0) + if (paletteSlot == PALSLOT_PLAYER) { - LoadPlayerObjectReflectionPalette(graphicsInfo->paletteTag, 0); + LoadPlayerObjectReflectionPalette(graphicsInfo->paletteTag, paletteSlot); } - else if (paletteSlot == 10) + else if (paletteSlot == PALSLOT_NPC_SPECIAL) { - LoadSpecialObjectReflectionPalette(graphicsInfo->paletteTag, 10); + LoadSpecialObjectReflectionPalette(graphicsInfo->paletteTag, paletteSlot); } else if (paletteSlot >= 16) { @@ -1591,7 +1604,7 @@ u8 CreateVirtualObject(u8 graphicsId, u8 virtualObjId, s16 x, s16 y, u8 elevatio sprite->coordOffsetEnabled = TRUE; sprite->sVirtualObjId = virtualObjId; sprite->sVirtualObjElev = elevation; - if (graphicsInfo->paletteSlot == 10) + if (graphicsInfo->paletteSlot == PALSLOT_NPC_SPECIAL) LoadSpecialObjectReflectionPalette(graphicsInfo->paletteTag, graphicsInfo->paletteSlot); else if (graphicsInfo->paletteSlot >= 16) _PatchObjectPalette(graphicsInfo->paletteTag, graphicsInfo->paletteSlot | 0xf0); @@ -1717,11 +1730,11 @@ static void SpawnObjectEventOnReturnToField(u8 objectEventId, s16 x, s16 y) *(u16 *)&spriteTemplate.paletteTag = TAG_NONE; paletteSlot = graphicsInfo->paletteSlot; - if (paletteSlot == 0) + if (paletteSlot == PALSLOT_PLAYER) { LoadPlayerObjectReflectionPalette(graphicsInfo->paletteTag, graphicsInfo->paletteSlot); } - else if (paletteSlot == 10) + else if (paletteSlot == PALSLOT_NPC_SPECIAL) { LoadSpecialObjectReflectionPalette(graphicsInfo->paletteTag, graphicsInfo->paletteSlot); } @@ -1792,11 +1805,11 @@ void ObjectEventSetGraphicsId(struct ObjectEvent *objectEvent, u8 graphicsId) graphicsInfo = GetObjectEventGraphicsInfo(graphicsId); sprite = &gSprites[objectEvent->spriteId]; paletteSlot = graphicsInfo->paletteSlot; - if (paletteSlot == 0) + if (paletteSlot == PALSLOT_PLAYER) { PatchObjectPalette(graphicsInfo->paletteTag, graphicsInfo->paletteSlot); } - else if (paletteSlot == 10) + else if (paletteSlot == PALSLOT_NPC_SPECIAL) { LoadSpecialObjectReflectionPalette(graphicsInfo->paletteTag, graphicsInfo->paletteSlot); } @@ -1974,7 +1987,7 @@ void SetObjectEventSpritePosByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup, void FreeAndReserveObjectSpritePalettes(void) { FreeAllSpritePalettes(); - gReservedSpritePaletteCount = 12; + gReservedSpritePaletteCount = OBJ_PALSLOT_COUNT; } static void LoadObjectEventPalette(u16 paletteTag) @@ -2500,19 +2513,19 @@ void OverrideSecretBaseDecorationSpriteScript(u8 localId, u8 mapNum, u8 mapGroup } } -void InitObjectEventPalettes(u8 palSlot) +void InitObjectEventPalettes(u8 reflectionType) { FreeAndReserveObjectSpritePalettes(); sCurrentSpecialObjectPaletteTag = OBJ_EVENT_PAL_TAG_NONE; - sCurrentReflectionType = palSlot; - if (palSlot == 1) + sCurrentReflectionType = reflectionType; + if (reflectionType == 1) { - PatchObjectPaletteRange(sObjectPaletteTagSets[sCurrentReflectionType], 0, 6); + PatchObjectPaletteRange(sObjectPaletteTagSets[sCurrentReflectionType], PALSLOT_PLAYER, PALSLOT_NPC_4 + 1); gReservedSpritePaletteCount = 8; } else { - PatchObjectPaletteRange(sObjectPaletteTagSets[sCurrentReflectionType], 0, 10); + PatchObjectPaletteRange(sObjectPaletteTagSets[sCurrentReflectionType], PALSLOT_PLAYER, PALSLOT_NPC_4_REFLECTION + 1); } } @@ -2520,7 +2533,7 @@ u16 GetObjectPaletteTag(u8 palSlot) { u8 i; - if (palSlot < 10) + if (palSlot < PALSLOT_NPC_SPECIAL) return sObjectPaletteTagSets[sCurrentReflectionType][palSlot]; for (i = 0; sSpecialObjectReflectionPaletteSets[i].tag != OBJ_EVENT_PAL_TAG_NONE; i++) @@ -4630,7 +4643,7 @@ u8 GetCollisionAtCoords(struct ObjectEvent *objectEvent, s16 x, s16 y, u32 dir) { u8 direction = dir; -#if DEBUG_SYSTEM_ENABLE == TRUE +#if DEBUG_FLAG_NO_COLLISION != 0 if (FlagGet(DEBUG_FLAG_NO_COLLISION)) return COLLISION_NONE; #endif diff --git a/src/field_camera.c b/src/field_camera.c index 9b129e6b2..3f7e29208 100644 --- a/src/field_camera.c +++ b/src/field_camera.c @@ -30,7 +30,7 @@ static void RedrawMapSliceWest(struct FieldCameraOffset *, const struct MapLayou static s32 MapPosToBgTilemapOffset(struct FieldCameraOffset *, s32, s32); static void DrawWholeMapViewInternal(int, int, const struct MapLayout *); static void DrawMetatileAt(const struct MapLayout *, u16, int, int); -static void DrawMetatile(s32, u16 *, u16); +static void DrawMetatile(s32, const u16 *, u16); static void CameraPanningCB_PanAhead(void); static struct FieldCameraOffset sFieldCameraOffset; @@ -226,7 +226,7 @@ void DrawDoorMetatileAt(int x, int y, u16 *tiles) static void DrawMetatileAt(const struct MapLayout *mapLayout, u16 offset, int x, int y) { u16 metatileId = MapGridGetMetatileIdAt(x, y); - u16 *metatiles; + const u16 *metatiles; if (metatileId > NUM_METATILES_TOTAL) metatileId = 0; @@ -237,10 +237,10 @@ static void DrawMetatileAt(const struct MapLayout *mapLayout, u16 offset, int x, metatiles = mapLayout->secondaryTileset->metatiles; metatileId -= NUM_METATILES_IN_PRIMARY; } - DrawMetatile(MapGridGetMetatileLayerTypeAt(x, y), metatiles + metatileId * 8, offset); + DrawMetatile(MapGridGetMetatileLayerTypeAt(x, y), metatiles + metatileId * NUM_TILES_PER_METATILE, offset); } -static void DrawMetatile(s32 metatileLayerType, u16 *tiles, u16 offset) +static void DrawMetatile(s32 metatileLayerType, const u16 *tiles, u16 offset) { switch (metatileLayerType) { diff --git a/src/field_control_avatar.c b/src/field_control_avatar.c index c325b63e5..96e9173c9 100644 --- a/src/field_control_avatar.c +++ b/src/field_control_avatar.c @@ -37,7 +37,7 @@ #include "constants/trainer_hill.h" static EWRAM_DATA u8 sWildEncounterImmunitySteps = 0; -static EWRAM_DATA u16 sPreviousPlayerMetatileBehavior = 0; +static EWRAM_DATA u16 sPrevMetatileBehavior = 0; u8 gSelectedObjectEvent; @@ -131,11 +131,11 @@ void FieldGetPlayerInput(struct FieldInput *input, u16 newKeys, u16 heldKeys) else if (heldKeys & DPAD_RIGHT) input->dpadDirection = DIR_EAST; -#if DEBUG_SYSTEM_ENABLE == TRUE && DEBUG_SYSTEM_IN_MENU == FALSE - if ((heldKeys & DEBUG_SYSTEM_HELD_KEYS) && input->DEBUG_SYSTEM_TRIGGER_EVENT) +#if DEBUG_OVERWORLD_MENU == TRUE && DEBUG_OVERWORLD_IN_MENU == FALSE + if ((heldKeys & DEBUG_OVERWORLD_HELD_KEYS) && input->DEBUG_OVERWORLD_TRIGGER_EVENT) { input->input_field_1_2 = TRUE; - input->DEBUG_SYSTEM_TRIGGER_EVENT = FALSE; + input->DEBUG_OVERWORLD_TRIGGER_EVENT = FALSE; } #endif } @@ -197,7 +197,7 @@ int ProcessPlayerFieldInput(struct FieldInput *input) if (input->pressedSelectButton && UseRegisteredKeyItemOnField() == TRUE) return TRUE; -#if DEBUG_SYSTEM_ENABLE == TRUE && DEBUG_SYSTEM_IN_MENU == FALSE +#if DEBUG_OVERWORLD_MENU == TRUE && DEBUG_OVERWORLD_IN_MENU == FALSE if (input->input_field_1_2) { PlaySE(SE_WIN_OPEN); @@ -693,18 +693,18 @@ static bool8 CheckStandardWildEncounter(u16 metatileBehavior) if (sWildEncounterImmunitySteps < 4) { sWildEncounterImmunitySteps++; - sPreviousPlayerMetatileBehavior = metatileBehavior; + sPrevMetatileBehavior = metatileBehavior; return FALSE; } - if (StandardWildEncounter(metatileBehavior, sPreviousPlayerMetatileBehavior) == TRUE) + if (StandardWildEncounter(metatileBehavior, sPrevMetatileBehavior) == TRUE) { sWildEncounterImmunitySteps = 0; - sPreviousPlayerMetatileBehavior = metatileBehavior; + sPrevMetatileBehavior = metatileBehavior; return TRUE; } - sPreviousPlayerMetatileBehavior = metatileBehavior; + sPrevMetatileBehavior = metatileBehavior; return FALSE; } @@ -837,7 +837,7 @@ static void SetupWarp(struct MapHeader *unused, s8 warpEventId, struct MapPositi warpEvent = &gMapHeader.events->warps[warpEventId]; } - if (warpEvent->mapNum == MAP_NUM(NONE)) + if (warpEvent->mapNum == MAP_NUM(DYNAMIC)) { SetWarpDestinationToDynamicWarp(warpEvent->warpId); } @@ -848,7 +848,7 @@ static void SetupWarp(struct MapHeader *unused, s8 warpEventId, struct MapPositi SetWarpDestinationToMapWarp(warpEvent->mapGroup, warpEvent->mapNum, warpEvent->warpId); UpdateEscapeWarp(position->x, position->y); mapHeader = Overworld_GetMapHeaderByGroupAndId(warpEvent->mapGroup, warpEvent->mapNum); - if (mapHeader->events->warps[warpEvent->warpId].mapNum == MAP_NUM(NONE)) + if (mapHeader->events->warps[warpEvent->warpId].mapNum == MAP_NUM(DYNAMIC)) SetDynamicWarp(mapHeader->events->warps[warpEventId].warpId, gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, warpEventId); } } @@ -906,7 +906,7 @@ static u8 *TryRunCoordEventScript(struct CoordEvent *coordEvent) DoCoordEventWeather(coordEvent->trigger); return NULL; } - if (coordEvent->trigger == 0) + if (coordEvent->trigger == TRIGGER_RUN_IMMEDIATELY) { RunScriptImmediately(coordEvent->script); return NULL; diff --git a/src/field_effect_helpers.c b/src/field_effect_helpers.c index 5b8123a71..9421aaf27 100755 --- a/src/field_effect_helpers.c +++ b/src/field_effect_helpers.c @@ -97,18 +97,12 @@ static void LoadObjectRegularReflectionPalette(struct ObjectEvent *objectEvent, graphicsInfo = GetObjectEventGraphicsInfo(objectEvent->graphicsId); if (graphicsInfo->reflectionPaletteTag != OBJ_EVENT_PAL_TAG_NONE) { - if (graphicsInfo->paletteSlot == 0) - { + if (graphicsInfo->paletteSlot == PALSLOT_PLAYER) LoadPlayerObjectReflectionPalette(graphicsInfo->paletteTag, paletteIndex); - } - else if (graphicsInfo->paletteSlot == 10) - { + else if (graphicsInfo->paletteSlot == PALSLOT_NPC_SPECIAL) LoadSpecialObjectReflectionPalette(graphicsInfo->paletteTag, paletteIndex); - } else - { PatchObjectPalette(GetObjectPaletteTag(paletteIndex), paletteIndex); - } UpdateSpritePaletteWithWeather(paletteIndex); } } diff --git a/src/field_specials.c b/src/field_specials.c index 4a3721d10..b73a41821 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -1202,7 +1202,7 @@ void IsGrassTypeInParty(void) if (GetMonData(pokemon, MON_DATA_SANITY_HAS_SPECIES) && !GetMonData(pokemon, MON_DATA_IS_EGG)) { species = GetMonData(pokemon, MON_DATA_SPECIES); - if (gBaseStats[species].type1 == TYPE_GRASS || gBaseStats[species].type2 == TYPE_GRASS) + if (gSpeciesInfo[species].type1 == TYPE_GRASS || gSpeciesInfo[species].type2 == TYPE_GRASS) { gSpecialVar_Result = TRUE; return; @@ -2542,9 +2542,9 @@ static void InitScrollableMultichoice(void) gScrollableMultichoice_ListMenuTemplate.cursorShadowPal = 3; gScrollableMultichoice_ListMenuTemplate.lettersSpacing = 0; gScrollableMultichoice_ListMenuTemplate.itemVerticalPadding = 0; - gScrollableMultichoice_ListMenuTemplate.scrollMultiple = 0; + gScrollableMultichoice_ListMenuTemplate.scrollMultiple = LIST_NO_MULTIPLE_SCROLL; gScrollableMultichoice_ListMenuTemplate.fontId = FONT_NORMAL; - gScrollableMultichoice_ListMenuTemplate.cursorKind = 0; + gScrollableMultichoice_ListMenuTemplate.cursorKind = CURSOR_BLACK_ARROW; } static void ScrollableMultichoice_MoveCursor(s32 itemIndex, bool8 onInit, struct ListMenu *list) diff --git a/src/field_weather.c b/src/field_weather.c index f7a7f8129..891dbb1d1 100644 --- a/src/field_weather.c +++ b/src/field_weather.c @@ -21,9 +21,9 @@ enum { - GAMMA_NONE, - GAMMA_NORMAL, - GAMMA_ALT, + COLOR_MAP_NONE, + COLOR_MAP_DARK_CONTRAST, + COLOR_MAP_CONTRAST, }; struct RGBColor @@ -33,11 +33,6 @@ struct RGBColor u16 b:5; }; -struct WeatherPaletteData -{ - u16 gammaShiftColors[8][0x1000]; // 0x1000 is the number of bytes that make up all palettes. -}; - struct WeatherCallbacks { void (*initVars)(void); @@ -48,11 +43,11 @@ struct WeatherCallbacks // This file's functions. static bool8 LightenSpritePaletteInFog(u8); -static void BuildGammaShiftTables(void); -static void UpdateWeatherGammaShift(void); -static void ApplyGammaShift(u8 startPalIndex, u8 numPalettes, s8 gammaIndex); -static void ApplyGammaShiftWithBlend(u8 startPalIndex, u8 numPalettes, s8 gammaIndex, u8 blendCoeff, u16 blendColor); -static void ApplyDroughtGammaShiftWithBlend(s8 gammaIndex, u8 blendCoeff, u16 blendColor); +static void BuildColorMaps(void); +static void UpdateWeatherColorMap(void); +static void ApplyColorMap(u8 startPalIndex, u8 numPalettes, s8 colorMapIndex); +static void ApplyColorMapWithBlend(u8 startPalIndex, u8 numPalettes, s8 colorMapIndex, u8 blendCoeff, u16 blendColor); +static void ApplyDroughtColorMapWithBlend(s8 colorMapIndex, u8 blendCoeff, u16 blendColor); static void ApplyFogBlend(u8 blendCoeff, u16 blendColor); static bool8 FadeInScreen_RainShowShade(void); static bool8 FadeInScreen_Drought(void); @@ -66,9 +61,9 @@ static void None_Main(void); static u8 None_Finish(void); EWRAM_DATA struct Weather gWeather = {0}; -EWRAM_DATA static u8 sFieldEffectPaletteGammaTypes[32] = {0}; +EWRAM_DATA static u8 sFieldEffectPaletteColorMapTypes[32] = {0}; -static const u8 *sPaletteGammaTypes; +static const u8 *sPaletteColorMapTypes; // The drought weather effect uses a precalculated color lookup table. Presumably this // is because the underlying color shift calculation is slow. @@ -108,50 +103,50 @@ static const struct WeatherCallbacks sWeatherFuncs[] = void (*const gWeatherPalStateFuncs[])(void) = { - [WEATHER_PAL_STATE_CHANGING_WEATHER] = UpdateWeatherGammaShift, + [WEATHER_PAL_STATE_CHANGING_WEATHER] = UpdateWeatherColorMap, [WEATHER_PAL_STATE_SCREEN_FADING_IN] = FadeInScreenWithWeather, [WEATHER_PAL_STATE_SCREEN_FADING_OUT] = DoNothing, [WEATHER_PAL_STATE_IDLE] = DoNothing, }; -// This table specifies which of the gamma shift tables should be +// This table specifies which of the color maps should be // applied to each of the background and sprite palettes. -static const u8 sBasePaletteGammaTypes[32] = +static const u8 sBasePaletteColorMapTypes[32] = { // background palettes - GAMMA_NORMAL, - GAMMA_NORMAL, - GAMMA_NORMAL, - GAMMA_NORMAL, - GAMMA_NORMAL, - GAMMA_NORMAL, - GAMMA_NORMAL, - GAMMA_NORMAL, - GAMMA_NORMAL, - GAMMA_NORMAL, - GAMMA_NORMAL, - GAMMA_NORMAL, - GAMMA_NORMAL, - GAMMA_NORMAL, - GAMMA_NONE, - GAMMA_NONE, + COLOR_MAP_DARK_CONTRAST, + COLOR_MAP_DARK_CONTRAST, + COLOR_MAP_DARK_CONTRAST, + COLOR_MAP_DARK_CONTRAST, + COLOR_MAP_DARK_CONTRAST, + COLOR_MAP_DARK_CONTRAST, + COLOR_MAP_DARK_CONTRAST, + COLOR_MAP_DARK_CONTRAST, + COLOR_MAP_DARK_CONTRAST, + COLOR_MAP_DARK_CONTRAST, + COLOR_MAP_DARK_CONTRAST, + COLOR_MAP_DARK_CONTRAST, + COLOR_MAP_DARK_CONTRAST, + COLOR_MAP_DARK_CONTRAST, + COLOR_MAP_NONE, + COLOR_MAP_NONE, // sprite palettes - GAMMA_ALT, - GAMMA_NORMAL, - GAMMA_ALT, - GAMMA_ALT, - GAMMA_ALT, - GAMMA_ALT, - GAMMA_NORMAL, - GAMMA_NORMAL, - GAMMA_NORMAL, - GAMMA_NORMAL, - GAMMA_ALT, - GAMMA_NORMAL, - GAMMA_NORMAL, - GAMMA_NORMAL, - GAMMA_NORMAL, - GAMMA_NORMAL, + COLOR_MAP_CONTRAST, + COLOR_MAP_DARK_CONTRAST, + COLOR_MAP_CONTRAST, + COLOR_MAP_CONTRAST, + COLOR_MAP_CONTRAST, + COLOR_MAP_CONTRAST, + COLOR_MAP_DARK_CONTRAST, + COLOR_MAP_DARK_CONTRAST, + COLOR_MAP_DARK_CONTRAST, + COLOR_MAP_DARK_CONTRAST, + COLOR_MAP_CONTRAST, + COLOR_MAP_DARK_CONTRAST, + COLOR_MAP_DARK_CONTRAST, + COLOR_MAP_DARK_CONTRAST, + COLOR_MAP_DARK_CONTRAST, + COLOR_MAP_DARK_CONTRAST, }; const u16 gFogPalette[] = INCBIN_U16("graphics/weather/fog.gbapal"); @@ -160,10 +155,10 @@ void StartWeather(void) { if (!FuncIsActiveTask(Task_WeatherMain)) { - u8 index = AllocSpritePalette(TAG_WEATHER_START); + u8 index = AllocSpritePalette(PALTAG_WEATHER); CpuCopy32(gFogPalette, &gPlttBufferUnfaded[0x100 + index * 16], 32); - BuildGammaShiftTables(); - gWeatherPtr->altGammaSpritePalIndex = index; + BuildColorMaps(); + gWeatherPtr->contrastColorMapSpritePalIndex = index; gWeatherPtr->weatherPicSpritePalIndex = AllocSpritePalette(PALTAG_WEATHER_2); gWeatherPtr->rainSpriteCount = 0; gWeatherPtr->curRainSpriteIndex = 0; @@ -238,7 +233,7 @@ static void Task_WeatherMain(u8 taskId) { // Finished cleaning up previous weather. Now transition to next weather. sWeatherFuncs[gWeatherPtr->nextWeather].initVars(); - gWeatherPtr->gammaStepFrameCounter = 0; + gWeatherPtr->colorMapStepCounter = 0; gWeatherPtr->palProcessingState = WEATHER_PAL_STATE_CHANGING_WEATHER; gWeatherPtr->currWeather = gWeatherPtr->nextWeather; gWeatherPtr->weatherChangeComplete = TRUE; @@ -254,8 +249,8 @@ static void Task_WeatherMain(u8 taskId) static void None_Init(void) { - gWeatherPtr->gammaTargetIndex = 0; - gWeatherPtr->gammaStepDelay = 0; + gWeatherPtr->targetColorMapIndex = 0; + gWeatherPtr->colorMapStepDelay = 0; } static void None_Main(void) @@ -267,70 +262,82 @@ static u8 None_Finish(void) return 0; } -// Builds two tables that contain gamma shifts for palette colors. +// Builds two tables that contain color maps, used for directly transforming +// palette colors in weather effects. The colors maps are a spectrum of +// brightness + contrast mappings. By transitioning between the maps, weather +// effects like lightning are created. // It's unclear why the two tables aren't declared as const arrays, since // this function always builds the same two tables. -static void BuildGammaShiftTables(void) +static void BuildColorMaps(void) { - u16 v0; - u8 (*gammaTable)[32]; - u16 v2; - u16 v4; - u16 v5; - u16 gammaIndex; - u16 v9; - u32 v10; - u16 v11; - s16 dunno; + u16 i; + u8 (*colorMaps)[32]; + u16 colorVal; + u16 curBrightness; + u16 brightnessDelta; + u16 colorMapIndex; + u16 baseBrightness; + u32 remainingBrightness; + s16 diff; - sPaletteGammaTypes = sBasePaletteGammaTypes; - for (v0 = 0; v0 <= 1; v0++) + sPaletteColorMapTypes = sBasePaletteColorMapTypes; + for (i = 0; i < 2; i++) { - if (v0 == 0) - gammaTable = gWeatherPtr->gammaShifts; + if (i == 0) + colorMaps = gWeatherPtr->darkenedContrastColorMaps; else - gammaTable = gWeatherPtr->altGammaShifts; + colorMaps = gWeatherPtr->contrastColorMaps; - for (v2 = 0; v2 < 32; v2++) + for (colorVal = 0; colorVal < 32; colorVal++) { - v4 = v2 << 8; - if (v0 == 0) - v5 = (v2 << 8) / 16; + curBrightness = colorVal << 8; + if (i == 0) + brightnessDelta = (colorVal << 8) / 16; else - v5 = 0; - for (gammaIndex = 0; gammaIndex <= 2; gammaIndex++) + brightnessDelta = 0; + + // First three color mappings are simple brightness modifiers which are + // progressively darker, according to brightnessDelta. + for (colorMapIndex = 0; colorMapIndex < 3; colorMapIndex++) { - v4 = (v4 - v5); - gammaTable[gammaIndex][v2] = v4 >> 8; + curBrightness -= brightnessDelta; + colorMaps[colorMapIndex][colorVal] = curBrightness >> 8; } - v9 = v4; - v10 = 0x1f00 - v4; - if ((0x1f00 - v4) < 0) + + baseBrightness = curBrightness; + remainingBrightness = 0x1f00 - curBrightness; + if ((0x1f00 - curBrightness) < 0) + remainingBrightness += 0xf; + + brightnessDelta = remainingBrightness / (NUM_WEATHER_COLOR_MAPS - 3); + if (colorVal < 12) { - v10 += 0xf; - } - v11 = v10 >> 4; - if (v2 < 12) - { - for (; gammaIndex < 19; gammaIndex++) + // For shadows (color values < 12), the remaining color mappings are + // brightness modifiers, which are increased at a significantly lower rate + // than the midtones and highlights (color values >= 12). This creates a + // high contrast effect, used in the thunderstorm weather. + for (; colorMapIndex < NUM_WEATHER_COLOR_MAPS; colorMapIndex++) { - v4 += v11; - dunno = v4 - v9; - if (dunno > 0) - v4 -= (dunno + ((u16)dunno >> 15)) >> 1; - gammaTable[gammaIndex][v2] = v4 >> 8; - if (gammaTable[gammaIndex][v2] > 0x1f) - gammaTable[gammaIndex][v2] = 0x1f; + curBrightness += brightnessDelta; + diff = curBrightness - baseBrightness; + if (diff > 0) + curBrightness -= diff / 2; + colorMaps[colorMapIndex][colorVal] = curBrightness >> 8; + if (colorMaps[colorMapIndex][colorVal] > 31) + colorMaps[colorMapIndex][colorVal] = 31; } } else { - for (; gammaIndex < 19; gammaIndex++) + // For midtones and highlights (color values >= 12), the remaining + // color mappings are simple brightness modifiers which are + // progressively brighter, hitting exactly 31 at the last mapping. + for (; colorMapIndex < NUM_WEATHER_COLOR_MAPS; colorMapIndex++) { - v4 += v11; - gammaTable[gammaIndex][v2] = v4 >> 8; - if (gammaTable[gammaIndex][v2] > 0x1f) - gammaTable[gammaIndex][v2] = 0x1f; + curBrightness += brightnessDelta; + colorMaps[colorMapIndex][colorVal] = curBrightness >> 8; + if (colorMaps[colorMapIndex][colorVal] > 31) + colorMaps[colorMapIndex][colorVal] = 31; } } } @@ -338,26 +345,26 @@ static void BuildGammaShiftTables(void) } // When the weather is changing, it gradually updates the palettes -// towards the desired gamma shift. -static void UpdateWeatherGammaShift(void) +// towards the desired color map. +static void UpdateWeatherColorMap(void) { if (gWeatherPtr->palProcessingState != WEATHER_PAL_STATE_SCREEN_FADING_OUT) { - if (gWeatherPtr->gammaIndex == gWeatherPtr->gammaTargetIndex) + if (gWeatherPtr->colorMapIndex == gWeatherPtr->targetColorMapIndex) { gWeatherPtr->palProcessingState = WEATHER_PAL_STATE_IDLE; } else { - if (++gWeatherPtr->gammaStepFrameCounter >= gWeatherPtr->gammaStepDelay) + if (++gWeatherPtr->colorMapStepCounter >= gWeatherPtr->colorMapStepDelay) { - gWeatherPtr->gammaStepFrameCounter = 0; - if (gWeatherPtr->gammaIndex < gWeatherPtr->gammaTargetIndex) - gWeatherPtr->gammaIndex++; + gWeatherPtr->colorMapStepCounter = 0; + if (gWeatherPtr->colorMapIndex < gWeatherPtr->targetColorMapIndex) + gWeatherPtr->colorMapIndex++; else - gWeatherPtr->gammaIndex--; + gWeatherPtr->colorMapIndex--; - ApplyGammaShift(0, 32, gWeatherPtr->gammaIndex); + ApplyColorMap(0, 32, gWeatherPtr->colorMapIndex); } } } @@ -377,21 +384,21 @@ static void FadeInScreenWithWeather(void) case WEATHER_SHADE: if (FadeInScreen_RainShowShade() == FALSE) { - gWeatherPtr->gammaIndex = 3; + gWeatherPtr->colorMapIndex = 3; gWeatherPtr->palProcessingState = WEATHER_PAL_STATE_IDLE; } break; case WEATHER_DROUGHT: if (FadeInScreen_Drought() == FALSE) { - gWeatherPtr->gammaIndex = -6; + gWeatherPtr->colorMapIndex = -6; gWeatherPtr->palProcessingState = WEATHER_PAL_STATE_IDLE; } break; case WEATHER_FOG_HORIZONTAL: if (FadeInScreen_FogHorizontal() == FALSE) { - gWeatherPtr->gammaIndex = 0; + gWeatherPtr->colorMapIndex = 0; gWeatherPtr->palProcessingState = WEATHER_PAL_STATE_IDLE; } break; @@ -402,7 +409,7 @@ static void FadeInScreenWithWeather(void) default: if (!gPaletteFade.active) { - gWeatherPtr->gammaIndex = gWeatherPtr->gammaTargetIndex; + gWeatherPtr->colorMapIndex = gWeatherPtr->targetColorMapIndex; gWeatherPtr->palProcessingState = WEATHER_PAL_STATE_IDLE; } break; @@ -416,12 +423,12 @@ static bool8 FadeInScreen_RainShowShade(void) if (++gWeatherPtr->fadeScreenCounter >= 16) { - ApplyGammaShift(0, 32, 3); + ApplyColorMap(0, 32, 3); gWeatherPtr->fadeScreenCounter = 16; return FALSE; } - ApplyGammaShiftWithBlend(0, 32, 3, 16 - gWeatherPtr->fadeScreenCounter, gWeatherPtr->fadeDestColor); + ApplyColorMapWithBlend(0, 32, 3, 16 - gWeatherPtr->fadeScreenCounter, gWeatherPtr->fadeDestColor); return TRUE; } @@ -432,12 +439,12 @@ static bool8 FadeInScreen_Drought(void) if (++gWeatherPtr->fadeScreenCounter >= 16) { - ApplyGammaShift(0, 32, -6); + ApplyColorMap(0, 32, -6); gWeatherPtr->fadeScreenCounter = 16; return FALSE; } - ApplyDroughtGammaShiftWithBlend(-6, 16 - gWeatherPtr->fadeScreenCounter, gWeatherPtr->fadeDestColor); + ApplyDroughtColorMapWithBlend(-6, 16 - gWeatherPtr->fadeScreenCounter, gWeatherPtr->fadeDestColor); return TRUE; } @@ -454,24 +461,24 @@ static bool8 FadeInScreen_FogHorizontal(void) static void DoNothing(void) { } -static void ApplyGammaShift(u8 startPalIndex, u8 numPalettes, s8 gammaIndex) +static void ApplyColorMap(u8 startPalIndex, u8 numPalettes, s8 colorMapIndex) { u16 curPalIndex; u16 palOffset; - u8 *gammaTable; + u8 *colorMap; u16 i; - if (gammaIndex > 0) + if (colorMapIndex > 0) { - gammaIndex--; + colorMapIndex--; palOffset = startPalIndex * 16; numPalettes += startPalIndex; curPalIndex = startPalIndex; - // Loop through the speficied palette range and apply necessary gamma shifts to the colors. + // Loop through the specified palette range and apply necessary color maps. while (curPalIndex < numPalettes) { - if (sPaletteGammaTypes[curPalIndex] == GAMMA_NONE) + if (sPaletteColorMapTypes[curPalIndex] == COLOR_MAP_NONE) { // No palette change. CpuFastCopy(gPlttBufferUnfaded + palOffset, gPlttBufferFaded + palOffset, 16 * sizeof(u16)); @@ -481,18 +488,18 @@ static void ApplyGammaShift(u8 startPalIndex, u8 numPalettes, s8 gammaIndex) { u8 r, g, b; - if (sPaletteGammaTypes[curPalIndex] == GAMMA_ALT || curPalIndex - 16 == gWeatherPtr->altGammaSpritePalIndex) - gammaTable = gWeatherPtr->altGammaShifts[gammaIndex]; + if (sPaletteColorMapTypes[curPalIndex] == COLOR_MAP_CONTRAST || curPalIndex - 16 == gWeatherPtr->contrastColorMapSpritePalIndex) + colorMap = gWeatherPtr->contrastColorMaps[colorMapIndex]; else - gammaTable = gWeatherPtr->gammaShifts[gammaIndex]; + colorMap = gWeatherPtr->darkenedContrastColorMaps[colorMapIndex]; for (i = 0; i < 16; i++) { - // Apply gamma shift to the original color. + // Apply color map to the original color. struct RGBColor baseColor = *(struct RGBColor *)&gPlttBufferUnfaded[palOffset]; - r = gammaTable[baseColor.r]; - g = gammaTable[baseColor.g]; - b = gammaTable[baseColor.b]; + r = colorMap[baseColor.r]; + g = colorMap[baseColor.g]; + b = colorMap[baseColor.b]; gPlttBufferFaded[palOffset++] = RGB2(r, g, b); } } @@ -500,17 +507,17 @@ static void ApplyGammaShift(u8 startPalIndex, u8 numPalettes, s8 gammaIndex) curPalIndex++; } } - else if (gammaIndex < 0) + else if (colorMapIndex < 0) { // A negative gammIndex value means that the blending will come from the special Drought weather's palette tables. - gammaIndex = -gammaIndex - 1; + colorMapIndex = -colorMapIndex - 1; palOffset = startPalIndex * 16; numPalettes += startPalIndex; curPalIndex = startPalIndex; while (curPalIndex < numPalettes) { - if (sPaletteGammaTypes[curPalIndex] == GAMMA_NONE) + if (sPaletteColorMapTypes[curPalIndex] == COLOR_MAP_NONE) { // No palette change. CpuFastCopy(gPlttBufferUnfaded + palOffset, gPlttBufferFaded + palOffset, 16 * sizeof(u16)); @@ -520,7 +527,7 @@ static void ApplyGammaShift(u8 startPalIndex, u8 numPalettes, s8 gammaIndex) { for (i = 0; i < 16; i++) { - gPlttBufferFaded[palOffset] = sDroughtWeatherColors[gammaIndex][DROUGHT_COLOR_INDEX(gPlttBufferUnfaded[palOffset])]; + gPlttBufferFaded[palOffset] = sDroughtWeatherColors[colorMapIndex][DROUGHT_COLOR_INDEX(gPlttBufferUnfaded[palOffset])]; palOffset++; } } @@ -535,7 +542,7 @@ static void ApplyGammaShift(u8 startPalIndex, u8 numPalettes, s8 gammaIndex) } } -static void ApplyGammaShiftWithBlend(u8 startPalIndex, u8 numPalettes, s8 gammaIndex, u8 blendCoeff, u16 blendColor) +static void ApplyColorMapWithBlend(u8 startPalIndex, u8 numPalettes, s8 colorMapIndex, u8 blendCoeff, u16 blendColor) { u16 palOffset; u16 curPalIndex; @@ -547,34 +554,34 @@ static void ApplyGammaShiftWithBlend(u8 startPalIndex, u8 numPalettes, s8 gammaI palOffset = startPalIndex * 16; numPalettes += startPalIndex; - gammaIndex--; + colorMapIndex--; curPalIndex = startPalIndex; while (curPalIndex < numPalettes) { - if (sPaletteGammaTypes[curPalIndex] == GAMMA_NONE) + if (sPaletteColorMapTypes[curPalIndex] == COLOR_MAP_NONE) { - // No gamma shift. Simply blend the colors. + // No color map. Simply blend the colors. BlendPalette(palOffset, 16, blendCoeff, blendColor); palOffset += 16; } else { - u8 *gammaTable; + u8 *colorMap; - if (sPaletteGammaTypes[curPalIndex] == GAMMA_NORMAL) - gammaTable = gWeatherPtr->gammaShifts[gammaIndex]; + if (sPaletteColorMapTypes[curPalIndex] == COLOR_MAP_DARK_CONTRAST) + colorMap = gWeatherPtr->darkenedContrastColorMaps[colorMapIndex]; else - gammaTable = gWeatherPtr->altGammaShifts[gammaIndex]; + colorMap = gWeatherPtr->contrastColorMaps[colorMapIndex]; for (i = 0; i < 16; i++) { struct RGBColor baseColor = *(struct RGBColor *)&gPlttBufferUnfaded[palOffset]; - u8 r = gammaTable[baseColor.r]; - u8 g = gammaTable[baseColor.g]; - u8 b = gammaTable[baseColor.b]; + u8 r = colorMap[baseColor.r]; + u8 g = colorMap[baseColor.g]; + u8 b = colorMap[baseColor.b]; - // Apply gamma shift and target blend color to the original color. + // Apply color map and target blend color to the original color. r += ((rBlend - r) * blendCoeff) >> 4; g += ((gBlend - g) * blendCoeff) >> 4; b += ((bBlend - b) * blendCoeff) >> 4; @@ -586,7 +593,7 @@ static void ApplyGammaShiftWithBlend(u8 startPalIndex, u8 numPalettes, s8 gammaI } } -static void ApplyDroughtGammaShiftWithBlend(s8 gammaIndex, u8 blendCoeff, u16 blendColor) +static void ApplyDroughtColorMapWithBlend(s8 colorMapIndex, u8 blendCoeff, u16 blendColor) { struct RGBColor color; u8 rBlend; @@ -596,7 +603,7 @@ static void ApplyDroughtGammaShiftWithBlend(s8 gammaIndex, u8 blendCoeff, u16 bl u16 palOffset; u16 i; - gammaIndex = -gammaIndex - 1; + colorMapIndex = -colorMapIndex - 1; color = *(struct RGBColor *)&blendColor; rBlend = color.r; gBlend = color.g; @@ -604,9 +611,9 @@ static void ApplyDroughtGammaShiftWithBlend(s8 gammaIndex, u8 blendCoeff, u16 bl palOffset = 0; for (curPalIndex = 0; curPalIndex < 32; curPalIndex++) { - if (sPaletteGammaTypes[curPalIndex] == GAMMA_NONE) + if (sPaletteColorMapTypes[curPalIndex] == COLOR_MAP_NONE) { - // No gamma shift. Simply blend the colors. + // No color map. Simply blend the colors. BlendPalette(palOffset, 16, blendCoeff, blendColor); palOffset += 16; } @@ -626,7 +633,7 @@ static void ApplyDroughtGammaShiftWithBlend(s8 gammaIndex, u8 blendCoeff, u16 bl b1 = color1.b; offset = ((b1 & 0x1E) << 7) | ((g1 & 0x1E) << 3) | ((r1 & 0x1E) >> 1); - color2 = *(struct RGBColor *)&sDroughtWeatherColors[gammaIndex][offset]; + color2 = *(struct RGBColor *)&sDroughtWeatherColors[colorMapIndex][offset]; r2 = color2.r; g2 = color2.g; b2 = color2.b; @@ -710,25 +717,25 @@ static bool8 LightenSpritePaletteInFog(u8 paletteIndex) return FALSE; } -void ApplyWeatherGammaShiftIfIdle(s8 gammaIndex) +void ApplyWeatherColorMapIfIdle(s8 colorMapIndex) { if (gWeatherPtr->palProcessingState == WEATHER_PAL_STATE_IDLE) { - ApplyGammaShift(0, 32, gammaIndex); - gWeatherPtr->gammaIndex = gammaIndex; + ApplyColorMap(0, 32, colorMapIndex); + gWeatherPtr->colorMapIndex = colorMapIndex; } } -void ApplyWeatherGammaShiftIfIdle_Gradual(u8 gammaIndex, u8 gammaTargetIndex, u8 gammaStepDelay) +void ApplyWeatherColorMapIfIdle_Gradual(u8 colorMapIndex, u8 targetColorMapIndex, u8 colorMapStepDelay) { if (gWeatherPtr->palProcessingState == WEATHER_PAL_STATE_IDLE) { gWeatherPtr->palProcessingState = WEATHER_PAL_STATE_CHANGING_WEATHER; - gWeatherPtr->gammaIndex = gammaIndex; - gWeatherPtr->gammaTargetIndex = gammaTargetIndex; - gWeatherPtr->gammaStepFrameCounter = 0; - gWeatherPtr->gammaStepDelay = gammaStepDelay; - ApplyWeatherGammaShiftIfIdle(gammaIndex); + gWeatherPtr->colorMapIndex = colorMapIndex; + gWeatherPtr->targetColorMapIndex = targetColorMapIndex; + gWeatherPtr->colorMapStepCounter = 0; + gWeatherPtr->colorMapStepDelay = colorMapStepDelay; + ApplyWeatherColorMapIfIdle(colorMapIndex); } } @@ -832,7 +839,7 @@ void UpdateSpritePaletteWithWeather(u8 spritePaletteIndex) default: if (gWeatherPtr->currWeather != WEATHER_FOG_HORIZONTAL) { - ApplyGammaShift(paletteIndex, 1, gWeatherPtr->gammaIndex); + ApplyColorMap(paletteIndex, 1, gWeatherPtr->colorMapIndex); } else { @@ -843,9 +850,9 @@ void UpdateSpritePaletteWithWeather(u8 spritePaletteIndex) } } -void ApplyWeatherGammaShiftToPal(u8 paletteIndex) +void ApplyWeatherColorMapToPal(u8 paletteIndex) { - ApplyGammaShift(paletteIndex, 1, gWeatherPtr->gammaIndex); + ApplyColorMap(paletteIndex, 1, gWeatherPtr->colorMapIndex); } // Unused @@ -886,9 +893,9 @@ bool8 LoadDroughtWeatherPalettes(void) return FALSE; } -static void SetDroughtGamma(s8 gammaIndex) +static void SetDroughtColorMap(s8 colorMapIndex) { - ApplyWeatherGammaShiftIfIdle(-gammaIndex - 1); + ApplyWeatherColorMapIfIdle(-colorMapIndex - 1); } void DroughtStateInit(void) @@ -907,7 +914,7 @@ void DroughtStateRun(void) if (++gWeatherPtr->droughtTimer > 5) { gWeatherPtr->droughtTimer = 0; - SetDroughtGamma(gWeatherPtr->droughtBrightnessStage++); + SetDroughtColorMap(gWeatherPtr->droughtBrightnessStage++); if (gWeatherPtr->droughtBrightnessStage > 5) { gWeatherPtr->droughtLastBrightnessStage = gWeatherPtr->droughtBrightnessStage; @@ -920,14 +927,14 @@ void DroughtStateRun(void) gWeatherPtr->droughtTimer = (gWeatherPtr->droughtTimer + 3) & 0x7F; gWeatherPtr->droughtBrightnessStage = ((gSineTable[gWeatherPtr->droughtTimer] - 1) >> 6) + 2; if (gWeatherPtr->droughtBrightnessStage != gWeatherPtr->droughtLastBrightnessStage) - SetDroughtGamma(gWeatherPtr->droughtBrightnessStage); + SetDroughtColorMap(gWeatherPtr->droughtBrightnessStage); gWeatherPtr->droughtLastBrightnessStage = gWeatherPtr->droughtBrightnessStage; break; case 2: if (++gWeatherPtr->droughtTimer > 5) { gWeatherPtr->droughtTimer = 0; - SetDroughtGamma(--gWeatherPtr->droughtBrightnessStage); + SetDroughtColorMap(--gWeatherPtr->droughtBrightnessStage); if (gWeatherPtr->droughtBrightnessStage == 3) gWeatherPtr->droughtState = 0; } @@ -1093,12 +1100,12 @@ void SetWeatherPalStateIdle(void) void PreservePaletteInWeather(u8 preservedPalIndex) { - CpuCopy16(sBasePaletteGammaTypes, sFieldEffectPaletteGammaTypes, 32); - sFieldEffectPaletteGammaTypes[preservedPalIndex] = GAMMA_NONE; - sPaletteGammaTypes = sFieldEffectPaletteGammaTypes; + CpuCopy16(sBasePaletteColorMapTypes, sFieldEffectPaletteColorMapTypes, 32); + sFieldEffectPaletteColorMapTypes[preservedPalIndex] = COLOR_MAP_NONE; + sPaletteColorMapTypes = sFieldEffectPaletteColorMapTypes; } void ResetPreservedPalettesInWeather(void) { - sPaletteGammaTypes = sBasePaletteGammaTypes; + sPaletteColorMapTypes = sBasePaletteColorMapTypes; } diff --git a/src/field_weather_effect.c b/src/field_weather_effect.c index f5769cc23..05eae421e 100644 --- a/src/field_weather_effect.c +++ b/src/field_weather_effect.c @@ -94,8 +94,8 @@ static const struct SpriteTemplate sCloudSpriteTemplate = void Clouds_InitVars(void) { - gWeatherPtr->gammaTargetIndex = 0; - gWeatherPtr->gammaStepDelay = 20; + gWeatherPtr->targetColorMapIndex = 0; + gWeatherPtr->colorMapStepDelay = 20; gWeatherPtr->weatherGfxLoaded = FALSE; gWeatherPtr->initStep = 0; if (gWeatherPtr->cloudSpritesCreated == FALSE) @@ -152,8 +152,8 @@ bool8 Clouds_Finish(void) void Sunny_InitVars(void) { - gWeatherPtr->gammaTargetIndex = 0; - gWeatherPtr->gammaStepDelay = 20; + gWeatherPtr->targetColorMapIndex = 0; + gWeatherPtr->colorMapStepDelay = 20; } void Sunny_InitAll(void) @@ -235,8 +235,8 @@ void Drought_InitVars(void) { gWeatherPtr->initStep = 0; gWeatherPtr->weatherGfxLoaded = FALSE; - gWeatherPtr->gammaTargetIndex = 0; - gWeatherPtr->gammaStepDelay = 0; + gWeatherPtr->targetColorMapIndex = 0; + gWeatherPtr->colorMapStepDelay = 0; } void Drought_InitAll(void) @@ -476,8 +476,8 @@ void Rain_InitVars(void) gWeatherPtr->rainSpriteVisibleDelay = 8; gWeatherPtr->isDownpour = FALSE; gWeatherPtr->targetRainSpriteCount = 10; - gWeatherPtr->gammaTargetIndex = 3; - gWeatherPtr->gammaStepDelay = 20; + gWeatherPtr->targetColorMapIndex = 3; + gWeatherPtr->colorMapStepDelay = 20; SetRainStrengthFromSoundEffect(SE_RAIN); } @@ -768,8 +768,8 @@ void Snow_InitVars(void) { gWeatherPtr->initStep = 0; gWeatherPtr->weatherGfxLoaded = FALSE; - gWeatherPtr->gammaTargetIndex = 3; - gWeatherPtr->gammaStepDelay = 20; + gWeatherPtr->targetColorMapIndex = 3; + gWeatherPtr->colorMapStepDelay = 20; gWeatherPtr->targetSnowflakeSpriteCount = 16; gWeatherPtr->snowflakeVisibleCounter = 0; } @@ -1014,38 +1014,38 @@ static void UpdateSnowflakeSprite(struct Sprite *sprite) enum { // This block of states is run only once // when first setting up the thunderstorm - TSTORM_STATE_LOAD_RAIN, - TSTORM_STATE_CREATE_RAIN, - TSTORM_STATE_INIT_RAIN, - TSTORM_STATE_WAIT_CHANGE, + THUNDER_STATE_LOAD_RAIN, + THUNDER_STATE_CREATE_RAIN, + THUNDER_STATE_INIT_RAIN, + THUNDER_STATE_WAIT_CHANGE, // The thunderstorm loops through these states, // not necessarily in order. - TSTORM_STATE_LOOP_START, - TSTORM_STATE_LOOP_WAIT, - TSTORM_STATE_INIT_THUNDER_SHORT_1, - TSTORM_STATE_INIT_THUNDER_SHORT_2, - TSTORM_STATE_TRY_THUNDER_SHORT, - TSTORM_STATE_TRY_NEW_THUNDER, - TSTORM_STATE_WAIT_THUNDER_SHORT, - TSTORM_STATE_INIT_THUNDER_LONG, - TSTORM_STATE_WAIT_THUNDER_LONG, - TSTORM_STATE_FADE_THUNDER_LONG, - TSTORM_STATE_END_THUNDER_LONG, + THUNDER_STATE_NEW_CYCLE, + THUNDER_STATE_NEW_CYCLE_WAIT, + THUNDER_STATE_INIT_CYCLE_1, + THUNDER_STATE_INIT_CYCLE_2, + THUNDER_STATE_SHORT_BOLT, + THUNDER_STATE_TRY_NEW_BOLT, + THUNDER_STATE_WAIT_BOLT_SHORT, + THUNDER_STATE_INIT_BOLT_LONG, + THUNDER_STATE_WAIT_BOLT_LONG, + THUNDER_STATE_FADE_BOLT_LONG, + THUNDER_STATE_END_BOLT_LONG, }; void Thunderstorm_InitVars(void) { - gWeatherPtr->initStep = TSTORM_STATE_LOAD_RAIN; + gWeatherPtr->initStep = THUNDER_STATE_LOAD_RAIN; gWeatherPtr->weatherGfxLoaded = FALSE; gWeatherPtr->rainSpriteVisibleCounter = 0; gWeatherPtr->rainSpriteVisibleDelay = 4; gWeatherPtr->isDownpour = FALSE; gWeatherPtr->targetRainSpriteCount = 16; - gWeatherPtr->gammaTargetIndex = 3; - gWeatherPtr->gammaStepDelay = 20; + gWeatherPtr->targetColorMapIndex = 3; + gWeatherPtr->colorMapStepDelay = 20; gWeatherPtr->weatherGfxLoaded = FALSE; // duplicate assignment - gWeatherPtr->thunderTriggered = FALSE; + gWeatherPtr->thunderEnqueued = FALSE; SetRainStrengthFromSoundEffect(SE_THUNDERSTORM); } @@ -1061,18 +1061,18 @@ void Thunderstorm_InitAll(void) //------------------------------------------------------------------------------ static void UpdateThunderSound(void); -static void SetThunderCounter(u16); +static void EnqueueThunder(u16); void Downpour_InitVars(void) { - gWeatherPtr->initStep = TSTORM_STATE_LOAD_RAIN; + gWeatherPtr->initStep = THUNDER_STATE_LOAD_RAIN; gWeatherPtr->weatherGfxLoaded = FALSE; gWeatherPtr->rainSpriteVisibleCounter = 0; gWeatherPtr->rainSpriteVisibleDelay = 4; gWeatherPtr->isDownpour = TRUE; gWeatherPtr->targetRainSpriteCount = 24; - gWeatherPtr->gammaTargetIndex = 3; - gWeatherPtr->gammaStepDelay = 20; + gWeatherPtr->targetColorMapIndex = 3; + gWeatherPtr->colorMapStepDelay = 20; gWeatherPtr->weatherGfxLoaded = FALSE; // duplicate assignment SetRainStrengthFromSoundEffect(SE_DOWNPOUR); } @@ -1084,110 +1084,119 @@ void Downpour_InitAll(void) Thunderstorm_Main(); } +// In a given cycle, there will be some shorter bolts of lightning, potentially +// followed by a longer bolt. As a "regex", the pattern is: +// (SHORT_BOLT){1,2}(LONG_BOLT)? +// +// Thunder only plays on the final bolt of the cycle. void Thunderstorm_Main(void) { UpdateThunderSound(); switch (gWeatherPtr->initStep) { - case TSTORM_STATE_LOAD_RAIN: + case THUNDER_STATE_LOAD_RAIN: LoadRainSpriteSheet(); gWeatherPtr->initStep++; break; - case TSTORM_STATE_CREATE_RAIN: + case THUNDER_STATE_CREATE_RAIN: if (!CreateRainSprite()) gWeatherPtr->initStep++; break; - case TSTORM_STATE_INIT_RAIN: + case THUNDER_STATE_INIT_RAIN: if (!UpdateVisibleRainSprites()) { gWeatherPtr->weatherGfxLoaded = TRUE; gWeatherPtr->initStep++; } break; - case TSTORM_STATE_WAIT_CHANGE: + case THUNDER_STATE_WAIT_CHANGE: if (gWeatherPtr->palProcessingState != WEATHER_PAL_STATE_CHANGING_WEATHER) - gWeatherPtr->initStep = TSTORM_STATE_INIT_THUNDER_SHORT_1; + gWeatherPtr->initStep = THUNDER_STATE_INIT_CYCLE_1; break; - case TSTORM_STATE_LOOP_START: + case THUNDER_STATE_NEW_CYCLE: gWeatherPtr->thunderAllowEnd = TRUE; - gWeatherPtr->thunderDelay = (Random() % 360) + 360; + gWeatherPtr->thunderTimer = (Random() % 360) + 360; gWeatherPtr->initStep++; // fall through - case TSTORM_STATE_LOOP_WAIT: - // Wait between 360-720 frames before trying thunder again - if (--gWeatherPtr->thunderDelay == 0) + case THUNDER_STATE_NEW_CYCLE_WAIT: + // Wait between 360-720 frames before starting a new cycle. + if (--gWeatherPtr->thunderTimer == 0) gWeatherPtr->initStep++; break; - case TSTORM_STATE_INIT_THUNDER_SHORT_1: + case THUNDER_STATE_INIT_CYCLE_1: gWeatherPtr->thunderAllowEnd = TRUE; - gWeatherPtr->thunderSkipShort = Random() % 2; + gWeatherPtr->thunderLongBolt = Random() % 2; gWeatherPtr->initStep++; break; - case TSTORM_STATE_INIT_THUNDER_SHORT_2: - gWeatherPtr->thunderShortRetries = (Random() & 1) + 1; + case THUNDER_STATE_INIT_CYCLE_2: + gWeatherPtr->thunderShortBolts = (Random() & 1) + 1; gWeatherPtr->initStep++; // fall through - case TSTORM_STATE_TRY_THUNDER_SHORT: - ApplyWeatherGammaShiftIfIdle(19); - if (!gWeatherPtr->thunderSkipShort && gWeatherPtr->thunderShortRetries == 1) - SetThunderCounter(20); // Do short thunder + case THUNDER_STATE_SHORT_BOLT: + // Short bolt of lightning strikes. + ApplyWeatherColorMapIfIdle(19); + // If final lightning bolt, enqueue thunder. + if (!gWeatherPtr->thunderLongBolt && gWeatherPtr->thunderShortBolts == 1) + EnqueueThunder(20); - gWeatherPtr->thunderDelay = (Random() % 3) + 6; + gWeatherPtr->thunderTimer = (Random() % 3) + 6; gWeatherPtr->initStep++; break; - case TSTORM_STATE_TRY_NEW_THUNDER: - if (--gWeatherPtr->thunderDelay == 0) + case THUNDER_STATE_TRY_NEW_BOLT: + if (--gWeatherPtr->thunderTimer == 0) { - ApplyWeatherGammaShiftIfIdle(3); + // Short bolt of lightning ends. + ApplyWeatherColorMapIfIdle(3); gWeatherPtr->thunderAllowEnd = TRUE; - if (--gWeatherPtr->thunderShortRetries != 0) + if (--gWeatherPtr->thunderShortBolts != 0) { - // Try a short thunder again - gWeatherPtr->thunderDelay = (Random() % 16) + 60; - gWeatherPtr->initStep = TSTORM_STATE_WAIT_THUNDER_SHORT; + // Wait a little, then do another short bolt. + gWeatherPtr->thunderTimer = (Random() % 16) + 60; + gWeatherPtr->initStep = THUNDER_STATE_WAIT_BOLT_SHORT; } - else if (!gWeatherPtr->thunderSkipShort) + else if (!gWeatherPtr->thunderLongBolt) { - // No more thunder, restart loop - gWeatherPtr->initStep = TSTORM_STATE_LOOP_START; + // No more bolts, restart loop. + gWeatherPtr->initStep = THUNDER_STATE_NEW_CYCLE; } else { - // Set up long thunder - gWeatherPtr->initStep = TSTORM_STATE_INIT_THUNDER_LONG; + // Set up long bolt. + gWeatherPtr->initStep = THUNDER_STATE_INIT_BOLT_LONG; } } break; - case TSTORM_STATE_WAIT_THUNDER_SHORT: - if (--gWeatherPtr->thunderDelay == 0) - gWeatherPtr->initStep = TSTORM_STATE_TRY_THUNDER_SHORT; + case THUNDER_STATE_WAIT_BOLT_SHORT: + if (--gWeatherPtr->thunderTimer == 0) + gWeatherPtr->initStep = THUNDER_STATE_SHORT_BOLT; break; - case TSTORM_STATE_INIT_THUNDER_LONG: - gWeatherPtr->thunderDelay = (Random() % 16) + 60; + case THUNDER_STATE_INIT_BOLT_LONG: + gWeatherPtr->thunderTimer = (Random() % 16) + 60; gWeatherPtr->initStep++; break; - case TSTORM_STATE_WAIT_THUNDER_LONG: - if (--gWeatherPtr->thunderDelay == 0) + case THUNDER_STATE_WAIT_BOLT_LONG: + if (--gWeatherPtr->thunderTimer == 0) { - // Do long thunder - SetThunderCounter(100); - ApplyWeatherGammaShiftIfIdle(19); - gWeatherPtr->thunderDelay = (Random() & 0xF) + 30; + // Do long bolt. Enqueue thunder with a potentially longer delay. + EnqueueThunder(100); + ApplyWeatherColorMapIfIdle(19); + gWeatherPtr->thunderTimer = (Random() & 0xF) + 30; gWeatherPtr->initStep++; } break; - case TSTORM_STATE_FADE_THUNDER_LONG: - if (--gWeatherPtr->thunderDelay == 0) + case THUNDER_STATE_FADE_BOLT_LONG: + if (--gWeatherPtr->thunderTimer == 0) { - ApplyWeatherGammaShiftIfIdle_Gradual(19, 3, 5); + // Fade long bolt out over time. + ApplyWeatherColorMapIfIdle_Gradual(19, 3, 5); gWeatherPtr->initStep++; } break; - case TSTORM_STATE_END_THUNDER_LONG: + case THUNDER_STATE_END_BOLT_LONG: if (gWeatherPtr->palProcessingState == WEATHER_PAL_STATE_IDLE) { gWeatherPtr->thunderAllowEnd = TRUE; - gWeatherPtr->initStep = TSTORM_STATE_LOOP_START; + gWeatherPtr->initStep = THUNDER_STATE_NEW_CYCLE; } break; } @@ -1218,7 +1227,7 @@ bool8 Thunderstorm_Finish(void) if (!UpdateVisibleRainSprites()) { DestroyRainSprites(); - gWeatherPtr->thunderTriggered = 0; + gWeatherPtr->thunderEnqueued = FALSE; gWeatherPtr->finishStep++; return FALSE; } @@ -1229,20 +1238,21 @@ bool8 Thunderstorm_Finish(void) return TRUE; } -static void SetThunderCounter(u16 max) +// Enqueue a thunder sound effect for at most `waitFrames` frames from now. +static void EnqueueThunder(u16 waitFrames) { - if (!gWeatherPtr->thunderTriggered) + if (!gWeatherPtr->thunderEnqueued) { - gWeatherPtr->thunderCounter = Random() % max; - gWeatherPtr->thunderTriggered = TRUE; + gWeatherPtr->thunderSETimer = Random() % waitFrames; + gWeatherPtr->thunderEnqueued = TRUE; } } static void UpdateThunderSound(void) { - if (gWeatherPtr->thunderTriggered == TRUE) + if (gWeatherPtr->thunderEnqueued == TRUE) { - if (gWeatherPtr->thunderCounter == 0) + if (gWeatherPtr->thunderSETimer == 0) { if (IsSEPlaying()) return; @@ -1252,11 +1262,11 @@ static void UpdateThunderSound(void) else PlaySE(SE_THUNDER2); - gWeatherPtr->thunderTriggered = FALSE; + gWeatherPtr->thunderEnqueued = FALSE; } else { - gWeatherPtr->thunderCounter--; + gWeatherPtr->thunderSETimer--; } } } @@ -1361,8 +1371,8 @@ void FogHorizontal_InitVars(void) { gWeatherPtr->initStep = 0; gWeatherPtr->weatherGfxLoaded = FALSE; - gWeatherPtr->gammaTargetIndex = 0; - gWeatherPtr->gammaStepDelay = 20; + gWeatherPtr->targetColorMapIndex = 0; + gWeatherPtr->colorMapStepDelay = 20; if (gWeatherPtr->fogHSpritesCreated == 0) { gWeatherPtr->fogHScrollCounter = 0; @@ -1516,8 +1526,8 @@ void Ash_InitVars(void) { gWeatherPtr->initStep = 0; gWeatherPtr->weatherGfxLoaded = FALSE; - gWeatherPtr->gammaTargetIndex = 0; - gWeatherPtr->gammaStepDelay = 20; + gWeatherPtr->targetColorMapIndex = 0; + gWeatherPtr->colorMapStepDelay = 20; gWeatherPtr->ashUnused = 20; // Never read if (!gWeatherPtr->ashSpritesCreated) { @@ -1726,8 +1736,8 @@ void FogDiagonal_InitVars(void) { gWeatherPtr->initStep = 0; gWeatherPtr->weatherGfxLoaded = 0; - gWeatherPtr->gammaTargetIndex = 0; - gWeatherPtr->gammaStepDelay = 20; + gWeatherPtr->targetColorMapIndex = 0; + gWeatherPtr->colorMapStepDelay = 20; gWeatherPtr->fogHScrollCounter = 0; gWeatherPtr->fogHScrollOffset = 1; if (!gWeatherPtr->fogDSpritesCreated) @@ -1940,8 +1950,8 @@ void Sandstorm_InitVars(void) { gWeatherPtr->initStep = 0; gWeatherPtr->weatherGfxLoaded = 0; - gWeatherPtr->gammaTargetIndex = 0; - gWeatherPtr->gammaStepDelay = 20; + gWeatherPtr->targetColorMapIndex = 0; + gWeatherPtr->colorMapStepDelay = 20; if (!gWeatherPtr->sandstormSpritesCreated) { gWeatherPtr->sandstormXOffset = gWeatherPtr->sandstormYOffset = 0; @@ -2237,8 +2247,8 @@ static void UpdateSandstormSwirlSprite(struct Sprite *sprite) void Shade_InitVars(void) { gWeatherPtr->initStep = 0; - gWeatherPtr->gammaTargetIndex = 3; - gWeatherPtr->gammaStepDelay = 20; + gWeatherPtr->targetColorMapIndex = 3; + gWeatherPtr->colorMapStepDelay = 20; } void Shade_InitAll(void) diff --git a/src/fieldmap.c b/src/fieldmap.c index bcd2d1019..fa82a983f 100644 --- a/src/fieldmap.c +++ b/src/fieldmap.c @@ -406,7 +406,7 @@ void MapGridSetMetatileEntryAt(int x, int y, u16 metatile) u16 GetMetatileAttributesById(u16 metatile) { - u16 *attributes; + const u16 *attributes; if (metatile < NUM_METATILES_IN_PRIMARY) { attributes = gMapHeader.mapLayout->primaryTileset->metatileAttributes; @@ -880,17 +880,17 @@ void LoadTilesetPalette(struct Tileset const *tileset, u16 destOffset, u16 size) if (tileset->isSecondary == FALSE) { LoadPalette(&black, destOffset, 2); - LoadPalette(((u16 *)tileset->palettes) + 1, destOffset + 1, size - 2); + LoadPalette(tileset->palettes[0] + 1, destOffset + 1, size - 2); ApplyGlobalTintToPaletteEntries(destOffset + 1, (size - 2) >> 1); } else if (tileset->isSecondary == TRUE) { - LoadPalette(((u16 *)tileset->palettes) + (NUM_PALS_IN_PRIMARY * 16), destOffset, size); + LoadPalette(tileset->palettes[NUM_PALS_IN_PRIMARY], destOffset, size); ApplyGlobalTintToPaletteEntries(destOffset, size >> 1); } else { - LoadCompressedPalette((u32 *)tileset->palettes, destOffset, size); + LoadCompressedPalette((const u32 *)tileset->palettes, destOffset, size); ApplyGlobalTintToPaletteEntries(destOffset, size >> 1); } } diff --git a/src/graphics.c b/src/graphics.c index 306f35928..0126150fd 100644 --- a/src/graphics.c +++ b/src/graphics.c @@ -1810,8 +1810,8 @@ const u16 gPokenavMessageBox_Pal[] = INCBIN_U16("graphics/pokenav/message.gbapal const u32 gPokenavMessageBox_Gfx[] = INCBIN_U32("graphics/pokenav/message.4bpp.lz"); const u32 gPokenavMessageBox_Tilemap[] = INCBIN_U32("graphics/pokenav/message.bin.lz"); -const u16 gRegionMapCityZoomTiles_Pal[] = INCBIN_U16("graphics/pokenav/zoom_tiles.gbapal"); -const u32 gRegionMapCityZoomText_Gfx[] = INCBIN_U32("graphics/pokenav/city_zoom_text.4bpp.lz"); +const u16 gRegionMapCityZoomTiles_Pal[] = INCBIN_U16("graphics/pokenav/region_map/zoom_tiles.gbapal"); +const u32 gRegionMapCityZoomText_Gfx[] = INCBIN_U32("graphics/pokenav/region_map/city_zoom_text.4bpp.lz"); const u16 gPokenavConditionCancel_Pal[] = INCBIN_U16("graphics/pokenav/condition/cancel.gbapal"); const u8 gPokenavConditionCancel_Gfx[] = INCBIN_U8("graphics/pokenav/condition/cancel.4bpp"); diff --git a/src/heal_location.c b/src/heal_location.c index ab8dc5265..0ab554034 100644 --- a/src/heal_location.c +++ b/src/heal_location.c @@ -13,14 +13,14 @@ u32 GetHealLocationIndexByMap(u16 mapGroup, u16 mapNum) if (sHealLocations[i].group == mapGroup && sHealLocations[i].map == mapNum) return i + 1; } - return 0; + return HEAL_LOCATION_NONE; } const struct HealLocation *GetHealLocationByMap(u16 mapGroup, u16 mapNum) { u32 index = GetHealLocationIndexByMap(mapGroup, mapNum); - if (index == 0) + if (index == HEAL_LOCATION_NONE) return NULL; else return &sHealLocations[index - 1]; @@ -28,7 +28,7 @@ const struct HealLocation *GetHealLocationByMap(u16 mapGroup, u16 mapNum) const struct HealLocation *GetHealLocation(u32 index) { - if (index == 0) + if (index == HEAL_LOCATION_NONE) return NULL; else if (index > ARRAY_COUNT(sHealLocations)) return NULL; diff --git a/src/international_string_util.c b/src/international_string_util.c index f71734fa7..457e3260b 100644 --- a/src/international_string_util.c +++ b/src/international_string_util.c @@ -133,7 +133,7 @@ void PadNameString(u8 *dest, u8 padChar) while (length < PLAYER_NAME_LENGTH - 1) { dest[length] = EXT_CTRL_CODE_BEGIN; - dest[length + 1] = EXT_CTRL_CODE_RESET_SIZE; + dest[length + 1] = EXT_CTRL_CODE_RESET_FONT; length += 2; } } diff --git a/src/item_menu.c b/src/item_menu.c index 0a49347a9..608e203a6 100755 --- a/src/item_menu.c +++ b/src/item_menu.c @@ -259,9 +259,9 @@ static const struct ListMenuTemplate sItemListMenu = .cursorShadowPal = 3, .lettersSpacing = 0, .itemVerticalPadding = 0, - .scrollMultiple = 0, + .scrollMultiple = LIST_NO_MULTIPLE_SCROLL, .fontId = FONT_NARROW, - .cursorKind = 0 + .cursorKind = CURSOR_BLACK_ARROW }; static const struct MenuAction sItemMenuActions[] = { diff --git a/src/link_rfu_2.c b/src/link_rfu_2.c index 4730c74fd..9d66a1837 100644 --- a/src/link_rfu_2.c +++ b/src/link_rfu_2.c @@ -2525,9 +2525,8 @@ u8 RfuGetStatus(void) bool32 RfuHasErrored(void) { - // RFU_STATUS_OK will underflow here intentionally - u32 var = RfuGetStatus() - 1; - if (var < RFU_STATUS_CONNECTION_ERROR) + u32 status = RfuGetStatus(); + if (status == RFU_STATUS_FATAL_ERROR || status == RFU_STATUS_CONNECTION_ERROR) return TRUE; else return FALSE; @@ -2656,7 +2655,7 @@ static u8 GetPartnerIndexByNameAndTrainerID(const u8 *name, u16 id) for (i = 0; i < RFU_CHILD_MAX; i++) { - u16 trainerId = ReadU16(gRfuLinkStatus->partner[i].gname + 2); + u16 trainerId = ReadU16(((struct RfuGameData *)gRfuLinkStatus->partner[i].gname)->compatibility.playerTrainerId); if (IsRfuSerialNumberValid(gRfuLinkStatus->partner[i].serialNo) && !StringCompare(name, gRfuLinkStatus->partner[i].uname) && id == trainerId) @@ -2682,9 +2681,9 @@ static void RfuReqDisconnectSlot(u32 slot) void RequestDisconnectSlotByTrainerNameAndId(const u8 *name, u16 id) { - u8 var = GetPartnerIndexByNameAndTrainerID(name, id); - if (var != 0xFF) - RfuReqDisconnectSlot(1 << var); + u8 index = GetPartnerIndexByNameAndTrainerID(name, id); + if (index != 0xFF) + RfuReqDisconnectSlot(1 << index); } void Rfu_DisconnectPlayerById(u32 playerIdx) diff --git a/src/list_menu.c b/src/list_menu.c index 112fca753..c240564c6 100644 --- a/src/list_menu.c +++ b/src/list_menu.c @@ -13,6 +13,10 @@ #include "sound.h" #include "constants/songs.h" +// Cursors after this point are created using a sprite with their own task. +// This allows them to have idle animations. Cursors prior to this are simply printed text. +#define CURSOR_OBJECT_START CURSOR_RED_OUTLINE + struct UnkIndicatorsStruct { u8 field_0; @@ -70,7 +74,7 @@ static bool8 ListMenuChangeSelection(struct ListMenu *list, bool8 updateCursorAn static void ListMenuPrintEntries(struct ListMenu *list, u16 startIndex, u16 yOffset, u16 count); static void ListMenuDrawCursor(struct ListMenu *list); static void ListMenuCallSelectionChangedCallback(struct ListMenu *list, u8 onInit); -static u8 ListMenuAddCursorObject(struct ListMenu *list, u32 cursorKind); +static u8 ListMenuAddCursorObject(struct ListMenu *list, u32 cursorObjId); static void Task_ScrollIndicatorArrowPair(u8 taskId); static u8 ListMenuAddRedOutlineCursorObject(struct CursorStruct *cursor); static u8 ListMenuAddRedArrowCursorObject(struct CursorStruct *cursor); @@ -78,9 +82,9 @@ static void ListMenuUpdateRedOutlineCursorObject(u8 taskId, u16 x, u16 y); static void ListMenuUpdateRedArrowCursorObject(u8 taskId, u16 x, u16 y); static void ListMenuRemoveRedOutlineCursorObject(u8 taskId); static void ListMenuRemoveRedArrowCursorObject(u8 taskId); -static u8 ListMenuAddCursorObjectInternal(struct CursorStruct *cursor, u32 cursorKind); -static void ListMenuUpdateCursorObject(u8 taskId, u16 x, u16 y, u32 cursorKind); -static void ListMenuRemoveCursorObject(u8 taskId, u32 cursorKind); +static u8 ListMenuAddCursorObjectInternal(struct CursorStruct *cursor, u32 cursorObjId); +static void ListMenuUpdateCursorObject(u8 taskId, u16 x, u16 y, u32 cursorObjId); +static void ListMenuRemoveCursorObject(u8 taskId, u32 cursorObjId); static void SpriteCallback_ScrollIndicatorArrow(struct Sprite *sprite); static void SpriteCallback_RedArrowCursor(struct Sprite *sprite); @@ -301,10 +305,10 @@ static const struct SpriteTemplate sSpriteTemplate_RedArrowCursor = .callback = SpriteCallback_RedArrowCursor, }; -static const u16 sRedArrowPal[] = INCBIN_U16("graphics/interface/red_arrow.gbapal"); -static const u32 sRedArrowOtherGfx[] = INCBIN_U32("graphics/interface/red_arrow_other.4bpp.lz"); -static const u32 sSelectorOutlineGfx[] = INCBIN_U32("graphics/interface/selector_outline.4bpp.lz"); -static const u32 sRedArrowGfx[] = INCBIN_U32("graphics/interface/red_arrow.4bpp.lz"); +static const u16 sRedInterface_Pal[] = INCBIN_U16("graphics/interface/red.gbapal"); // Shared by all of the below gfx +static const u32 sScrollIndicator_Gfx[] = INCBIN_U32("graphics/interface/scroll_indicator.4bpp.lz"); +static const u32 sOutlineCursor_Gfx[] = INCBIN_U32("graphics/interface/outline_cursor.4bpp.lz"); +static const u32 sArrowCursor_Gfx[] = INCBIN_U32("graphics/interface/arrow_cursor.4bpp.lz"); // code static void ListMenuDummyTask(u8 taskId) @@ -477,7 +481,7 @@ void DestroyListMenuTask(u8 listTaskId, u16 *scrollOffset, u16 *selectedRow) *selectedRow = list->selectedRow; if (list->taskId != TASK_NONE) - ListMenuRemoveCursorObject(list->taskId, list->template.cursorKind - 2); + ListMenuRemoveCursorObject(list->taskId, list->template.cursorKind - CURSOR_OBJECT_START); DestroyTask(listTaskId); } @@ -650,31 +654,33 @@ static void ListMenuDrawCursor(struct ListMenu *list) u8 y = list->selectedRow * yMultiplier + list->template.upText_Y; switch (list->template.cursorKind) { - case 0: + case CURSOR_BLACK_ARROW: ListMenuPrint(list, gText_SelectorArrow2, x, y); break; - case 1: + case CURSOR_INVISIBLE: break; - case 2: + case CURSOR_RED_OUTLINE: if (list->taskId == TASK_NONE) - list->taskId = ListMenuAddCursorObject(list, 0); + list->taskId = ListMenuAddCursorObject(list, CURSOR_RED_OUTLINE - CURSOR_OBJECT_START); ListMenuUpdateCursorObject(list->taskId, GetWindowAttribute(list->template.windowId, WINDOW_TILEMAP_LEFT) * 8 - 1, - GetWindowAttribute(list->template.windowId, WINDOW_TILEMAP_TOP) * 8 + y - 1, 0); + GetWindowAttribute(list->template.windowId, WINDOW_TILEMAP_TOP) * 8 + y - 1, + CURSOR_RED_OUTLINE - CURSOR_OBJECT_START); break; - case 3: + case CURSOR_RED_ARROW: if (list->taskId == TASK_NONE) - list->taskId = ListMenuAddCursorObject(list, 1); + list->taskId = ListMenuAddCursorObject(list, CURSOR_RED_ARROW - CURSOR_OBJECT_START); ListMenuUpdateCursorObject(list->taskId, GetWindowAttribute(list->template.windowId, WINDOW_TILEMAP_LEFT) * 8 + x, - GetWindowAttribute(list->template.windowId, WINDOW_TILEMAP_TOP) * 8 + y, 1); + GetWindowAttribute(list->template.windowId, WINDOW_TILEMAP_TOP) * 8 + y, + CURSOR_RED_ARROW - CURSOR_OBJECT_START); break; } } #undef TASK_NONE -static u8 ListMenuAddCursorObject(struct ListMenu *list, u32 cursorKind) +static u8 ListMenuAddCursorObject(struct ListMenu *list, u32 cursorObjId) { struct CursorStruct cursor; @@ -686,13 +692,13 @@ static u8 ListMenuAddCursorObject(struct ListMenu *list, u32 cursorKind) cursor.palTag = TAG_NONE; cursor.palNum = 15; - return ListMenuAddCursorObjectInternal(&cursor, cursorKind); + return ListMenuAddCursorObjectInternal(&cursor, cursorObjId); } static void ListMenuErasePrintedCursor(struct ListMenu *list, u16 selectedRow) { u8 cursorKind = list->template.cursorKind; - if (cursorKind == 0) + if (cursorKind == CURSOR_BLACK_ARROW) { u8 yMultiplier = GetFontAttribute(list->template.fontId, FONTATTR_MAX_LETTER_HEIGHT) + list->template.itemVerticalPadding; u8 width = GetMenuCursorDimensionByFont(list->template.fontId, 0); @@ -1071,18 +1077,18 @@ u8 AddScrollIndicatorArrowPair(const struct ScrollArrowsTemplate *arrowInfo, u16 struct ScrollIndicatorPair *data; u8 taskId; - spriteSheet.data = sRedArrowOtherGfx; + spriteSheet.data = sScrollIndicator_Gfx; spriteSheet.size = 0x100; spriteSheet.tag = arrowInfo->tileTag; LoadCompressedSpriteSheet(&spriteSheet); if (arrowInfo->palTag == TAG_NONE) { - LoadPalette(sRedArrowPal, (16 * arrowInfo->palNum) + 0x100, 0x20); + LoadPalette(sRedInterface_Pal, (16 * arrowInfo->palNum) + 0x100, 0x20); } else { - spritePal.data = sRedArrowPal; + spritePal.data = sRedInterface_Pal; spritePal.tag = arrowInfo->palTag; LoadSpritePalette(&spritePal); } @@ -1190,39 +1196,39 @@ void RemoveScrollIndicatorArrowPair(u8 taskId) DestroyTask(taskId); } -static u8 ListMenuAddCursorObjectInternal(struct CursorStruct *cursor, u32 cursorKind) +static u8 ListMenuAddCursorObjectInternal(struct CursorStruct *cursor, u32 cursorObjId) { - switch (cursorKind) + switch (cursorObjId) { - case 0: + case CURSOR_RED_OUTLINE - CURSOR_OBJECT_START: default: return ListMenuAddRedOutlineCursorObject(cursor); - case 1: + case CURSOR_RED_ARROW - CURSOR_OBJECT_START: return ListMenuAddRedArrowCursorObject(cursor); } } -static void ListMenuUpdateCursorObject(u8 taskId, u16 x, u16 y, u32 cursorKind) +static void ListMenuUpdateCursorObject(u8 taskId, u16 x, u16 y, u32 cursorObjId) { - switch (cursorKind) + switch (cursorObjId) { - case 0: + case CURSOR_RED_OUTLINE - CURSOR_OBJECT_START: ListMenuUpdateRedOutlineCursorObject(taskId, x, y); break; - case 1: + case CURSOR_RED_ARROW - CURSOR_OBJECT_START: ListMenuUpdateRedArrowCursorObject(taskId, x, y); break; } } -static void ListMenuRemoveCursorObject(u8 taskId, u32 cursorKind) +static void ListMenuRemoveCursorObject(u8 taskId, u32 cursorObjId) { - switch (cursorKind) + switch (cursorObjId) { - case 0: + case CURSOR_RED_OUTLINE - CURSOR_OBJECT_START: ListMenuRemoveRedOutlineCursorObject(taskId); break; - case 1: + case CURSOR_RED_ARROW - CURSOR_OBJECT_START: ListMenuRemoveRedArrowCursorObject(taskId); break; } @@ -1317,18 +1323,18 @@ static u8 ListMenuAddRedOutlineCursorObject(struct CursorStruct *cursor) struct SpriteTemplate spriteTemplate; u8 taskId; - spriteSheet.data = sSelectorOutlineGfx; + spriteSheet.data = sOutlineCursor_Gfx; spriteSheet.size = 0x100; spriteSheet.tag = cursor->tileTag; LoadCompressedSpriteSheet(&spriteSheet); if (cursor->palTag == TAG_NONE) { - LoadPalette(sRedArrowPal, (16 * cursor->palNum) + 0x100, 0x20); + LoadPalette(sRedInterface_Pal, (16 * cursor->palNum) + 0x100, 0x20); } else { - spritePal.data = sRedArrowPal; + spritePal.data = sRedInterface_Pal; spritePal.tag = cursor->palTag; LoadSpritePalette(&spritePal); } @@ -1402,18 +1408,18 @@ static u8 ListMenuAddRedArrowCursorObject(struct CursorStruct *cursor) struct SpriteTemplate spriteTemplate; u8 taskId; - spriteSheet.data = sRedArrowGfx; + spriteSheet.data = sArrowCursor_Gfx; spriteSheet.size = 0x80; spriteSheet.tag = cursor->tileTag; LoadCompressedSpriteSheet(&spriteSheet); if (cursor->palTag == TAG_NONE) { - LoadPalette(sRedArrowPal, (16 * cursor->palNum) + 0x100, 0x20); + LoadPalette(sRedInterface_Pal, (16 * cursor->palNum) + 0x100, 0x20); } else { - spritePal.data = sRedArrowPal; + spritePal.data = sRedInterface_Pal; spritePal.tag = cursor->palTag; LoadSpritePalette(&spritePal); } diff --git a/src/main_menu.c b/src/main_menu.c index 4fe0f5e61..39554d188 100644 --- a/src/main_menu.c +++ b/src/main_menu.c @@ -1631,7 +1631,7 @@ static void Task_NewGameBirchSpeech_ProcessNameYesNoMenu(u8 taskId) NewGameBirchSpeech_StartFadePlatformIn(taskId, 1); gTasks[taskId].func = Task_NewGameBirchSpeech_SlidePlatformAway2; break; - case -1: + case MENU_B_PRESSED: case 1: PlaySE(SE_SELECT); gTasks[taskId].func = Task_NewGameBirchSpeech_BoyOrGirl; diff --git a/src/mauville_old_man.c b/src/mauville_old_man.c index 0fb80342f..90e3671cc 100644 --- a/src/mauville_old_man.c +++ b/src/mauville_old_man.c @@ -479,7 +479,7 @@ static void BardSing(struct Task *task, struct BardSong *song) song->sound = GetWordSounds(word); GetWordPhonemes(song, MACRO1(word)); song->currWord++; - if (song->sound->var00 != 0xFF) + if (song->sound->songLengthId != 0xFF) song->state = 0; else { @@ -497,9 +497,9 @@ static void BardSing(struct Task *task, struct BardSong *song) { case 0: song->phonemeTimer = song->phonemes[song->currPhoneme].length; - if (sound->var00 <= 50) + if (sound->songLengthId <= 50) { - u8 num = sound->var00 / 3; + u8 num = sound->songLengthId / 3; m4aSongNumStart(PH_TRAP_HELD + 3 * num); } song->state = 2; @@ -507,7 +507,7 @@ static void BardSing(struct Task *task, struct BardSong *song) break; case 2: song->state = 1; - if (sound->var00 <= 50) + if (sound->songLengthId <= 50) { song->volume = 0x100 + sound->volume * 16; m4aMPlayVolumeControl(&gMPlayInfo_SE2, TRACKS_ALL, song->volume); @@ -529,7 +529,7 @@ static void BardSing(struct Task *task, struct BardSong *song) if (song->phonemeTimer == 0) { song->currPhoneme++; - if (song->currPhoneme != 6 && song->sound[song->currPhoneme].var00 != 0xFF) + if (song->currPhoneme != 6 && song->sound[song->currPhoneme].songLengthId != 0xFF) song->state = 0; else { diff --git a/src/menu_specialized.c b/src/menu_specialized.c index d844b8225..a5c52a474 100644 --- a/src/menu_specialized.c +++ b/src/menu_specialized.c @@ -188,7 +188,7 @@ static const struct ListMenuTemplate sMoveRelearnerMovesListTemplate = .itemVerticalPadding = 0, .scrollMultiple = LIST_NO_MULTIPLE_SCROLL, .fontId = FONT_NORMAL, - .cursorKind = 0 + .cursorKind = CURSOR_BLACK_ARROW }; //-------------- @@ -285,7 +285,7 @@ u8 MailboxMenu_CreateList(struct PlayerPCItemPageStruct *page) gMultiuseListMenuTemplate.moveCursorFunc = MailboxMenu_MoveCursorFunc; gMultiuseListMenuTemplate.itemPrintFunc = MailboxMenu_ItemPrintFunc; gMultiuseListMenuTemplate.fontId = FONT_NORMAL; - gMultiuseListMenuTemplate.cursorKind = 0; + gMultiuseListMenuTemplate.cursorKind = CURSOR_BLACK_ARROW; gMultiuseListMenuTemplate.lettersSpacing = 0; gMultiuseListMenuTemplate.itemVerticalPadding = 0; gMultiuseListMenuTemplate.scrollMultiple = LIST_NO_MULTIPLE_SCROLL; @@ -1543,7 +1543,7 @@ void DrawLevelUpWindowPg1(u16 windowId, u16 *statsBefore, u16 *statsAfter, u8 bg 0, 15 * i, color, - -1, + TEXT_SKIP_DRAW, sLvlUpStatStrings[i]); StringCopy(text, (statsDiff[i] >= 0) ? gText_Plus : gText_Dash); @@ -1552,7 +1552,7 @@ void DrawLevelUpWindowPg1(u16 windowId, u16 *statsBefore, u16 *statsAfter, u8 bg 56, 15 * i, color, - -1, + TEXT_SKIP_DRAW, text); if (abs(statsDiff[i]) <= 9) x = 18; @@ -1565,7 +1565,7 @@ void DrawLevelUpWindowPg1(u16 windowId, u16 *statsBefore, u16 *statsAfter, u8 bg 56 + x, 15 * i, color, - -1, + TEXT_SKIP_DRAW, text); } } @@ -1607,7 +1607,7 @@ void DrawLevelUpWindowPg2(u16 windowId, u16 *currStats, u8 bgClr, u8 fgClr, u8 s 0, 15 * i, color, - -1, + TEXT_SKIP_DRAW, sLvlUpStatStrings[i]); AddTextPrinterParameterized3(windowId, @@ -1615,7 +1615,7 @@ void DrawLevelUpWindowPg2(u16 windowId, u16 *currStats, u8 bgClr, u8 fgClr, u8 s 56 + x, 15 * i, color, - -1, + TEXT_SKIP_DRAW, text); } } diff --git a/src/move_relearner.c b/src/move_relearner.c index d9c943b57..3c8b06a78 100644 --- a/src/move_relearner.c +++ b/src/move_relearner.c @@ -553,7 +553,7 @@ static void DoMoveRelearnerMain(void) gSpecialVar_0x8004 = FALSE; sMoveRelearnerStruct->state = MENU_STATE_FADE_AND_RETURN; } - else if (selection == -1 || selection == 1) + else if (selection == MENU_B_PRESSED || selection == 1) { if (sMoveRelearnerMenuSate.showContestInfo == FALSE) { @@ -579,14 +579,14 @@ static void DoMoveRelearnerMain(void) break; case MENU_STATE_CONFIRM_DELETE_OLD_MOVE: { - s8 var = Menu_ProcessInputNoWrapClearOnChoose(); + s8 selection = Menu_ProcessInputNoWrapClearOnChoose(); - if (var == 0) + if (selection == 0) { FormatAndPrintText(gText_MoveRelearnerWhichMoveToForget); sMoveRelearnerStruct->state = MENU_STATE_PRINT_WHICH_MOVE_PROMPT; } - else if (var == -1 || var == 1) + else if (selection == MENU_B_PRESSED || selection == 1) { sMoveRelearnerStruct->state = MENU_STATE_PRINT_STOP_TEACHING; } @@ -606,13 +606,13 @@ static void DoMoveRelearnerMain(void) break; case MENU_STATE_CONFIRM_STOP_TEACHING: { - s8 var = Menu_ProcessInputNoWrapClearOnChoose(); + s8 selection = Menu_ProcessInputNoWrapClearOnChoose(); - if (var == 0) + if (selection == 0) { sMoveRelearnerStruct->state = MENU_STATE_CHOOSE_SETUP_STATE; } - else if (var == MENU_B_PRESSED || var == 1) + else if (selection == MENU_B_PRESSED || selection == 1) { // What's the point? It gets set to MENU_STATE_PRINT_TRYING_TO_LEARN_PROMPT, anyway. if (sMoveRelearnerMenuSate.showContestInfo == FALSE) diff --git a/src/mystery_gift_menu.c b/src/mystery_gift_menu.c index 78afc709c..f5d2b0401 100644 --- a/src/mystery_gift_menu.c +++ b/src/mystery_gift_menu.c @@ -234,9 +234,9 @@ static const struct ListMenuTemplate sListMenuTemplate_ThreeOptions = { .cursorShadowPal = 3, .lettersSpacing = 0, .itemVerticalPadding = 0, - .scrollMultiple = 0, + .scrollMultiple = LIST_NO_MULTIPLE_SCROLL, .fontId = FONT_NORMAL, - .cursorKind = 0 + .cursorKind = CURSOR_BLACK_ARROW }; static const struct ListMenuItem sListMenuItems_ReceiveSendToss[] = { @@ -279,9 +279,9 @@ static const struct ListMenuTemplate sListMenu_ReceiveSendToss = { .cursorShadowPal = 3, .lettersSpacing = 0, .itemVerticalPadding = 0, - .scrollMultiple = 0, + .scrollMultiple = LIST_NO_MULTIPLE_SCROLL, .fontId = FONT_NORMAL, - .cursorKind = 0 + .cursorKind = CURSOR_BLACK_ARROW }; static const struct ListMenuTemplate sListMenu_ReceiveToss = { @@ -300,9 +300,9 @@ static const struct ListMenuTemplate sListMenu_ReceiveToss = { .cursorShadowPal = 3, .lettersSpacing = 0, .itemVerticalPadding = 0, - .scrollMultiple = 0, + .scrollMultiple = LIST_NO_MULTIPLE_SCROLL, .fontId = FONT_NORMAL, - .cursorKind = 0 + .cursorKind = CURSOR_BLACK_ARROW }; static const struct ListMenuTemplate sListMenu_ReceiveSend = { @@ -321,9 +321,9 @@ static const struct ListMenuTemplate sListMenu_ReceiveSend = { .cursorShadowPal = 3, .lettersSpacing = 0, .itemVerticalPadding = 0, - .scrollMultiple = 0, + .scrollMultiple = LIST_NO_MULTIPLE_SCROLL, .fontId = FONT_NORMAL, - .cursorKind = 0 + .cursorKind = CURSOR_BLACK_ARROW }; static const struct ListMenuTemplate sListMenu_Receive = { @@ -342,9 +342,9 @@ static const struct ListMenuTemplate sListMenu_Receive = { .cursorShadowPal = 3, .lettersSpacing = 0, .itemVerticalPadding = 0, - .scrollMultiple = 0, + .scrollMultiple = LIST_NO_MULTIPLE_SCROLL, .fontId = FONT_NORMAL, - .cursorKind = 0 + .cursorKind = CURSOR_BLACK_ARROW }; static const u8 *const sUnusedMenuTexts[] = { diff --git a/src/overworld.c b/src/overworld.c index 54cdb3d1d..4d3ff8340 100644 --- a/src/overworld.c +++ b/src/overworld.c @@ -665,9 +665,9 @@ void SetWarpDestinationToDynamicWarp(u8 unusedWarpId) void SetWarpDestinationToHealLocation(u8 healLocationId) { - const struct HealLocation *warp = GetHealLocation(healLocationId); - if (warp) - SetWarpDestination(warp->group, warp->map, WARP_ID_NONE, warp->x, warp->y); + const struct HealLocation *healLocation = GetHealLocation(healLocationId); + if (healLocation) + SetWarpDestination(healLocation->group, healLocation->map, WARP_ID_NONE, healLocation->x, healLocation->y); } void SetWarpDestinationToLastHealLocation(void) @@ -735,9 +735,9 @@ void SetContinueGameWarp(s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y) void SetContinueGameWarpToHealLocation(u8 healLocationId) { - const struct HealLocation *warp = GetHealLocation(healLocationId); - if (warp) - SetWarpData(&gSaveBlock1Ptr->continueGameWarp, warp->group, warp->map, WARP_ID_NONE, warp->x, warp->y); + const struct HealLocation *healLocation = GetHealLocation(healLocationId); + if (healLocation) + SetWarpData(&gSaveBlock1Ptr->continueGameWarp, healLocation->group, healLocation->map, WARP_ID_NONE, healLocation->x, healLocation->y); } void SetContinueGameWarpToDynamicWarp(int unused) @@ -817,8 +817,8 @@ void LoadMapFromCameraTransition(u8 mapGroup, u8 mapNum) CopySecondaryTilesetToVramUsingHeap(gMapHeader.mapLayout); LoadSecondaryTilesetPalette(gMapHeader.mapLayout); - for (paletteIndex = 6; paletteIndex < 13; paletteIndex++) - ApplyWeatherGammaShiftToPal(paletteIndex); + for (paletteIndex = NUM_PALS_IN_PRIMARY; paletteIndex < NUM_PALS_TOTAL; paletteIndex++) + ApplyWeatherColorMapToPal(paletteIndex); InitSecondaryTilesetAnimation(); UpdateLocationHistoryForRoamer(); diff --git a/src/party_menu.c b/src/party_menu.c index 635cd3fe0..e00ae14a4 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -4466,8 +4466,8 @@ void Task_AbilityCapsule(u8 taskId) { case 0: // Can't use. - if (gBaseStats[tSpecies].abilities[0] == gBaseStats[tSpecies].abilities[1] - || gBaseStats[tSpecies].abilities[1] == 0 + if (gSpeciesInfo[tSpecies].abilities[0] == gSpeciesInfo[tSpecies].abilities[1] + || gSpeciesInfo[tSpecies].abilities[1] == 0 || tAbilityNum > 1 || !tSpecies) { @@ -4554,7 +4554,7 @@ void Task_AbilityPatch(u8 taskId) { case 0: // Can't use. - if (gBaseStats[tSpecies].abilities[tAbilityNum] == 0 + if (gSpeciesInfo[tSpecies].abilities[tAbilityNum] == 0 || !tSpecies || GetMonData(&gPlayerParty[tMonId], MON_DATA_ABILITY_NUM, NULL) > 1 ) @@ -5161,8 +5161,9 @@ void ItemUseCB_RareCandy(u8 taskId, TaskFunc task) u16 *itemPtr = &gSpecialVar_ItemId; bool8 cannotUseEffect; u8 holdEffectParam = ItemId_GetHoldEffectParam(*itemPtr); - sInitialLevel = GetMonData(mon, MON_DATA_LEVEL); + u16 targetSpecies = GetEvolutionTargetSpecies(mon, EVO_MODE_NORMAL, ITEM_NONE, NULL); + sInitialLevel = GetMonData(mon, MON_DATA_LEVEL); if (sInitialLevel != MAX_LEVEL) { BufferMonStatsToTaskData(mon, arrayPtr); @@ -5176,10 +5177,18 @@ void ItemUseCB_RareCandy(u8 taskId, TaskFunc task) PlaySE(SE_SELECT); if (cannotUseEffect) { - gPartyMenuUseExitCallback = FALSE; - DisplayPartyMenuMessage(gText_WontHaveEffect, TRUE); - ScheduleBgCopyTilemapToVram(2); - gTasks[taskId].func = task; + if (targetSpecies != SPECIES_NONE && holdEffectParam == 0) + { + PartyMenuTryEvolution(taskId); + RemoveBagItem(gSpecialVar_ItemId, 1); + } + else + { + gPartyMenuUseExitCallback = FALSE; + DisplayPartyMenuMessage(gText_WontHaveEffect, TRUE); + ScheduleBgCopyTilemapToVram(2); + gTasks[taskId].func = task; + } } else { diff --git a/src/player_pc.c b/src/player_pc.c index b1a323a32..f53e08f53 100644 --- a/src/player_pc.c +++ b/src/player_pc.c @@ -290,8 +290,9 @@ static const struct ListMenuTemplate sListMenuTemplate_ItemStorage = .cursorShadowPal = 3, .lettersSpacing = FALSE, .itemVerticalPadding = 0, - .scrollMultiple = FALSE, - .fontId = FONT_NARROW + .scrollMultiple = LIST_NO_MULTIPLE_SCROLL, + .fontId = FONT_NARROW, + .cursorKind = CURSOR_BLACK_ARROW, }; static const struct WindowTemplate sWindowTemplates_ItemStorage[ITEMPC_WIN_COUNT] = diff --git a/src/pokeblock.c b/src/pokeblock.c index cf0513f80..481f84c4a 100644 --- a/src/pokeblock.c +++ b/src/pokeblock.c @@ -440,7 +440,7 @@ static const struct ListMenuTemplate sPokeblockListMenuTemplate = .itemVerticalPadding = 0, .scrollMultiple = LIST_MULTIPLE_SCROLL_DPAD, .fontId = FONT_NORMAL, - .cursorKind = 1 + .cursorKind = CURSOR_INVISIBLE }; void OpenPokeblockCase(u8 caseId, void (*callback)(void)) diff --git a/src/pokedex.c b/src/pokedex.c index de7f186a5..ef71d3129 100644 --- a/src/pokedex.c +++ b/src/pokedex.c @@ -4379,7 +4379,7 @@ bool16 HasAllMons(void) for (i = 1; i < NATIONAL_DEX_COUNT + 1; i++) { - if (!(gBaseStats[i].flags & SPECIES_FLAG_MYTHICAL) && !GetSetPokedexFlag(i, FLAG_GET_CAUGHT)) + if (!(gSpeciesInfo[i].flags & SPECIES_FLAG_MYTHICAL) && !GetSetPokedexFlag(i, FLAG_GET_CAUGHT)) return FALSE; } @@ -4660,7 +4660,7 @@ static int DoPokedexSearch(u8 dexMode, u8 order, u8 abcGroup, u8 bodyColor, u8 t { species = NationalPokedexNumToSpecies(sPokedexView->pokedexList[i].dexNum); - if (bodyColor == gBaseStats[species].bodyColor) + if (bodyColor == gSpeciesInfo[species].bodyColor) { sPokedexView->pokedexList[resultsCount] = sPokedexView->pokedexList[i]; resultsCount++; @@ -4686,8 +4686,8 @@ static int DoPokedexSearch(u8 dexMode, u8 order, u8 abcGroup, u8 bodyColor, u8 t { species = NationalPokedexNumToSpecies(sPokedexView->pokedexList[i].dexNum); - types[0] = gBaseStats[species].type1; - types[1] = gBaseStats[species].type2; + types[0] = gSpeciesInfo[species].type1; + types[1] = gSpeciesInfo[species].type2; if (types[0] == type1 || types[1] == type1) { sPokedexView->pokedexList[resultsCount] = sPokedexView->pokedexList[i]; @@ -4704,8 +4704,8 @@ static int DoPokedexSearch(u8 dexMode, u8 order, u8 abcGroup, u8 bodyColor, u8 t { species = NationalPokedexNumToSpecies(sPokedexView->pokedexList[i].dexNum); - types[0] = gBaseStats[species].type1; - types[1] = gBaseStats[species].type2; + types[0] = gSpeciesInfo[species].type1; + types[1] = gSpeciesInfo[species].type2; if ((types[0] == type1 && types[1] == type2) || (types[0] == type2 && types[1] == type1)) { sPokedexView->pokedexList[resultsCount] = sPokedexView->pokedexList[i]; diff --git a/src/pokemon.c b/src/pokemon.c index 9478e7baf..8e8166fb3 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -39,7 +39,6 @@ #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" @@ -1950,7 +1949,7 @@ const s8 gNatureStatTable[NUM_NATURES][NUM_NATURE_STATS] = #include "data/pokemon/trainer_class_lookups.h" #include "data/pokemon/experience_tables.h" -#include "data/pokemon/base_stats.h" +#include "data/pokemon/species_info.h" #include "data/pokemon/level_up_learnsets.h" #include "data/pokemon/teachable_learnsets.h" #include "data/pokemon/evolution.h" @@ -1962,11 +1961,7 @@ const s8 gNatureStatTable[NUM_NATURES][NUM_NATURE_STATS] = #include "data/pokemon/form_change_table_pointers.h" // SPECIES_NONE are ignored in the following two tables, so decrement before accessing these arrays to get the right result -#if P_ENABLE_DEBUG == TRUE const u8 sMonFrontAnimIdsTable[NUM_SPECIES - 1] = -#else -static const u8 sMonFrontAnimIdsTable[NUM_SPECIES - 1] = -#endif { [SPECIES_BULBASAUR - 1] = ANIM_V_JUMPS_H_JUMPS, [SPECIES_IVYSAUR - 1] = ANIM_V_STRETCH, @@ -3465,16 +3460,32 @@ void CreateBoxMon(struct BoxPokemon *boxMon, u16 species, u8 level, u8 fixedIV, | (gSaveBlock2Ptr->playerTrainerId[2] << 16) | (gSaveBlock2Ptr->playerTrainerId[3] << 24); - if (gBaseStats[species].flags & SPECIES_FLAG_SHINY_LOCKED) +#if P_FLAG_FORCE_NO_SHINY != 0 + if (FlagGet(P_FLAG_FORCE_NO_SHINY)) { while (GET_SHINY_VALUE(value, personality) < SHINY_ODDS) - { personality = Random32(); - } } +#endif +#if P_FLAG_FORCE_SHINY != 0 + #if P_FLAG_FORCE_NO_SHINY != 0 else + #endif + if (FlagGet(P_FLAG_FORCE_SHINY)) { + while (GET_SHINY_VALUE(value, personality) >= SHINY_ODDS) + personality = Random32(); + } +#endif +#if P_FLAG_FORCE_SHINY != 0 || P_FLAG_FORCE_NO_SHINY != 0 + else +#endif + { + #if P_SHINY_BASE_CHANCE >= GEN_6 + u32 totalRerolls = 1; + #else u32 totalRerolls = 0; + #endif if (CheckBagHasItem(ITEM_SHINY_CHARM, 1)) totalRerolls += I_SHINY_CHARM_REROLLS; if (LURE_STEP_COUNT != 0) @@ -3499,8 +3510,8 @@ void CreateBoxMon(struct BoxPokemon *boxMon, u16 species, u8 level, u8 fixedIV, SetBoxMonData(boxMon, MON_DATA_LANGUAGE, &gGameLanguage); SetBoxMonData(boxMon, MON_DATA_OT_NAME, gSaveBlock2Ptr->playerName); SetBoxMonData(boxMon, MON_DATA_SPECIES, &species); - SetBoxMonData(boxMon, MON_DATA_EXP, &gExperienceTables[gBaseStats[species].growthRate][level]); - SetBoxMonData(boxMon, MON_DATA_FRIENDSHIP, &gBaseStats[species].friendship); + SetBoxMonData(boxMon, MON_DATA_EXP, &gExperienceTables[gSpeciesInfo[species].growthRate][level]); + SetBoxMonData(boxMon, MON_DATA_FRIENDSHIP, &gSpeciesInfo[species].friendship); value = GetCurrentRegionMapSectionId(); SetBoxMonData(boxMon, MON_DATA_MET_LOCATION, &value); SetBoxMonData(boxMon, MON_DATA_MET_LEVEL, &level); @@ -3539,7 +3550,7 @@ void CreateBoxMon(struct BoxPokemon *boxMon, u16 species, u8 level, u8 fixedIV, iv = (value & (MAX_IV_MASK << 10)) >> 10; SetBoxMonData(boxMon, MON_DATA_SPDEF_IV, &iv); - if (gBaseStats[species].flags & SPECIES_FLAG_ALL_PERFECT_IVS) + if (gSpeciesInfo[species].flags & SPECIES_FLAG_ALL_PERFECT_IVS) { iv = MAX_PER_STAT_IVS; SetBoxMonData(boxMon, MON_DATA_HP_IV, &iv); @@ -3550,7 +3561,7 @@ void CreateBoxMon(struct BoxPokemon *boxMon, u16 species, u8 level, u8 fixedIV, SetBoxMonData(boxMon, MON_DATA_SPDEF_IV, &iv); } #if P_LEGENDARY_PERFECT_IVS >= GEN_6 - else if (gBaseStats[species].flags & (SPECIES_FLAG_LEGENDARY | SPECIES_FLAG_MYTHICAL | SPECIES_FLAG_ULTRA_BEAST)) + else if (gSpeciesInfo[species].flags & (SPECIES_FLAG_LEGENDARY | SPECIES_FLAG_MYTHICAL | SPECIES_FLAG_ULTRA_BEAST)) { iv = MAX_PER_STAT_IVS; // Initialize a list of IV indices. @@ -3594,7 +3605,7 @@ void CreateBoxMon(struct BoxPokemon *boxMon, u16 species, u8 level, u8 fixedIV, #endif } - if (gBaseStats[species].abilities[1]) + if (gSpeciesInfo[species].abilities[1]) { value = personality & 1; SetBoxMonData(boxMon, MON_DATA_ABILITY_NUM, &value); @@ -4069,7 +4080,7 @@ static u16 CalculateBoxMonChecksum(struct BoxPokemon *boxMon) #define CALC_STAT(base, iv, ev, statIndex, field) \ { \ - u8 baseStat = gBaseStats[species].base; \ + u8 baseStat = gSpeciesInfo[species].base; \ s32 n = (((2 * baseStat + iv + ev / 4) * level) / 100) + 5; \ u8 nature = GetNature(mon); \ n = ModifyStatByNature(nature, n, statIndex); \ @@ -4104,7 +4115,7 @@ void CalculateMonStats(struct Pokemon *mon) } else { - s32 n = 2 * gBaseStats[species].baseHP + hpIV; + s32 n = 2 * gSpeciesInfo[species].baseHP + hpIV; newMaxHP = (((n + hpEV / 4) * level) / 100) + level + 10; } @@ -4164,7 +4175,7 @@ u8 GetLevelFromMonExp(struct Pokemon *mon) u32 exp = GetMonData(mon, MON_DATA_EXP, NULL); s32 level = 1; - while (level <= MAX_LEVEL && gExperienceTables[gBaseStats[species].growthRate][level] <= exp) + while (level <= MAX_LEVEL && gExperienceTables[gSpeciesInfo[species].growthRate][level] <= exp) level++; return level - 1; @@ -4176,7 +4187,7 @@ u8 GetLevelFromBoxMonExp(struct BoxPokemon *boxMon) u32 exp = GetBoxMonData(boxMon, MON_DATA_EXP, NULL); s32 level = 1; - while (level <= MAX_LEVEL && gExperienceTables[gBaseStats[species].growthRate][level] <= exp) + while (level <= MAX_LEVEL && gExperienceTables[gSpeciesInfo[species].growthRate][level] <= exp) level++; return level - 1; @@ -4418,15 +4429,15 @@ u8 GetBoxMonGender(struct BoxPokemon *boxMon) u16 species = GetBoxMonData(boxMon, MON_DATA_SPECIES, NULL); u32 personality = GetBoxMonData(boxMon, MON_DATA_PERSONALITY, NULL); - switch (gBaseStats[species].genderRatio) + switch (gSpeciesInfo[species].genderRatio) { case MON_MALE: case MON_FEMALE: case MON_GENDERLESS: - return gBaseStats[species].genderRatio; + return gSpeciesInfo[species].genderRatio; } - if (gBaseStats[species].genderRatio > (personality & 0xFF)) + if (gSpeciesInfo[species].genderRatio > (personality & 0xFF)) return MON_FEMALE; else return MON_MALE; @@ -4434,15 +4445,15 @@ u8 GetBoxMonGender(struct BoxPokemon *boxMon) u8 GetGenderFromSpeciesAndPersonality(u16 species, u32 personality) { - switch (gBaseStats[species].genderRatio) + switch (gSpeciesInfo[species].genderRatio) { case MON_MALE: case MON_FEMALE: case MON_GENDERLESS: - return gBaseStats[species].genderRatio; + return gSpeciesInfo[species].genderRatio; } - if (gBaseStats[species].genderRatio > (personality & 0xFF)) + if (gSpeciesInfo[species].genderRatio > (personality & 0xFF)) return MON_FEMALE; else return MON_MALE; @@ -5472,7 +5483,7 @@ u16 GetAbilityBySpecies(u16 species, u8 abilityNum) int i; if (abilityNum < NUM_ABILITY_SLOTS) - gLastUsedAbility = gBaseStats[species].abilities[abilityNum]; + gLastUsedAbility = gSpeciesInfo[species].abilities[abilityNum]; else gLastUsedAbility = ABILITY_NONE; @@ -5480,13 +5491,13 @@ u16 GetAbilityBySpecies(u16 species, u8 abilityNum) { for (i = NUM_NORMAL_ABILITY_SLOTS; i < NUM_ABILITY_SLOTS && gLastUsedAbility == ABILITY_NONE; i++) { - gLastUsedAbility = gBaseStats[species].abilities[i]; + gLastUsedAbility = gSpeciesInfo[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]; + gLastUsedAbility = gSpeciesInfo[species].abilities[i]; } return gLastUsedAbility; @@ -5638,8 +5649,8 @@ void PokemonToBattleMon(struct Pokemon *src, struct BattlePokemon *dst) dst->spDefense = GetMonData(src, MON_DATA_SPDEF, NULL); dst->abilityNum = GetMonData(src, MON_DATA_ABILITY_NUM, NULL); dst->otId = GetMonData(src, MON_DATA_OT_ID, NULL); - dst->type1 = gBaseStats[dst->species].type1; - dst->type2 = gBaseStats[dst->species].type2; + dst->type1 = gSpeciesInfo[dst->species].type1; + dst->type2 = gSpeciesInfo[dst->species].type2; dst->type3 = TYPE_MYSTERY; dst->ability = GetAbilityBySpecies(dst->species, dst->abilityNum); GetMonData(src, MON_DATA_NICKNAME, nickname); @@ -5891,14 +5902,14 @@ bool8 PokemonUseItemEffects(struct Pokemon *mon, u16 item, u8 partyIndex, u8 mov if (param == 0) // Rare Candy { - dataUnsigned = gExperienceTables[gBaseStats[GetMonData(mon, MON_DATA_SPECIES, NULL)].growthRate][GetMonData(mon, MON_DATA_LEVEL, NULL) + 1]; + dataUnsigned = gExperienceTables[gSpeciesInfo[GetMonData(mon, MON_DATA_SPECIES, NULL)].growthRate][GetMonData(mon, MON_DATA_LEVEL, NULL) + 1]; } 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]; + if (dataUnsigned > gExperienceTables[gSpeciesInfo[species].growthRate][MAX_LEVEL]) + dataUnsigned = gExperienceTables[gSpeciesInfo[species].growthRate][MAX_LEVEL]; } if (dataUnsigned != 0) // Failsafe @@ -6692,8 +6703,8 @@ u16 GetEvolutionTargetSpecies(struct Pokemon *mon, u8 mode, u16 evolutionItem, s for (j = 0; j < PARTY_SIZE; j++) { u16 currSpecies = GetMonData(&gPlayerParty[j], MON_DATA_SPECIES, NULL); - if (gBaseStats[currSpecies].type1 == TYPE_DARK - || gBaseStats[currSpecies].type2 == TYPE_DARK) + if (gSpeciesInfo[currSpecies].type1 == TYPE_DARK + || gSpeciesInfo[currSpecies].type2 == TYPE_DARK) { targetSpecies = gEvolutionTable[species][i].targetSpecies; break; @@ -7241,39 +7252,39 @@ void MonGainEVs(struct Pokemon *mon, u16 defeatedSpecies) { case STAT_HP: if (holdEffect == HOLD_EFFECT_POWER_ITEM && stat == STAT_HP) - evIncrease = (gBaseStats[defeatedSpecies].evYield_HP + bonus) * multiplier; + evIncrease = (gSpeciesInfo[defeatedSpecies].evYield_HP + bonus) * multiplier; else - evIncrease = gBaseStats[defeatedSpecies].evYield_HP * multiplier; + evIncrease = gSpeciesInfo[defeatedSpecies].evYield_HP * multiplier; break; case STAT_ATK: if (holdEffect == HOLD_EFFECT_POWER_ITEM && stat == STAT_ATK) - evIncrease = (gBaseStats[defeatedSpecies].evYield_Attack + bonus) * multiplier; + evIncrease = (gSpeciesInfo[defeatedSpecies].evYield_Attack + bonus) * multiplier; else - evIncrease = gBaseStats[defeatedSpecies].evYield_Attack * multiplier; + evIncrease = gSpeciesInfo[defeatedSpecies].evYield_Attack * multiplier; break; case STAT_DEF: if (holdEffect == HOLD_EFFECT_POWER_ITEM && stat == STAT_DEF) - evIncrease = (gBaseStats[defeatedSpecies].evYield_Defense + bonus) * multiplier; + evIncrease = (gSpeciesInfo[defeatedSpecies].evYield_Defense + bonus) * multiplier; else - evIncrease = gBaseStats[defeatedSpecies].evYield_Defense * multiplier; + evIncrease = gSpeciesInfo[defeatedSpecies].evYield_Defense * multiplier; break; case STAT_SPEED: if (holdEffect == HOLD_EFFECT_POWER_ITEM && stat == STAT_SPEED) - evIncrease = (gBaseStats[defeatedSpecies].evYield_Speed + bonus) * multiplier; + evIncrease = (gSpeciesInfo[defeatedSpecies].evYield_Speed + bonus) * multiplier; else - evIncrease = gBaseStats[defeatedSpecies].evYield_Speed * multiplier; + evIncrease = gSpeciesInfo[defeatedSpecies].evYield_Speed * multiplier; break; case STAT_SPATK: if (holdEffect == HOLD_EFFECT_POWER_ITEM && stat == STAT_SPATK) - evIncrease = (gBaseStats[defeatedSpecies].evYield_SpAttack + bonus) * multiplier; + evIncrease = (gSpeciesInfo[defeatedSpecies].evYield_SpAttack + bonus) * multiplier; else - evIncrease = gBaseStats[defeatedSpecies].evYield_SpAttack * multiplier; + evIncrease = gSpeciesInfo[defeatedSpecies].evYield_SpAttack * multiplier; break; case STAT_SPDEF: if (holdEffect == HOLD_EFFECT_POWER_ITEM && stat == STAT_SPDEF) - evIncrease = (gBaseStats[defeatedSpecies].evYield_SpDefense + bonus) * multiplier; + evIncrease = (gSpeciesInfo[defeatedSpecies].evYield_SpDefense + bonus) * multiplier; else - evIncrease = gBaseStats[defeatedSpecies].evYield_SpDefense * multiplier; + evIncrease = gSpeciesInfo[defeatedSpecies].evYield_SpDefense * multiplier; break; } @@ -7462,12 +7473,12 @@ bool8 TryIncrementMonLevel(struct Pokemon *mon) u16 species = GetMonData(mon, MON_DATA_SPECIES, 0); u8 nextLevel = GetMonData(mon, MON_DATA_LEVEL, 0) + 1; u32 expPoints = GetMonData(mon, MON_DATA_EXP, 0); - if (expPoints > gExperienceTables[gBaseStats[species].growthRate][MAX_LEVEL]) + if (expPoints > gExperienceTables[gSpeciesInfo[species].growthRate][MAX_LEVEL]) { - expPoints = gExperienceTables[gBaseStats[species].growthRate][MAX_LEVEL]; + expPoints = gExperienceTables[gSpeciesInfo[species].growthRate][MAX_LEVEL]; SetMonData(mon, MON_DATA_EXP, &expPoints); } - if (nextLevel > MAX_LEVEL || expPoints < gExperienceTables[gBaseStats[species].growthRate][nextLevel]) + if (nextLevel > MAX_LEVEL || expPoints < gExperienceTables[gSpeciesInfo[species].growthRate][nextLevel]) { return FALSE; } @@ -7824,7 +7835,7 @@ bool32 IsHMMove2(u16 move) bool8 IsMonSpriteNotFlipped(u16 species) { - return gBaseStats[species].noFlip; + return gSpeciesInfo[species].noFlip; } s8 GetMonFlavorRelation(struct Pokemon *mon, u8 flavor) @@ -7957,26 +7968,26 @@ void SetWildMonHeldItem(void) if (rnd < chanceNoItem) continue; if (rnd < chanceNotRare) - SetMonData(&gEnemyParty[i], MON_DATA_HELD_ITEM, &gBaseStats[species].itemCommon); + SetMonData(&gEnemyParty[i], MON_DATA_HELD_ITEM, &gSpeciesInfo[species].itemCommon); else - SetMonData(&gEnemyParty[i], MON_DATA_HELD_ITEM, &gBaseStats[species].itemRare); + SetMonData(&gEnemyParty[i], MON_DATA_HELD_ITEM, &gSpeciesInfo[species].itemRare); } } else { - if (gBaseStats[species].itemCommon == gBaseStats[species].itemRare && gBaseStats[species].itemCommon != ITEM_NONE) + if (gSpeciesInfo[species].itemCommon == gSpeciesInfo[species].itemRare && gSpeciesInfo[species].itemCommon != ITEM_NONE) { // Both held items are the same, 100% chance to hold item - SetMonData(&gEnemyParty[i], MON_DATA_HELD_ITEM, &gBaseStats[species].itemCommon); + SetMonData(&gEnemyParty[i], MON_DATA_HELD_ITEM, &gSpeciesInfo[species].itemCommon); } else { if (rnd < chanceNoItem) continue; if (rnd < chanceNotRare) - SetMonData(&gEnemyParty[i], MON_DATA_HELD_ITEM, &gBaseStats[species].itemCommon); + SetMonData(&gEnemyParty[i], MON_DATA_HELD_ITEM, &gSpeciesInfo[species].itemCommon); else - SetMonData(&gEnemyParty[i], MON_DATA_HELD_ITEM, &gBaseStats[species].itemRare); + SetMonData(&gEnemyParty[i], MON_DATA_HELD_ITEM, &gSpeciesInfo[species].itemRare); } } } @@ -8610,7 +8621,7 @@ void TrySpecialOverworldEvo(void) bool32 ShouldShowFemaleDifferences(u16 species, u32 personality) { - return (gBaseStats[species].flags & SPECIES_FLAG_GENDER_DIFFERENCE) && GetGenderFromSpeciesAndPersonality(species, personality) == MON_FEMALE; + return (gSpeciesInfo[species].flags & SPECIES_FLAG_GENDER_DIFFERENCE) && GetGenderFromSpeciesAndPersonality(species, personality) == MON_FEMALE; } void TryToSetBattleFormChangeMoves(struct Pokemon *mon) diff --git a/src/pokemon_debug.c b/src/pokemon_debug.c index 447590e28..2e9f04506 100644 --- a/src/pokemon_debug.c +++ b/src/pokemon_debug.c @@ -39,7 +39,7 @@ #include "constants/items.h" -#if P_ENABLE_DEBUG == TRUE +#if DEBUG_POKEMON_MENU == TRUE extern const struct BattleBackground sBattleTerrainTable[]; extern const struct CompressedSpriteSheet gSpriteSheet_EnemyShadow; extern const struct SpriteTemplate gSpriteTemplate_EnemyShadow; @@ -417,21 +417,21 @@ static void PrintInstructionsOnWindow(struct PokemonDebugMenu *data) FillWindowPixelBuffer(WIN_INSTRUCTIONS, 0x11); if (data->currentSubmenu == 0) { - if (gBaseStats[species].flags & SPECIES_FLAG_GENDER_DIFFERENCE) + if (gSpeciesInfo[species].flags & SPECIES_FLAG_GENDER_DIFFERENCE) AddTextPrinterParameterized(WIN_INSTRUCTIONS, fontId, textInstructionsGender, x, 0, 0, NULL); else AddTextPrinterParameterized(WIN_INSTRUCTIONS, fontId, textInstructions, x, 0, 0, NULL); } else if (data->currentSubmenu == 1) { - if (gBaseStats[species].flags & SPECIES_FLAG_GENDER_DIFFERENCE) + if (gSpeciesInfo[species].flags & SPECIES_FLAG_GENDER_DIFFERENCE) AddTextPrinterParameterized(WIN_INSTRUCTIONS, fontId, textInstructionsSubmenuOneGender, x, 0, 0, NULL); else AddTextPrinterParameterized(WIN_INSTRUCTIONS, fontId, textInstructionsSubmenuOne, x, 0, 0, NULL); } else if (data->currentSubmenu == 2) { - if (gBaseStats[species].flags & SPECIES_FLAG_GENDER_DIFFERENCE) + if (gSpeciesInfo[species].flags & SPECIES_FLAG_GENDER_DIFFERENCE) AddTextPrinterParameterized(WIN_INSTRUCTIONS, fontId, textInstructionsSubmenuTwoGender, x, 0, 0, NULL); else AddTextPrinterParameterized(WIN_INSTRUCTIONS, fontId, textInstructionsSubmenuTwo, x, 0, 0, NULL); @@ -485,7 +485,7 @@ static void PrintDigitChars(struct PokemonDebugMenu *data) text[i++] = CHAR_SPACE; text[i++] = CHAR_HYPHEN; - if (gBaseStats[species].flags & SPECIES_FLAG_GENDER_DIFFERENCE) + if (gSpeciesInfo[species].flags & SPECIES_FLAG_GENDER_DIFFERENCE) { if (data->isFemale) text[i++] = CHAR_FEMALE; @@ -688,14 +688,14 @@ static const struct CompressedSpritePalette *GetMonSpritePalStructCustom(u16 spe { if (isShiny) { - if ((gBaseStats[species].flags & SPECIES_FLAG_GENDER_DIFFERENCE) && isFemale) + if ((gSpeciesInfo[species].flags & SPECIES_FLAG_GENDER_DIFFERENCE) && isFemale) return &gMonShinyPaletteTableFemale[species]; else return &gMonShinyPaletteTable[species]; } else { - if ((gBaseStats[species].flags & SPECIES_FLAG_GENDER_DIFFERENCE) && isFemale) + if ((gSpeciesInfo[species].flags & SPECIES_FLAG_GENDER_DIFFERENCE) && isFemale) return &gMonPaletteTableFemale[species]; else return &gMonPaletteTable[species]; @@ -714,14 +714,14 @@ static void BattleLoadOpponentMonSpriteGfxCustom(u16 species, bool8 isFemale, bo if (isShiny) { - if ((gBaseStats[species].flags & SPECIES_FLAG_GENDER_DIFFERENCE) && isFemale) + if ((gSpeciesInfo[species].flags & SPECIES_FLAG_GENDER_DIFFERENCE) && isFemale) lzPaletteData = gMonShinyPaletteTableFemale[species].data; else lzPaletteData = gMonShinyPaletteTable[species].data; } else { - if ((gBaseStats[species].flags & SPECIES_FLAG_GENDER_DIFFERENCE) && isFemale) + if ((gSpeciesInfo[species].flags & SPECIES_FLAG_GENDER_DIFFERENCE) && isFemale) lzPaletteData = gMonPaletteTableFemale[species].data; else lzPaletteData = gMonPaletteTable[species].data; @@ -1493,7 +1493,7 @@ static void Handle_Input_Debug_Pokemon(u8 taskId) ReloadPokemonSprites(data); ApplyOffsetSpriteValues(data); } - if (JOY_NEW(SELECT_BUTTON) && (gBaseStats[data->currentmonId].flags & SPECIES_FLAG_GENDER_DIFFERENCE)) + if (JOY_NEW(SELECT_BUTTON) && (gSpeciesInfo[data->currentmonId].flags & SPECIES_FLAG_GENDER_DIFFERENCE)) { data->isFemale = !data->isFemale; PrintDigitChars(data); diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 2a321ff1a..1146d0789 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -551,8 +551,7 @@ struct PokemonStorageSystemData u16 *displayMonTilePtr; struct Sprite *displayMonSprite; u16 displayMonPalBuffer[0x40]; - u8 tileBuffer[0x800]; - u8 unusedBuffer[0x1800]; // Unused + u8 tileBuffer[MON_PIC_SIZE * 4]; // 4x the size of a 'Mon sprite to account for Castform u8 itemIconBuffer[0x800]; u8 wallpaperBgTilemapBuffer[0x1000]; u8 displayMenuTilemapBuffer[0x800]; @@ -8873,14 +8872,14 @@ static void TakeItemFromMon(u8 cursorArea, u8 cursorPos) if (cursorArea == CURSOR_AREA_IN_BOX) { SetCurrentBoxMonData(cursorPos, MON_DATA_HELD_ITEM, &itemId); - SetBoxMonIconObjMode(cursorPos, 1); + SetBoxMonIconObjMode(cursorPos, ST_OAM_OBJ_BLEND); SetMonFormPSS(&gPokemonStoragePtr->boxes[StorageGetCurrentBox()][cursorPos]); } else { struct Pokemon *mon = &gPlayerParty[cursorPos]; SetMonData(&gPlayerParty[cursorPos], MON_DATA_HELD_ITEM, &itemId); - SetPartyMonIconObjMode(cursorPos, 1); + SetPartyMonIconObjMode(cursorPos, ST_OAM_OBJ_BLEND); SetMonFormPSS(&mon->box); } @@ -8945,14 +8944,14 @@ static void GiveItemToMon(u8 cursorArea, u8 cursorPos) if (cursorArea == CURSOR_AREA_IN_BOX) { SetCurrentBoxMonData(cursorPos, MON_DATA_HELD_ITEM, &sStorage->movingItemId); - SetBoxMonIconObjMode(cursorPos, 0); + SetBoxMonIconObjMode(cursorPos, ST_OAM_OBJ_NORMAL); SetMonFormPSS(&gPokemonStoragePtr->boxes[StorageGetCurrentBox()][cursorPos]); } else { struct Pokemon *mon = &gPlayerParty[cursorPos]; SetMonData(&gPlayerParty[cursorPos], MON_DATA_HELD_ITEM, &sStorage->movingItemId); - SetPartyMonIconObjMode(cursorPos, 0); + SetPartyMonIconObjMode(cursorPos, ST_OAM_OBJ_NORMAL); SetMonFormPSS(&mon->box); } } @@ -8972,14 +8971,14 @@ static void MoveItemFromMonToBag(u8 cursorArea, u8 cursorPos) if (cursorArea == CURSOR_AREA_IN_BOX) { SetCurrentBoxMonData(cursorPos, MON_DATA_HELD_ITEM, &itemId); - SetBoxMonIconObjMode(cursorPos, 1); + SetBoxMonIconObjMode(cursorPos, ST_OAM_OBJ_BLEND); SetMonFormPSS(&gPokemonStoragePtr->boxes[StorageGetCurrentBox()][cursorPos]); } else { struct Pokemon *mon = &gPlayerParty[cursorPos]; SetMonData(&gPlayerParty[cursorPos], MON_DATA_HELD_ITEM, &itemId); - SetPartyMonIconObjMode(cursorPos, 1); + SetPartyMonIconObjMode(cursorPos, ST_OAM_OBJ_BLEND); SetMonFormPSS(&mon->box); } } diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index 93f85de6f..0e21d1e59 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -41,7 +41,6 @@ #include "text.h" #include "tv.h" #include "window.h" -#include "constants/battle_config.h" #include "constants/battle_move_effects.h" #include "constants/items.h" #include "constants/moves.h" @@ -1640,7 +1639,7 @@ static void Task_HandleInput(u8 taskId) PlaySE(SE_SELECT); BeginCloseSummaryScreen(taskId); } - #if P_ENABLE_DEBUG == TRUE + #if DEBUG_POKEMON_MENU == TRUE else if (JOY_NEW(SELECT_BUTTON) && !gMain.inBattle) { sMonSummaryScreen->callback = CB2_Debug_Pokemon; @@ -1648,7 +1647,7 @@ static void Task_HandleInput(u8 taskId) PlaySE(SE_SELECT); CloseSummaryScreen(taskId); } - #endif + #endif } } @@ -2714,8 +2713,8 @@ static void DrawExperienceProgressBar(struct Pokemon *unused) if (summary->level < MAX_LEVEL) { - u32 expBetweenLevels = gExperienceTables[gBaseStats[summary->species].growthRate][summary->level + 1] - gExperienceTables[gBaseStats[summary->species].growthRate][summary->level]; - u32 expSinceLastLevel = summary->exp - gExperienceTables[gBaseStats[summary->species].growthRate][summary->level]; + u32 expBetweenLevels = gExperienceTables[gSpeciesInfo[summary->species].growthRate][summary->level + 1] - gExperienceTables[gSpeciesInfo[summary->species].growthRate][summary->level]; + u32 expSinceLastLevel = summary->exp - gExperienceTables[gSpeciesInfo[summary->species].growthRate][summary->level]; // Calculate the number of 1-pixel "ticks" to illuminate in the experience progress bar. // There are 8 tiles that make up the bar, and each tile has 8 "ticks". Hence, the numerator @@ -3518,7 +3517,7 @@ static void PrintExpPointsNextLevel(void) PrintTextOnWindow(windowId, gStringVar1, x, 1, 0, 0); if (sum->level < MAX_LEVEL) - expToNextLevel = gExperienceTables[gBaseStats[sum->species].growthRate][sum->level + 1] - sum->exp; + expToNextLevel = gExperienceTables[gSpeciesInfo[sum->species].growthRate][sum->level + 1] - sum->exp; else expToNextLevel = 0; @@ -3903,10 +3902,10 @@ static void SetMonTypeIcons(void) } else { - SetTypeSpritePosAndPal(gBaseStats[summary->species].type1, 120, 48, SPRITE_ARR_ID_TYPE); - if (gBaseStats[summary->species].type1 != gBaseStats[summary->species].type2) + SetTypeSpritePosAndPal(gSpeciesInfo[summary->species].type1, 120, 48, SPRITE_ARR_ID_TYPE); + if (gSpeciesInfo[summary->species].type1 != gSpeciesInfo[summary->species].type2) { - SetTypeSpritePosAndPal(gBaseStats[summary->species].type2, 160, 48, SPRITE_ARR_ID_TYPE + 1); + SetTypeSpritePosAndPal(gSpeciesInfo[summary->species].type2, 160, 48, SPRITE_ARR_ID_TYPE + 1); SetSpriteInvisibility(SPRITE_ARR_ID_TYPE + 1, FALSE); } else diff --git a/src/pokenav_region_map.c b/src/pokenav_region_map.c index 39c1659a9..036ea5ff1 100755 --- a/src/pokenav_region_map.c +++ b/src/pokenav_region_map.c @@ -78,7 +78,7 @@ extern const u16 gRegionMapCityZoomTiles_Pal[]; extern const u32 gRegionMapCityZoomText_Gfx[]; static const u16 sMapSecInfoWindow_Pal[] = INCBIN_U16("graphics/pokenav/region_map/info_window.gbapal"); -static const u32 sRegionMapCityZoomTiles_Gfx[] = INCBIN_U32("graphics/pokenav/zoom_tiles.4bpp.lz"); +static const u32 sRegionMapCityZoomTiles_Gfx[] = INCBIN_U32("graphics/pokenav/region_map/zoom_tiles.4bpp.lz"); #include "data/region_map/city_map_tilemaps.h" diff --git a/src/recorded_battle.c b/src/recorded_battle.c index dead1dd7e..33228255d 100644 --- a/src/recorded_battle.c +++ b/src/recorded_battle.c @@ -21,11 +21,6 @@ #include "constants/rgb.h" #define BATTLER_RECORD_SIZE 664 -#define ILLEGAL_BATTLE_TYPES ((BATTLE_TYPE_LINK | BATTLE_TYPE_SAFARI | BATTLE_TYPE_FIRST_BATTLE \ - | BATTLE_TYPE_WALLY_TUTORIAL | BATTLE_TYPE_ROAMER | BATTLE_TYPE_EREADER_TRAINER \ - | BATTLE_TYPE_KYOGRE_GROUDON | BATTLE_TYPE_LEGENDARY | BATTLE_TYPE_REGI \ - | BATTLE_TYPE_RECORDED | BATTLE_TYPE_TRAINER_HILL | BATTLE_TYPE_SECRET_BASE \ - | BATTLE_TYPE_GROUDON | BATTLE_TYPE_KYOGRE | BATTLE_TYPE_RAYQUAZA)) struct PlayerInfo { @@ -301,7 +296,7 @@ static bool32 IsRecordedBattleSaveValid(struct RecordedBattleSave *save) { if (save->battleFlags == 0) return FALSE; - if (save->battleFlags & ILLEGAL_BATTLE_TYPES) + if (save->battleFlags & BATTLE_TYPE_RECORDED_INVALID) return FALSE; if (CalcByteArraySum((void *)(save), sizeof(*save) - 4) != save->checksum) return FALSE; diff --git a/src/region_map.c b/src/region_map.c index 8157f8a4e..67f1643d6 100644 --- a/src/region_map.c +++ b/src/region_map.c @@ -53,8 +53,6 @@ enum { TAG_FLY_ICON, }; -// Static type declarations - struct MultiNameFlyDest { const u8 *const *name; @@ -62,8 +60,6 @@ struct MultiNameFlyDest u16 flag; }; -// Static RAM declarations - static EWRAM_DATA struct RegionMap *sRegionMap = NULL; static EWRAM_DATA struct { @@ -78,8 +74,6 @@ static EWRAM_DATA struct { static bool32 sDrawFlyDestTextWindow; -// Static ROM declarations - static u8 ProcessRegionMapInput_Full(void); static u8 MoveRegionMapCursor_Full(void); static u8 ProcessRegionMapInput_Zoomed(void); @@ -115,20 +109,18 @@ static void CB_FadeInFlyMap(void); static void CB_HandleFlyMapInput(void); static void CB_ExitFlyMap(void); -// NOTE: Some of the below graphics are not in graphics/pokenav/region_map -// because porymap expects them to be in their current location. static const u16 sRegionMapCursorPal[] = INCBIN_U16("graphics/pokenav/region_map/cursor.gbapal"); static const u32 sRegionMapCursorSmallGfxLZ[] = INCBIN_U32("graphics/pokenav/region_map/cursor_small.4bpp.lz"); static const u32 sRegionMapCursorLargeGfxLZ[] = INCBIN_U32("graphics/pokenav/region_map/cursor_large.4bpp.lz"); -static const u16 sRegionMapBg_Pal[] = INCBIN_U16("graphics/pokenav/region_map.gbapal"); -static const u32 sRegionMapBg_GfxLZ[] = INCBIN_U32("graphics/pokenav/region_map.8bpp.lz"); -static const u32 sRegionMapBg_TilemapLZ[] = INCBIN_U32("graphics/pokenav/region_map_map.bin.lz"); +static const u16 sRegionMapBg_Pal[] = INCBIN_U16("graphics/pokenav/region_map/map.gbapal"); +static const u32 sRegionMapBg_GfxLZ[] = INCBIN_U32("graphics/pokenav/region_map/map.8bpp.lz"); +static const u32 sRegionMapBg_TilemapLZ[] = INCBIN_U32("graphics/pokenav/region_map/map.bin.lz"); static const u16 sRegionMapPlayerIcon_BrendanPal[] = INCBIN_U16("graphics/pokenav/region_map/brendan_icon.gbapal"); static const u8 sRegionMapPlayerIcon_BrendanGfx[] = INCBIN_U8("graphics/pokenav/region_map/brendan_icon.4bpp"); static const u16 sRegionMapPlayerIcon_MayPal[] = INCBIN_U16("graphics/pokenav/region_map/may_icon.gbapal"); static const u8 sRegionMapPlayerIcon_MayGfx[] = INCBIN_U8("graphics/pokenav/region_map/may_icon.4bpp"); -static const u8 sRegionMap_MapSectionLayout[] = INCBIN_U8("graphics/pokenav/region_map_section_layout.bin"); +#include "data/region_map/region_map_layout.h" #include "data/region_map/region_map_entries.h" static const u16 sRegionMap_SpecialPlaceLocations[][2] = @@ -305,40 +297,40 @@ static const u8 sMapHealLocations[][3] = [MAPSEC_MOSSDEEP_CITY] = {MAP_GROUP(MOSSDEEP_CITY), MAP_NUM(MOSSDEEP_CITY), HEAL_LOCATION_MOSSDEEP_CITY}, [MAPSEC_SOOTOPOLIS_CITY] = {MAP_GROUP(SOOTOPOLIS_CITY), MAP_NUM(SOOTOPOLIS_CITY), HEAL_LOCATION_SOOTOPOLIS_CITY}, [MAPSEC_EVER_GRANDE_CITY] = {MAP_GROUP(EVER_GRANDE_CITY), MAP_NUM(EVER_GRANDE_CITY), HEAL_LOCATION_EVER_GRANDE_CITY}, - [MAPSEC_ROUTE_101] = {MAP_GROUP(ROUTE101), MAP_NUM(ROUTE101), 0}, - [MAPSEC_ROUTE_102] = {MAP_GROUP(ROUTE102), MAP_NUM(ROUTE102), 0}, - [MAPSEC_ROUTE_103] = {MAP_GROUP(ROUTE103), MAP_NUM(ROUTE103), 0}, - [MAPSEC_ROUTE_104] = {MAP_GROUP(ROUTE104), MAP_NUM(ROUTE104), 0}, - [MAPSEC_ROUTE_105] = {MAP_GROUP(ROUTE105), MAP_NUM(ROUTE105), 0}, - [MAPSEC_ROUTE_106] = {MAP_GROUP(ROUTE106), MAP_NUM(ROUTE106), 0}, - [MAPSEC_ROUTE_107] = {MAP_GROUP(ROUTE107), MAP_NUM(ROUTE107), 0}, - [MAPSEC_ROUTE_108] = {MAP_GROUP(ROUTE108), MAP_NUM(ROUTE108), 0}, - [MAPSEC_ROUTE_109] = {MAP_GROUP(ROUTE109), MAP_NUM(ROUTE109), 0}, - [MAPSEC_ROUTE_110] = {MAP_GROUP(ROUTE110), MAP_NUM(ROUTE110), 0}, - [MAPSEC_ROUTE_111] = {MAP_GROUP(ROUTE111), MAP_NUM(ROUTE111), 0}, - [MAPSEC_ROUTE_112] = {MAP_GROUP(ROUTE112), MAP_NUM(ROUTE112), 0}, - [MAPSEC_ROUTE_113] = {MAP_GROUP(ROUTE113), MAP_NUM(ROUTE113), 0}, - [MAPSEC_ROUTE_114] = {MAP_GROUP(ROUTE114), MAP_NUM(ROUTE114), 0}, - [MAPSEC_ROUTE_115] = {MAP_GROUP(ROUTE115), MAP_NUM(ROUTE115), 0}, - [MAPSEC_ROUTE_116] = {MAP_GROUP(ROUTE116), MAP_NUM(ROUTE116), 0}, - [MAPSEC_ROUTE_117] = {MAP_GROUP(ROUTE117), MAP_NUM(ROUTE117), 0}, - [MAPSEC_ROUTE_118] = {MAP_GROUP(ROUTE118), MAP_NUM(ROUTE118), 0}, - [MAPSEC_ROUTE_119] = {MAP_GROUP(ROUTE119), MAP_NUM(ROUTE119), 0}, - [MAPSEC_ROUTE_120] = {MAP_GROUP(ROUTE120), MAP_NUM(ROUTE120), 0}, - [MAPSEC_ROUTE_121] = {MAP_GROUP(ROUTE121), MAP_NUM(ROUTE121), 0}, - [MAPSEC_ROUTE_122] = {MAP_GROUP(ROUTE122), MAP_NUM(ROUTE122), 0}, - [MAPSEC_ROUTE_123] = {MAP_GROUP(ROUTE123), MAP_NUM(ROUTE123), 0}, - [MAPSEC_ROUTE_124] = {MAP_GROUP(ROUTE124), MAP_NUM(ROUTE124), 0}, - [MAPSEC_ROUTE_125] = {MAP_GROUP(ROUTE125), MAP_NUM(ROUTE125), 0}, - [MAPSEC_ROUTE_126] = {MAP_GROUP(ROUTE126), MAP_NUM(ROUTE126), 0}, - [MAPSEC_ROUTE_127] = {MAP_GROUP(ROUTE127), MAP_NUM(ROUTE127), 0}, - [MAPSEC_ROUTE_128] = {MAP_GROUP(ROUTE128), MAP_NUM(ROUTE128), 0}, - [MAPSEC_ROUTE_129] = {MAP_GROUP(ROUTE129), MAP_NUM(ROUTE129), 0}, - [MAPSEC_ROUTE_130] = {MAP_GROUP(ROUTE130), MAP_NUM(ROUTE130), 0}, - [MAPSEC_ROUTE_131] = {MAP_GROUP(ROUTE131), MAP_NUM(ROUTE131), 0}, - [MAPSEC_ROUTE_132] = {MAP_GROUP(ROUTE132), MAP_NUM(ROUTE132), 0}, - [MAPSEC_ROUTE_133] = {MAP_GROUP(ROUTE133), MAP_NUM(ROUTE133), 0}, - [MAPSEC_ROUTE_134] = {MAP_GROUP(ROUTE134), MAP_NUM(ROUTE134), 0} + [MAPSEC_ROUTE_101] = {MAP_GROUP(ROUTE101), MAP_NUM(ROUTE101), HEAL_LOCATION_NONE}, + [MAPSEC_ROUTE_102] = {MAP_GROUP(ROUTE102), MAP_NUM(ROUTE102), HEAL_LOCATION_NONE}, + [MAPSEC_ROUTE_103] = {MAP_GROUP(ROUTE103), MAP_NUM(ROUTE103), HEAL_LOCATION_NONE}, + [MAPSEC_ROUTE_104] = {MAP_GROUP(ROUTE104), MAP_NUM(ROUTE104), HEAL_LOCATION_NONE}, + [MAPSEC_ROUTE_105] = {MAP_GROUP(ROUTE105), MAP_NUM(ROUTE105), HEAL_LOCATION_NONE}, + [MAPSEC_ROUTE_106] = {MAP_GROUP(ROUTE106), MAP_NUM(ROUTE106), HEAL_LOCATION_NONE}, + [MAPSEC_ROUTE_107] = {MAP_GROUP(ROUTE107), MAP_NUM(ROUTE107), HEAL_LOCATION_NONE}, + [MAPSEC_ROUTE_108] = {MAP_GROUP(ROUTE108), MAP_NUM(ROUTE108), HEAL_LOCATION_NONE}, + [MAPSEC_ROUTE_109] = {MAP_GROUP(ROUTE109), MAP_NUM(ROUTE109), HEAL_LOCATION_NONE}, + [MAPSEC_ROUTE_110] = {MAP_GROUP(ROUTE110), MAP_NUM(ROUTE110), HEAL_LOCATION_NONE}, + [MAPSEC_ROUTE_111] = {MAP_GROUP(ROUTE111), MAP_NUM(ROUTE111), HEAL_LOCATION_NONE}, + [MAPSEC_ROUTE_112] = {MAP_GROUP(ROUTE112), MAP_NUM(ROUTE112), HEAL_LOCATION_NONE}, + [MAPSEC_ROUTE_113] = {MAP_GROUP(ROUTE113), MAP_NUM(ROUTE113), HEAL_LOCATION_NONE}, + [MAPSEC_ROUTE_114] = {MAP_GROUP(ROUTE114), MAP_NUM(ROUTE114), HEAL_LOCATION_NONE}, + [MAPSEC_ROUTE_115] = {MAP_GROUP(ROUTE115), MAP_NUM(ROUTE115), HEAL_LOCATION_NONE}, + [MAPSEC_ROUTE_116] = {MAP_GROUP(ROUTE116), MAP_NUM(ROUTE116), HEAL_LOCATION_NONE}, + [MAPSEC_ROUTE_117] = {MAP_GROUP(ROUTE117), MAP_NUM(ROUTE117), HEAL_LOCATION_NONE}, + [MAPSEC_ROUTE_118] = {MAP_GROUP(ROUTE118), MAP_NUM(ROUTE118), HEAL_LOCATION_NONE}, + [MAPSEC_ROUTE_119] = {MAP_GROUP(ROUTE119), MAP_NUM(ROUTE119), HEAL_LOCATION_NONE}, + [MAPSEC_ROUTE_120] = {MAP_GROUP(ROUTE120), MAP_NUM(ROUTE120), HEAL_LOCATION_NONE}, + [MAPSEC_ROUTE_121] = {MAP_GROUP(ROUTE121), MAP_NUM(ROUTE121), HEAL_LOCATION_NONE}, + [MAPSEC_ROUTE_122] = {MAP_GROUP(ROUTE122), MAP_NUM(ROUTE122), HEAL_LOCATION_NONE}, + [MAPSEC_ROUTE_123] = {MAP_GROUP(ROUTE123), MAP_NUM(ROUTE123), HEAL_LOCATION_NONE}, + [MAPSEC_ROUTE_124] = {MAP_GROUP(ROUTE124), MAP_NUM(ROUTE124), HEAL_LOCATION_NONE}, + [MAPSEC_ROUTE_125] = {MAP_GROUP(ROUTE125), MAP_NUM(ROUTE125), HEAL_LOCATION_NONE}, + [MAPSEC_ROUTE_126] = {MAP_GROUP(ROUTE126), MAP_NUM(ROUTE126), HEAL_LOCATION_NONE}, + [MAPSEC_ROUTE_127] = {MAP_GROUP(ROUTE127), MAP_NUM(ROUTE127), HEAL_LOCATION_NONE}, + [MAPSEC_ROUTE_128] = {MAP_GROUP(ROUTE128), MAP_NUM(ROUTE128), HEAL_LOCATION_NONE}, + [MAPSEC_ROUTE_129] = {MAP_GROUP(ROUTE129), MAP_NUM(ROUTE129), HEAL_LOCATION_NONE}, + [MAPSEC_ROUTE_130] = {MAP_GROUP(ROUTE130), MAP_NUM(ROUTE130), HEAL_LOCATION_NONE}, + [MAPSEC_ROUTE_131] = {MAP_GROUP(ROUTE131), MAP_NUM(ROUTE131), HEAL_LOCATION_NONE}, + [MAPSEC_ROUTE_132] = {MAP_GROUP(ROUTE132), MAP_NUM(ROUTE132), HEAL_LOCATION_NONE}, + [MAPSEC_ROUTE_133] = {MAP_GROUP(ROUTE133), MAP_NUM(ROUTE133), HEAL_LOCATION_NONE}, + [MAPSEC_ROUTE_134] = {MAP_GROUP(ROUTE134), MAP_NUM(ROUTE134), HEAL_LOCATION_NONE}, }; static const u8 *const sEverGrandeCityNames[] = @@ -506,8 +498,6 @@ static const struct SpriteTemplate sFlyDestIconSpriteTemplate = .callback = SpriteCallbackDummy }; -// .text - void InitRegionMap(struct RegionMap *regionMap, bool8 zoomed) { InitRegionMapData(regionMap, NULL, zoomed); @@ -965,7 +955,7 @@ static u16 GetMapSecIdAt(u16 x, u16 y) } y -= MAPCURSOR_Y_MIN; x -= MAPCURSOR_X_MIN; - return sRegionMap_MapSectionLayout[x + y * MAP_WIDTH]; + return sRegionMap_MapSectionLayout[y][x]; } static void InitMapBasedOnPlayerLocation(void) @@ -2012,7 +2002,7 @@ static void CB_ExitFlyMap(void) SetWarpDestinationToHealLocation(FlagGet(FLAG_LANDMARK_POKEMON_LEAGUE) && sFlyMap->regionMap.posWithinMapSec == 0 ? HEAL_LOCATION_EVER_GRANDE_CITY_POKEMON_LEAGUE : HEAL_LOCATION_EVER_GRANDE_CITY); break; default: - if (sMapHealLocations[sFlyMap->regionMap.mapSecId][2] != 0) + if (sMapHealLocations[sFlyMap->regionMap.mapSecId][2] != HEAL_LOCATION_NONE) SetWarpDestinationToHealLocation(sMapHealLocations[sFlyMap->regionMap.mapSecId][2]); else SetWarpDestinationToMapWarp(sMapHealLocations[sFlyMap->regionMap.mapSecId][0], sMapHealLocations[sFlyMap->regionMap.mapSecId][1], WARP_ID_NONE); diff --git a/src/rom_header_gf.c b/src/rom_header_gf.c index d769d47f8..118cc5e27 100644 --- a/src/rom_header_gf.c +++ b/src/rom_header_gf.c @@ -6,6 +6,15 @@ #include "item.h" #include "pokeball.h" +// The purpose of this struct is for outside applications to be +// able to access parts of the ROM or its save file, like a public API. +// In vanilla, it was used by Colosseum and XD to access pokemon graphics. +// +// If this struct is rearranged in any way, it defeats the purpose of +// having it at all. Applications like PKHex or streaming HUDs may find +// these values useful, so there's some potential benefit to keeping it. +// If there's a compilation problem below, just comment out the assignment +// instead of changing this struct. struct GFRomHeader { u32 version; @@ -24,7 +33,8 @@ struct GFRomHeader u32 flagsOffset; u32 varsOffset; u32 pokedexOffset; - u32 seenOffset; + u32 seen1Offset; + u32 seen2Offset; u32 pokedexVar; u32 pokedexFlag; u32 mysteryEventFlag; @@ -59,7 +69,7 @@ struct GFRomHeader u32 externalEventFlagsOffset; u32 externalEventDataOffset; u32 unk18; - const struct BaseStats * baseStats; + const struct SpeciesInfo * speciesInfo; const u8 (* abilityNames)[]; const u8 *const * abilityDescriptions; const struct Item * items; @@ -103,7 +113,8 @@ static const struct GFRomHeader sGFRomHeader = { .flagsOffset = offsetof(struct SaveBlock1, flags), .varsOffset = offsetof(struct SaveBlock1, vars), .pokedexOffset = offsetof(struct SaveBlock2, pokedex), - .seenOffset = offsetof(struct SaveBlock1, dexSeen), + .seen1Offset = offsetof(struct SaveBlock1, dexSeen), + .seen2Offset = offsetof(struct SaveBlock1, dexSeen), // dex flags are combined, just provide the same pointer .pokedexVar = VAR_NATIONAL_DEX - VARS_START, .pokedexFlag = FLAG_RECEIVED_POKEDEX_FROM_BIRCH, .mysteryEventFlag = FLAG_SYS_MYSTERY_EVENT_ENABLE, @@ -139,7 +150,7 @@ static const struct GFRomHeader sGFRomHeader = { .externalEventFlagsOffset = offsetof(struct SaveBlock1, externalEventFlags), .externalEventDataOffset = offsetof(struct SaveBlock1, externalEventData), .unk18 = 0x00000000, - .baseStats = gBaseStats, + .speciesInfo = gSpeciesInfo, .abilityNames = gAbilityNames, .abilityDescriptions = gAbilityDescriptionPointers, .items = gItems, diff --git a/src/scrcmd.c b/src/scrcmd.c index e5ea3d5e1..745e0d882 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -1153,10 +1153,7 @@ bool8 ScrCmd_resetobjectsubpriority(struct ScriptContext *ctx) bool8 ScrCmd_faceplayer(struct ScriptContext *ctx) { if (gObjectEvents[gSelectedObjectEvent].active) - { - ObjectEventFaceOppositeDirection(&gObjectEvents[gSelectedObjectEvent], - GetPlayerFacingDirection()); - } + ObjectEventFaceOppositeDirection(&gObjectEvents[gSelectedObjectEvent], GetPlayerFacingDirection()); return FALSE; } diff --git a/src/secret_base.c b/src/secret_base.c index ea1999343..1a4a0ac9c 100644 --- a/src/secret_base.c +++ b/src/secret_base.c @@ -214,7 +214,7 @@ static const struct ListMenuTemplate sRegistryListMenuTemplate = .itemVerticalPadding = 0, .scrollMultiple = LIST_NO_MULTIPLE_SCROLL, .fontId = FONT_NORMAL, - .cursorKind = 0, + .cursorKind = CURSOR_BLACK_ARROW, }; static void ClearSecretBase(struct SecretBase *secretBase) @@ -953,7 +953,7 @@ static void BuildRegistryMenuItems(u8 taskId) } sRegistryMenu->items[count].name = gText_Cancel; - sRegistryMenu->items[count].id = -2; + sRegistryMenu->items[count].id = LIST_CANCEL; tNumBases = count + 1; if (tNumBases < 8) tMaxShownItems = tNumBases; diff --git a/src/shop.c b/src/shop.c old mode 100755 new mode 100644 index d3569c2e5..ef0f07b38 --- a/src/shop.c +++ b/src/shop.c @@ -216,7 +216,7 @@ static const struct ListMenuTemplate sShopBuyMenuListTemplate = .itemVerticalPadding = 0, .scrollMultiple = LIST_NO_MULTIPLE_SCROLL, .fontId = FONT_NARROW, - .cursorKind = 0 + .cursorKind = CURSOR_BLACK_ARROW }; static const struct BgTemplate sShopBuyMenuBgTemplates[] = @@ -808,9 +808,9 @@ static void BuyMenuDrawMapBg(void) metatileLayerType = METATILE_LAYER_TYPE_COVERED; if (metatile < NUM_METATILES_IN_PRIMARY) - BuyMenuDrawMapMetatile(i, j, (u16 *)mapLayout->primaryTileset->metatiles + metatile * 8, metatileLayerType); + BuyMenuDrawMapMetatile(i, j, mapLayout->primaryTileset->metatiles + metatile * NUM_TILES_PER_METATILE, metatileLayerType); else - BuyMenuDrawMapMetatile(i, j, (u16 *)mapLayout->secondaryTileset->metatiles + ((metatile - NUM_METATILES_IN_PRIMARY) * 8), metatileLayerType); + BuyMenuDrawMapMetatile(i, j, mapLayout->secondaryTileset->metatiles + ((metatile - NUM_METATILES_IN_PRIMARY) * NUM_TILES_PER_METATILE), metatileLayerType); } } } diff --git a/src/start_menu.c b/src/start_menu.c index 32596aa96..3e5025f8f 100644 --- a/src/start_menu.c +++ b/src/start_menu.c @@ -286,7 +286,7 @@ static void BuildStartMenuActions(void) } else { - #if DEBUG_SYSTEM_ENABLE == TRUE && DEBUG_SYSTEM_IN_MENU == TRUE + #if DEBUG_OVERWORLD_MENU == TRUE && DEBUG_OVERWORLD_IN_MENU == TRUE BuildDebugStartMenu(); #else BuildNormalStartMenu(); @@ -760,7 +760,7 @@ static bool8 StartMenuDebugCallback(void) RemoveExtraStartMenuWindows(); HideStartMenuDebug(); // Hide start menu without enabling movement -#if DEBUG_SYSTEM_ENABLE == TRUE +#if DEBUG_OVERWORLD_MENU == TRUE FreezeObjectEvents(); Debug_ShowMainMenu(); #endif @@ -1044,7 +1044,7 @@ static u8 SaveConfirmInputCallback(void) sSaveDialogCallback = SaveFileExistsCallback; return SAVE_IN_PROGRESS; } - case -1: // B Button + case MENU_B_PRESSED: case 1: // No HideSaveInfoWindow(); HideSaveMessageWindow(); @@ -1090,7 +1090,7 @@ static u8 SaveOverwriteInputCallback(void) case 0: // Yes sSaveDialogCallback = SaveSavingMessageCallback; return SAVE_IN_PROGRESS; - case -1: // B Button + case MENU_B_PRESSED: case 1: // No HideSaveInfoWindow(); HideSaveMessageWindow(); @@ -1209,7 +1209,7 @@ static u8 BattlePyramidRetireInputCallback(void) { case 0: // Yes return SAVE_CANCELED; - case -1: // B Button + case MENU_B_PRESSED: case 1: // No HideSaveMessageWindow(); return SAVE_SUCCESS; @@ -1312,7 +1312,7 @@ static void Task_SaveAfterLinkBattle(u8 taskId) } else { - gSoftResetDisabled = 1; + gSoftResetDisabled = TRUE; *state = 1; } break; @@ -1326,7 +1326,7 @@ static void Task_SaveAfterLinkBattle(u8 taskId) { ClearContinueGameWarpStatus2(); *state = 3; - gSoftResetDisabled = 0; + gSoftResetDisabled = FALSE; } break; case 3: diff --git a/src/tileset_anims.c b/src/tileset_anims.c index 6a7589e36..fd3982ea1 100644 --- a/src/tileset_anims.c +++ b/src/tileset_anims.c @@ -484,14 +484,14 @@ const u16 *const gTilesetAnims_BikeShop_BlinkingLights[] = { gTilesetAnims_BikeShop_BlinkingLights_Frame1 }; -const u16 gTilesetAnims_Sootopolis_StormyWater_Frame0[] = INCBIN_U16("data/tilesets/secondary/sootopolis/anim/stormy_water/0.4bpp"); -const u16 gTilesetAnims_Sootopolis_StormyWater_Frame1[] = INCBIN_U16("data/tilesets/secondary/sootopolis/anim/stormy_water/1.4bpp"); -const u16 gTilesetAnims_Sootopolis_StormyWater_Frame2[] = INCBIN_U16("data/tilesets/secondary/sootopolis/anim/stormy_water/2.4bpp"); -const u16 gTilesetAnims_Sootopolis_StormyWater_Frame3[] = INCBIN_U16("data/tilesets/secondary/sootopolis/anim/stormy_water/3.4bpp"); -const u16 gTilesetAnims_Sootopolis_StormyWater_Frame4[] = INCBIN_U16("data/tilesets/secondary/sootopolis/anim/stormy_water/4.4bpp"); -const u16 gTilesetAnims_Sootopolis_StormyWater_Frame5[] = INCBIN_U16("data/tilesets/secondary/sootopolis/anim/stormy_water/5.4bpp"); -const u16 gTilesetAnims_Sootopolis_StormyWater_Frame6[] = INCBIN_U16("data/tilesets/secondary/sootopolis/anim/stormy_water/6.4bpp"); -const u16 gTilesetAnims_Sootopolis_StormyWater_Frame7[] = INCBIN_U16("data/tilesets/secondary/sootopolis/anim/stormy_water/7.4bpp"); +const u16 gTilesetAnims_Sootopolis_StormyWater_Frame0[] = INCBIN_U16("data/tilesets/secondary/sootopolis/anim/stormy_water/0_kyogre.4bpp", "data/tilesets/secondary/sootopolis/anim/stormy_water/0_groudon.4bpp"); +const u16 gTilesetAnims_Sootopolis_StormyWater_Frame1[] = INCBIN_U16("data/tilesets/secondary/sootopolis/anim/stormy_water/1_kyogre.4bpp", "data/tilesets/secondary/sootopolis/anim/stormy_water/1_groudon.4bpp"); +const u16 gTilesetAnims_Sootopolis_StormyWater_Frame2[] = INCBIN_U16("data/tilesets/secondary/sootopolis/anim/stormy_water/2_kyogre.4bpp", "data/tilesets/secondary/sootopolis/anim/stormy_water/2_groudon.4bpp"); +const u16 gTilesetAnims_Sootopolis_StormyWater_Frame3[] = INCBIN_U16("data/tilesets/secondary/sootopolis/anim/stormy_water/3_kyogre.4bpp", "data/tilesets/secondary/sootopolis/anim/stormy_water/3_groudon.4bpp"); +const u16 gTilesetAnims_Sootopolis_StormyWater_Frame4[] = INCBIN_U16("data/tilesets/secondary/sootopolis/anim/stormy_water/4_kyogre.4bpp", "data/tilesets/secondary/sootopolis/anim/stormy_water/4_groudon.4bpp"); +const u16 gTilesetAnims_Sootopolis_StormyWater_Frame5[] = INCBIN_U16("data/tilesets/secondary/sootopolis/anim/stormy_water/5_kyogre.4bpp", "data/tilesets/secondary/sootopolis/anim/stormy_water/5_groudon.4bpp"); +const u16 gTilesetAnims_Sootopolis_StormyWater_Frame6[] = INCBIN_U16("data/tilesets/secondary/sootopolis/anim/stormy_water/6_kyogre.4bpp", "data/tilesets/secondary/sootopolis/anim/stormy_water/6_groudon.4bpp"); +const u16 gTilesetAnims_Sootopolis_StormyWater_Frame7[] = INCBIN_U16("data/tilesets/secondary/sootopolis/anim/stormy_water/7_kyogre.4bpp", "data/tilesets/secondary/sootopolis/anim/stormy_water/7_groudon.4bpp"); const u16 tileset_anims_space_8[16] = {}; const u16 gTilesetAnims_Unused1_Frame0[] = INCBIN_U16("data/tilesets/secondary/unused_1/0.4bpp"); diff --git a/src/tilesets.c b/src/tilesets.c new file mode 100644 index 000000000..2cc1da81d --- /dev/null +++ b/src/tilesets.c @@ -0,0 +1,7 @@ +#include "global.h" +#include "tilesets.h" +#include "tileset_anims.h" + +#include "data/tilesets/graphics.h" +#include "data/tilesets/metatiles.h" +#include "data/tilesets/headers.h" diff --git a/src/trade.c b/src/trade.c index 8ded41a1e..03a05681e 100644 --- a/src/trade.c +++ b/src/trade.c @@ -1505,7 +1505,7 @@ static u8 CheckValidityOfTradeMons(u8 *aliveMons, u8 playerPartyCount, u8 player } // Can't trade specific species - if (gBaseStats[partnerSpecies].flags & SPECIES_FLAG_CANNOT_BE_TRADED) + if (gSpeciesInfo[partnerSpecies].flags & SPECIES_FLAG_CANNOT_BE_TRADED) return PARTNER_MON_INVALID; // Partner cant trade Egg or non-Hoenn mon if player doesn't have National Dex @@ -2365,7 +2365,7 @@ static u32 CanTradeSelectedMon(struct Pokemon *playerParty, int partyCount, int } // Can't trade specific species - if (gBaseStats[species[monIdx]].flags & SPECIES_FLAG_CANNOT_BE_TRADED) + if (gSpeciesInfo[species[monIdx]].flags & SPECIES_FLAG_CANNOT_BE_TRADED) return CANT_TRADE_INVALID_MON; // Make Eggs not count for numMonsLeft @@ -2461,7 +2461,7 @@ int GetUnionRoomTradeMessageId(struct RfuGameCompatibilityData player, struct Rf return UR_TRADE_MSG_MON_CANT_BE_TRADED; // Can't trade specific species - if (gBaseStats[playerSpecies].flags & SPECIES_FLAG_CANNOT_BE_TRADED) + if (gSpeciesInfo[playerSpecies].flags & SPECIES_FLAG_CANNOT_BE_TRADED) return UR_TRADE_MSG_MON_CANT_BE_TRADED; if (partnerSpecies == SPECIES_EGG) @@ -2473,8 +2473,8 @@ 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 - && gBaseStats[playerSpecies2].type2 != requestedType) + if (gSpeciesInfo[playerSpecies2].type1 != requestedType + && gSpeciesInfo[playerSpecies2].type2 != requestedType) return UR_TRADE_MSG_NOT_MON_PARTNER_WANTS; } @@ -2512,7 +2512,7 @@ int CanRegisterMonForTradingBoard(struct RfuGameCompatibilityData player, u16 sp return CANT_REGISTER_MON_NOW; // Can't trade specific species - if (gBaseStats[species].flags & SPECIES_FLAG_CANNOT_BE_TRADED) + if (gSpeciesInfo[species].flags & SPECIES_FLAG_CANNOT_BE_TRADED) return CANT_REGISTER_MON; if (hasNationalDex) diff --git a/src/trainer_hill.c b/src/trainer_hill.c index 206060f1b..ac73c3fae 100644 --- a/src/trainer_hill.c +++ b/src/trainer_hill.c @@ -924,7 +924,7 @@ u8 GetTrainerEncounterMusicIdInTrainerHill(u16 trainerId) static void SetTrainerHillMonLevel(struct Pokemon *mon, u8 level) { u16 species = GetMonData(mon, MON_DATA_SPECIES, NULL); - u32 exp = gExperienceTables[gBaseStats[species].growthRate][level]; + u32 exp = gExperienceTables[gSpeciesInfo[species].growthRate][level]; SetMonData(mon, MON_DATA_EXP, &exp); SetMonData(mon, MON_DATA_LEVEL, &level); diff --git a/src/union_room.c b/src/union_room.c index 5bc010a46..2a170e304 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -271,7 +271,7 @@ static void GetURoomActivityRejectMsg(u8 *, s32, u32); static u32 ConvPartnerUnameAndGetWhetherMetAlready(struct RfuPlayer *); static void GetURoomActivityStartMsg(u8 *, u8); static void UR_ClearBg0(void); -static s32 IsRequestedTypeOrEggInPlayerParty(u32, u32); +static s32 IsRequestedTradeInPlayerParty(u32, u32); static bool32 UR_PrintFieldMessage(const u8 *); static s32 GetChatLeaderActionRequestMessage(u8 *, u32, u16 *, struct WirelessLink_URoom *); static void Task_InitUnionRoom(u8 taskId); @@ -319,9 +319,9 @@ static void PrintPlayerNameAndIdOnWindow(u8 windowId) PrintUnionRoomText(windowId, FONT_NORMAL, text, 0, 17, UR_COLOR_DEFAULT); } -static void GetAwaitingCommunicationText(u8 *dst, u8 caseId) +static void GetAwaitingCommunicationText(u8 *dst, u8 activity) { - switch (caseId) + switch (activity) { case ACTIVITY_BATTLE_SINGLE: case ACTIVITY_BATTLE_DOUBLE: @@ -343,18 +343,18 @@ static void GetAwaitingCommunicationText(u8 *dst, u8 caseId) case ACTIVITY_CONTEST_TOUGH: // BUG: argument *dst isn't used, instead it always prints to gStringVar4 // not an issue in practice since Gamefreak never used any other arguments here besides gStringVar4 - #ifndef BUGFIX + #ifndef BUGFIX StringExpandPlaceholders(gStringVar4, sText_AwaitingCommunication); - #else + #else StringExpandPlaceholders(dst, sText_AwaitingCommunication); - #endif + #endif break; } } -static bool32 IsActivityWithVariableGroupSize(u32 caseId) +static bool32 IsActivityWithVariableGroupSize(u32 activity) { - switch (caseId) + switch (activity) { case ACTIVITY_POKEMON_JUMP: case ACTIVITY_BERRY_CRUSH: @@ -507,11 +507,11 @@ static void Task_TryBecomeLinkLeader(u8 taskId) // BUG: sPlayerActivityGroupSize was meant below, not gPlayerCurrActivity // This will be false for all but ACTIVITY_BATTLE_DOUBLE and ACTIVITY_DECLINE // All this changes is which of two texts gets printed - #ifdef BUGFIX + #ifdef BUGFIX id = (GROUP_MAX(sPlayerActivityGroupSize) == 2) ? 0 : 1; - #else + #else id = (GROUP_MAX(gPlayerCurrActivity) == 2) ? 1 : 0; - #endif + #endif if (PrintOnTextbox(&data->textState, sPlayerUnavailableTexts[id])) { data->playerCount = LeaderPrunePlayerList(data->playerList); @@ -559,6 +559,7 @@ static void Task_TryBecomeLinkLeader(u8 taskId) { if (data->joinRequestAnswer == RFU_STATUS_JOIN_GROUP_OK) { + // Sent "OK" data->playerList->players[data->playerCount].newPlayerCountdown = 0; RedrawListMenu(data->listTaskId); data->playerCount++; @@ -596,6 +597,7 @@ static void Task_TryBecomeLinkLeader(u8 taskId) } else if (val == 2) { + // Disconnect RfuSetStatus(RFU_STATUS_OK, 0); data->state = LL_STATE_GET_AWAITING_PLAYERS_TEXT; } @@ -734,9 +736,9 @@ static void Leader_DestroyResources(struct WirelessLink_Leader *data) Free(data->incomingPlayerList); } -static void Leader_GetAcceptNewMemberPrompt(u8 *dst, u8 caseId) +static void Leader_GetAcceptNewMemberPrompt(u8 *dst, u8 activity) { - switch (caseId) + switch (activity) { case ACTIVITY_BATTLE_SINGLE: case ACTIVITY_BATTLE_DOUBLE: @@ -765,9 +767,9 @@ static void Leader_GetAcceptNewMemberPrompt(u8 *dst, u8 caseId) } } -static void GetYouDeclinedTheOfferMessage(u8 *dst, u8 caseId) +static void GetYouDeclinedTheOfferMessage(u8 *dst, u8 activity) { - switch (caseId) + switch (activity) { case ACTIVITY_BATTLE_SINGLE | IN_UNION_ROOM: case ACTIVITY_TRADE | IN_UNION_ROOM: @@ -780,9 +782,9 @@ static void GetYouDeclinedTheOfferMessage(u8 *dst, u8 caseId) } } -static void GetYouAskedToJoinGroupPleaseWaitMessage(u8 *dst, u8 caseId) +static void GetYouAskedToJoinGroupPleaseWaitMessage(u8 *dst, u8 activity) { - switch (caseId) + switch (activity) { case ACTIVITY_BATTLE_SINGLE: case ACTIVITY_BATTLE_DOUBLE: @@ -809,9 +811,9 @@ static void GetYouAskedToJoinGroupPleaseWaitMessage(u8 *dst, u8 caseId) } } -static void GetGroupLeaderSentAnOKMessage(u8 *dst, u8 caseId) +static void GetGroupLeaderSentAnOKMessage(u8 *dst, u8 activity) { - switch (caseId) + switch (activity) { case ACTIVITY_BATTLE_SINGLE: case ACTIVITY_BATTLE_DOUBLE: @@ -1039,7 +1041,7 @@ static void Task_TryJoinLinkGroup(u8 taskId) break; case 0: id = ListMenu_ProcessInput(data->listTaskId); - if (JOY_NEW(A_BUTTON) && id != MENU_B_PRESSED) + if (JOY_NEW(A_BUTTON) && id != LIST_NOTHING_CHOSEN) { // this unused variable along with the assignment is needed to match u32 activity = data->playerList->players[id].rfu.data.activity; @@ -1469,9 +1471,7 @@ static void Task_CreateTradeMenu(u8 taskId) u8 CreateTask_CreateTradeMenu(void) { - u8 taskId = CreateTask(Task_CreateTradeMenu, 0); - - return taskId; + return CreateTask(Task_CreateTradeMenu, 0); } static void Task_StartUnionRoomTrade(u8 taskId) @@ -2147,11 +2147,10 @@ static void Task_CardOrNewsWithFriend(u8 taskId) break; case 0: id = ListMenu_ProcessInput(data->listTaskId); - if (JOY_NEW(A_BUTTON) && id != -1) + if (JOY_NEW(A_BUTTON) && id != LIST_NOTHING_CHOSEN) { // this unused variable along with the assignment is needed to match - u32 unusedVar; - unusedVar = data->playerList->players[id].rfu.data.activity; + u32 activity = data->playerList->players[id].rfu.data.activity; if (data->playerList->players[id].groupScheduledAnim == UNION_ROOM_SPAWN_IN && !data->playerList->players[id].rfu.data.startedActivity) { @@ -2504,7 +2503,7 @@ static void Task_RunUnionRoom(u8 taskId) break; case UR_STATE_INIT_OBJECTS: CreateUnionRoomPlayerSprites(uroom->spriteIds, taskData[0]); - if (++taskData[0] == 8) + if (++taskData[0] == MAX_UNION_ROOM_LEADERS) uroom->state = UR_STATE_INIT_LINK; break; case UR_STATE_INIT_LINK: @@ -2711,7 +2710,7 @@ static void Task_RunUnionRoom(u8 taskId) &uroom->topListMenuId, &sWindowTemplate_InviteToActivity, &sListMenuTemplate_InviteToActivity); - if (input != -1) + if (input != LIST_NOTHING_CHOSEN) { if (!gReceivedRemoteLinkPlayers) { @@ -2721,7 +2720,7 @@ static void Task_RunUnionRoom(u8 taskId) { uroom->partnerYesNoResponse = 0; playerGender = GetUnionRoomPlayerGender(taskData[1], uroom->playerList); - if (input == -2 || input == IN_UNION_ROOM) + if (input == LIST_CANCEL || input == IN_UNION_ROOM) { uroom->playerSendBuffer[0] = IN_UNION_ROOM; Rfu_SendPacket(uroom->playerSendBuffer); @@ -3068,9 +3067,9 @@ static void Task_RunUnionRoom(u8 taskId) &uroom->tradeBoardHeaderWindowId, &sWindowTemplate_RegisterForTrade, &sListMenuTemplate_RegisterForTrade); - if (input != -1) + if (input != LIST_NOTHING_CHOSEN) { - if (input == -2 || input == 3) + if (input == LIST_CANCEL || input == 3) // Exit { uroom->state = UR_STATE_MAIN; HandleCancelActivity(TRUE); @@ -3090,7 +3089,7 @@ static void Task_RunUnionRoom(u8 taskId) } break; case UR_STATE_REGISTER_SELECT_MON_FADE: - BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK); + BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); uroom->state = UR_STATE_REGISTER_SELECT_MON; break; case UR_STATE_REGISTER_SELECT_MON: @@ -3107,11 +3106,11 @@ static void Task_RunUnionRoom(u8 taskId) &uroom->tradeBoardHeaderWindowId, &sWindowTemplate_TradingBoardRequestType, &sMenuTemplate_TradingBoardRequestType); - if (input != -1) + if (input != LIST_NOTHING_CHOSEN) { switch (input) { - case -2: + case LIST_CANCEL: case NUMBER_OF_MON_TYPES: // Exit ResetUnionRoomTrade(&sUnionRoomTrade); SetTradeBoardRegisteredMonInfo(TYPE_NORMAL, SPECIES_NONE, 0); @@ -3166,18 +3165,18 @@ static void Task_RunUnionRoom(u8 taskId) &sWindowTemplate_TradingBoardMain, &sTradeBoardListMenuTemplate, uroom->playerList); - if (input != -1) + if (input != LIST_NOTHING_CHOSEN) { switch (input) { - case -2: + case LIST_CANCEL: case 8: // EXIT HandleCancelActivity(TRUE); uroom->state = UR_STATE_MAIN; break; default: UR_ClearBg0(); - switch (IsRequestedTypeOrEggInPlayerParty(uroom->playerList->players[input].rfu.data.tradeType, uroom->playerList->players[input].rfu.data.tradeSpecies)) + switch (IsRequestedTradeInPlayerParty(uroom->playerList->players[input].rfu.data.tradeType, uroom->playerList->players[input].rfu.data.tradeSpecies)) { case UR_TRADE_MATCH: CopyAndTranslatePlayerName(gStringVar1, &uroom->playerList->players[input]); @@ -3707,12 +3706,12 @@ static s32 ListMenuHandler_AllItemsAvailable(u8 *state, u8 *windowId, u8 *listMe ClearStdWindowAndFrame(*windowId, TRUE); RemoveWindow(*windowId); *state = 0; - return -2; + return LIST_CANCEL; } break; } - return -1; + return LIST_NOTHING_CHOSEN; } static s32 TradeBoardMenuHandler(u8 *state, u8 *mainWindowId, u8 *listMenuId, u8 *headerWindowId, @@ -3742,13 +3741,14 @@ static s32 TradeBoardMenuHandler(u8 *state, u8 *mainWindowId, u8 *listMenuId, u8 input = ListMenu_ProcessInput(*listMenuId); if (JOY_NEW(A_BUTTON | B_BUTTON)) { + // Exit or B button if (input == 8 || JOY_NEW(B_BUTTON)) { DestroyListMenuTask(*listMenuId, NULL, NULL); RemoveWindow(*mainWindowId); DeleteTradeBoardWindow(*headerWindowId); *state = 0; - return -2; + return LIST_CANCEL; } else { @@ -3770,7 +3770,7 @@ static s32 TradeBoardMenuHandler(u8 *state, u8 *mainWindowId, u8 *listMenuId, u8 break; } - return -1; + return LIST_NOTHING_CHOSEN; } static void UR_ClearBg0(void) @@ -4090,7 +4090,7 @@ static s32 UnionRoomGetPlayerInteractionResponse(struct RfuPlayerList *list, boo } } -void ItemPrintFunc_EmptyList(u8 windowId, u32 itemId, u8 y) +static void ItemPrintFunc_EmptyList(u8 windowId, u32 itemId, u8 y) { } @@ -4120,7 +4120,7 @@ static void TradeBoardListMenuItemPrintFunc(u8 windowId, u32 itemId, u8 y) struct WirelessLink_Leader *leader = sWirelessLinkMain.leader; struct RfuGameData *gameData; s32 i, j; - u8 playerName[11]; + u8 playerName[RFU_USER_NAME_LENGTH + 1]; if (itemId == LIST_HEADER && y == sTradeBoardListMenuTemplate.upText_Y) { @@ -4168,7 +4168,7 @@ static s32 GetUnionRoomPlayerGender(s32 playerIdx, struct RfuPlayerList *list) return list->players[playerIdx].rfu.data.playerGender; } -static s32 IsRequestedTypeOrEggInPlayerParty(u32 type, u32 species) +static s32 IsRequestedTradeInPlayerParty(u32 type, u32 species) { s32 i; @@ -4187,7 +4187,7 @@ static s32 IsRequestedTypeOrEggInPlayerParty(u32 type, u32 species) for (i = 0; i < gPlayerPartyCount; i++) { species = GetMonData(&gPlayerParty[i], MON_DATA_SPECIES2); - if (gBaseStats[species].type1 == type || gBaseStats[species].type2 == type) + if (gSpeciesInfo[species].type1 == type || gSpeciesInfo[species].type2 == type) return UR_TRADE_MATCH; } return UR_TRADE_NOTYPE; diff --git a/src/union_room_chat.c b/src/union_room_chat.c index e1ca7c0b0..eb902fbe6 100755 --- a/src/union_room_chat.c +++ b/src/union_room_chat.c @@ -1171,7 +1171,7 @@ static void Chat_AskQuitChatting(void) input = ProcessMenuInput(); switch (input) { - case -1: + case MENU_B_PRESSED: case 1: StartDisplaySubtask(CHATDISPLAY_FUNC_DESTROY_YESNO, 0); sChat->funcState = 3; @@ -1210,7 +1210,7 @@ static void Chat_AskQuitChatting(void) input = ProcessMenuInput(); switch (input) { - case -1: + case MENU_B_PRESSED: case 1: StartDisplaySubtask(CHATDISPLAY_FUNC_DESTROY_YESNO, 0); sChat->funcState = 3; @@ -1512,7 +1512,7 @@ static void Chat_SaveAndExit(void) input = ProcessMenuInput(); switch (input) { - case -1: + case MENU_B_PRESSED: case 1: sChat->funcState = 12; break; @@ -1537,7 +1537,7 @@ static void Chat_SaveAndExit(void) input = ProcessMenuInput(); switch (input) { - case -1: + case MENU_B_PRESSED: case 1: sChat->funcState = 12; break; diff --git a/src/union_room_player_avatar.c b/src/union_room_player_avatar.c index 0eed65a63..31f535310 100644 --- a/src/union_room_player_avatar.c +++ b/src/union_room_player_avatar.c @@ -340,15 +340,10 @@ static void AnimateUnionRoomPlayer(u32 leaderId, struct UnionRoomObject * object } break; case 1: - if (object->schedAnim == UNION_ROOM_SPAWN_OUT) - { - object->state = 3; - object->animState = 0; - } - else - { + if (object->schedAnim != UNION_ROOM_SPAWN_OUT) break; - } + object->state = 3; + object->animState = 0; // fallthrough case 3: if (AnimateUnionRoomPlayerDespawn(&object->animState, leaderId, object) == 1) diff --git a/src/wild_encounter.c b/src/wild_encounter.c index 69f60182f..2c9730cd5 100644 --- a/src/wild_encounter.c +++ b/src/wild_encounter.c @@ -18,7 +18,6 @@ #include "battle_pike.h" #include "battle_pyramid.h" #include "constants/abilities.h" -#include "constants/battle_config.h" #include "constants/game_stat.h" #include "constants/item.h" #include "constants/items.h" @@ -434,7 +433,7 @@ static void CreateWildMon(u16 species, u8 level) ZeroEnemyPartyMons(); checkCuteCharm = TRUE; - switch (gBaseStats[species].genderRatio) + switch (gSpeciesInfo[species].genderRatio) { case MON_MALE: case MON_FEMALE: @@ -554,7 +553,7 @@ static bool8 DoMassOutbreakEncounterTest(void) return FALSE; } -static bool8 DoWildEncounterRateDiceRoll(u16 encounterRate) +static bool8 EncounterOddsCheck(u16 encounterRate) { if (Random() % MAX_ENCOUNTER_RATE < encounterRate) return TRUE; @@ -562,7 +561,8 @@ static bool8 DoWildEncounterRateDiceRoll(u16 encounterRate) return FALSE; } -static bool8 DoWildEncounterRateTest(u32 encounterRate, bool8 ignoreAbility) +// Returns true if it will try to create a wild encounter. +static bool8 WildEncounterCheck(u32 encounterRate, bool8 ignoreAbility) { encounterRate *= 16; if (TestPlayerAvatarFlags(PLAYER_AVATAR_FLAG_MACH_BIKE | PLAYER_AVATAR_FLAG_ACRO_BIKE)) @@ -598,10 +598,12 @@ static bool8 DoWildEncounterRateTest(u32 encounterRate, bool8 ignoreAbility) } if (encounterRate > MAX_ENCOUNTER_RATE) encounterRate = MAX_ENCOUNTER_RATE; - return DoWildEncounterRateDiceRoll(encounterRate); + return EncounterOddsCheck(encounterRate); } -static bool8 DoGlobalWildEncounterDiceRoll(void) +// When you first step on a different type of metatile, there's a 40% chance it +// skips the wild encounter check entirely. +static bool8 AllowWildCheckOnNewMetatile(void) { if (Random() % 100 >= 60) return FALSE; @@ -620,7 +622,7 @@ static bool8 AreLegendariesInSootopolisPreventingEncounters(void) return FlagGet(FLAG_LEGENDARIES_IN_SOOTOPOLIS); } -bool8 StandardWildEncounter(u16 currMetaTileBehavior, u16 previousMetaTileBehavior) +bool8 StandardWildEncounter(u16 curMetatileBehavior, u16 prevMetatileBehavior) { u16 headerId; struct Roamer *roamer; @@ -634,9 +636,9 @@ bool8 StandardWildEncounter(u16 currMetaTileBehavior, u16 previousMetaTileBehavi if (gMapHeader.mapLayoutId == LAYOUT_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_WILD_MONS) { headerId = GetBattlePikeWildMonHeaderId(); - if (previousMetaTileBehavior != currMetaTileBehavior && !DoGlobalWildEncounterDiceRoll()) + if (prevMetatileBehavior != curMetatileBehavior && !AllowWildCheckOnNewMetatile()) return FALSE; - else if (DoWildEncounterRateTest(gBattlePikeWildMonHeaders[headerId].landMonsInfo->encounterRate, FALSE) != TRUE) + else if (WildEncounterCheck(gBattlePikeWildMonHeaders[headerId].landMonsInfo->encounterRate, FALSE) != TRUE) return FALSE; else if (TryGenerateWildMon(gBattlePikeWildMonHeaders[headerId].landMonsInfo, WILD_AREA_LAND, WILD_CHECK_KEEN_EYE) != TRUE) return FALSE; @@ -649,9 +651,9 @@ bool8 StandardWildEncounter(u16 currMetaTileBehavior, u16 previousMetaTileBehavi if (gMapHeader.mapLayoutId == LAYOUT_BATTLE_FRONTIER_BATTLE_PYRAMID_FLOOR) { headerId = gSaveBlock2Ptr->frontier.curChallengeBattleNum; - if (previousMetaTileBehavior != currMetaTileBehavior && !DoGlobalWildEncounterDiceRoll()) + if (prevMetatileBehavior != curMetatileBehavior && !AllowWildCheckOnNewMetatile()) return FALSE; - else if (DoWildEncounterRateTest(gBattlePyramidWildMonHeaders[headerId].landMonsInfo->encounterRate, FALSE) != TRUE) + else if (WildEncounterCheck(gBattlePyramidWildMonHeaders[headerId].landMonsInfo->encounterRate, FALSE) != TRUE) return FALSE; else if (TryGenerateWildMon(gBattlePyramidWildMonHeaders[headerId].landMonsInfo, WILD_AREA_LAND, WILD_CHECK_KEEN_EYE) != TRUE) return FALSE; @@ -663,13 +665,13 @@ bool8 StandardWildEncounter(u16 currMetaTileBehavior, u16 previousMetaTileBehavi } else { - if (MetatileBehavior_IsLandWildEncounter(currMetaTileBehavior) == TRUE) + if (MetatileBehavior_IsLandWildEncounter(curMetatileBehavior) == TRUE) { if (gWildMonHeaders[headerId].landMonsInfo == NULL) return FALSE; - else if (previousMetaTileBehavior != currMetaTileBehavior && !DoGlobalWildEncounterDiceRoll()) + else if (prevMetatileBehavior != curMetatileBehavior && !AllowWildCheckOnNewMetatile()) return FALSE; - else if (DoWildEncounterRateTest(gWildMonHeaders[headerId].landMonsInfo->encounterRate, FALSE) != TRUE) + else if (WildEncounterCheck(gWildMonHeaders[headerId].landMonsInfo->encounterRate, FALSE) != TRUE) return FALSE; if (TryStartRoamerEncounter() == TRUE) @@ -709,16 +711,16 @@ bool8 StandardWildEncounter(u16 currMetaTileBehavior, u16 previousMetaTileBehavi return FALSE; } } - else if (MetatileBehavior_IsWaterWildEncounter(currMetaTileBehavior) == TRUE - || (TestPlayerAvatarFlags(PLAYER_AVATAR_FLAG_SURFING) && MetatileBehavior_IsBridgeOverWater(currMetaTileBehavior) == TRUE)) + else if (MetatileBehavior_IsWaterWildEncounter(curMetatileBehavior) == TRUE + || (TestPlayerAvatarFlags(PLAYER_AVATAR_FLAG_SURFING) && MetatileBehavior_IsBridgeOverWater(curMetatileBehavior) == TRUE)) { if (AreLegendariesInSootopolisPreventingEncounters() == TRUE) return FALSE; else if (gWildMonHeaders[headerId].waterMonsInfo == NULL) return FALSE; - else if (previousMetaTileBehavior != currMetaTileBehavior && !DoGlobalWildEncounterDiceRoll()) + else if (prevMetatileBehavior != curMetatileBehavior && !AllowWildCheckOnNewMetatile()) return FALSE; - else if (DoWildEncounterRateTest(gWildMonHeaders[headerId].waterMonsInfo->encounterRate, FALSE) != TRUE) + else if (WildEncounterCheck(gWildMonHeaders[headerId].waterMonsInfo->encounterRate, FALSE) != TRUE) return FALSE; if (TryStartRoamerEncounter() == TRUE) @@ -769,7 +771,7 @@ void RockSmashWildEncounter(void) { gSpecialVar_Result = FALSE; } - else if (DoWildEncounterRateTest(wildPokemonInfo->encounterRate, TRUE) == TRUE + else if (WildEncounterCheck(wildPokemonInfo->encounterRate, TRUE) == TRUE && TryGenerateWildMon(wildPokemonInfo, WILD_AREA_ROCKS, WILD_CHECK_REPEL | WILD_CHECK_KEEN_EYE) == TRUE) { BattleSetup_StartWildBattle(); @@ -1028,7 +1030,7 @@ static bool8 TryGetRandomWildMonIndexByType(const struct WildPokemon *wildMon, u for (validMonCount = 0, i = 0; i < numMon; i++) { - if (gBaseStats[wildMon[i].species].type1 == type || gBaseStats[wildMon[i].species].type2 == type) + if (gSpeciesInfo[wildMon[i].species].type1 == type || gSpeciesInfo[wildMon[i].species].type2 == type) validIndexes[validMonCount++] = i; } @@ -1102,7 +1104,7 @@ bool8 TryDoDoubleWildBattle(void) return TRUE; #endif #if B_DOUBLE_WILD_CHANCE != 0 - else if ((Random() % 100) + 1 < B_DOUBLE_WILD_CHANCE) + else if ((Random() % 100) + 1 <= B_DOUBLE_WILD_CHANCE) return TRUE; #endif return FALSE; diff --git a/src/wireless_communication_status_screen.c b/src/wireless_communication_status_screen.c index 40e4bb84d..d18df8bc7 100644 --- a/src/wireless_communication_status_screen.c +++ b/src/wireless_communication_status_screen.c @@ -18,6 +18,7 @@ #include "union_room.h" #include "constants/songs.h" #include "constants/union_room.h" +#include "constants/rgb.h" enum { COLORMODE_NORMAL, @@ -51,9 +52,26 @@ static void Task_WirelessCommunicationScreen(u8); static void WCSS_AddTextPrinterParameterized(u8, u8, const u8 *, u8, u8, u8); static bool32 UpdateCommunicationCounts(u32 *, u32 *, u32 *, u8); -static const u16 sBgTiles_Pal[] = INCBIN_U16("graphics/link/wireless_info_screen.gbapal"); -static const u32 sBgTiles_Gfx[] = INCBIN_U32("graphics/link/wireless_info_screen.4bpp.lz"); -static const u32 sBgTiles_Tilemap[] = INCBIN_U32("graphics/link/wireless_info_screen.bin.lz"); +static const u16 sPalettes[][16] = { + INCBIN_U16("graphics/wireless_status_screen/default.gbapal"), + {}, // All black. Never read + INCBIN_U16("graphics/wireless_status_screen/anim_00.gbapal"), + INCBIN_U16("graphics/wireless_status_screen/anim_01.gbapal"), + INCBIN_U16("graphics/wireless_status_screen/anim_02.gbapal"), + INCBIN_U16("graphics/wireless_status_screen/anim_03.gbapal"), + INCBIN_U16("graphics/wireless_status_screen/anim_04.gbapal"), + INCBIN_U16("graphics/wireless_status_screen/anim_05.gbapal"), + INCBIN_U16("graphics/wireless_status_screen/anim_06.gbapal"), + INCBIN_U16("graphics/wireless_status_screen/anim_07.gbapal"), + INCBIN_U16("graphics/wireless_status_screen/anim_08.gbapal"), + INCBIN_U16("graphics/wireless_status_screen/anim_09.gbapal"), + INCBIN_U16("graphics/wireless_status_screen/anim_10.gbapal"), + INCBIN_U16("graphics/wireless_status_screen/anim_11.gbapal"), + INCBIN_U16("graphics/wireless_status_screen/anim_12.gbapal"), + INCBIN_U16("graphics/wireless_status_screen/anim_13.gbapal") +}; +static const u32 sBgTiles_Gfx[] = INCBIN_U32("graphics/wireless_status_screen/bg.4bpp.lz"); +static const u32 sBgTiles_Tilemap[] = INCBIN_U32("graphics/wireless_status_screen/bg.bin.lz"); static const struct BgTemplate sBgTemplates[] = { { @@ -193,7 +211,7 @@ static void CB2_InitWirelessCommunicationScreen(void) ChangeBgY(0, 0, BG_COORD_SET); ChangeBgX(1, 0, BG_COORD_SET); ChangeBgY(1, 0, BG_COORD_SET); - LoadPalette(sBgTiles_Pal, 0x00, 0x20); + LoadPalette(sPalettes, 0x00, 0x20); Menu_LoadStdPalAt(0xF0); DynamicPlaceholderTextUtil_Reset(); FillBgTilemapBufferRect(0, 0, 0, 0, 32, 32, 0x0F); @@ -218,16 +236,19 @@ static void CB2_ExitWirelessCommunicationStatusScreen(void) SetMainCallback2(CB2_ReturnToFieldContinueScriptPlayMapMusic); } -static void WCSS_CyclePalette(s16 * counter, s16 * palIdx) +// Cycle through palettes that relocate various shades of blue to create the wave effect at the bottom of the screen. +static void CyclePalette(s16 * counter, s16 * palIdx) { + s32 idx; if (++(*counter) > 5) { - if (++(*palIdx) == 14) + if (++(*palIdx) == (int)ARRAY_COUNT(sPalettes) - 2) *palIdx = 0; *counter = 0; } - LoadPalette(sBgTiles_Pal + 16 * (*palIdx + 2), 0, 0x10); + idx = *palIdx + 2; // +2 skips over default.pal and the empty black palette after it + LoadPalette(sPalettes[idx], 0, 16); } static void PrintHeaderTexts(void) @@ -236,12 +257,17 @@ static void PrintHeaderTexts(void) FillWindowPixelBuffer(0, PIXEL_FILL(0)); FillWindowPixelBuffer(1, PIXEL_FILL(0)); FillWindowPixelBuffer(2, PIXEL_FILL(0)); + + // Print title WCSS_AddTextPrinterParameterized(0, FONT_NORMAL, sHeaderTexts[0], GetStringCenterAlignXOffset(FONT_NORMAL, sHeaderTexts[0], 0xC0), 6, COLORMODE_GREEN); - for (i = 0; i < (int)ARRAY_COUNT(*sHeaderTexts) - 1; i++) - { + + // Print label for each group (excluding total) + for (i = 0; i < NUM_GROUPTYPES - 1; i++) WCSS_AddTextPrinterParameterized(1, FONT_NORMAL, sHeaderTexts[i + 1], 0, 30 * i + 8, COLORMODE_WHITE_LGRAY); - } + + // Print label for total WCSS_AddTextPrinterParameterized(1, FONT_NORMAL, sHeaderTexts[i + 1], 0, 30 * i + 8, COLORMODE_RED); + PutWindowTilemap(0); CopyWindowToVram(0, COPYWIN_GFX); PutWindowTilemap(1); @@ -260,7 +286,7 @@ static void Task_WirelessCommunicationScreen(u8 taskId) gTasks[taskId].tState++; break; case 1: - BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, 0); + BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); ShowBg(1); CopyBgTilemapBufferToVram(0); ShowBg(0); @@ -268,9 +294,7 @@ static void Task_WirelessCommunicationScreen(u8 taskId) break; case 2: if (!gPaletteFade.active) - { gTasks[taskId].tState++; - } break; case 3: if (UpdateCommunicationCounts(sStatusScreen->groupCounts, sStatusScreen->prevGroupCounts, sStatusScreen->activities, sStatusScreen->rfuTaskId)) @@ -293,10 +317,10 @@ static void Task_WirelessCommunicationScreen(u8 taskId) gTasks[sStatusScreen->rfuTaskId].data[15] = 0xFF; gTasks[taskId].tState++; } - WCSS_CyclePalette(&gTasks[taskId].data[7], &gTasks[taskId].data[8]); + CyclePalette(&gTasks[taskId].data[7], &gTasks[taskId].data[8]); break; case 4: - BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, 0); + BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK); gTasks[taskId].tState++; break; case 5: diff --git a/tools/jsonproc/Makefile b/tools/jsonproc/Makefile index eec73eb7b..653d58567 100755 --- a/tools/jsonproc/Makefile +++ b/tools/jsonproc/Makefile @@ -1,6 +1,6 @@ CXX ?= g++ -CXXFLAGS := -Wall -std=c++11 -O2 +CXXFLAGS := -Wall -std=c++17 -O2 INCLUDES := -I . diff --git a/tools/jsonproc/inja.hpp b/tools/jsonproc/inja.hpp index 21478ea11..5b469745f 100755 --- a/tools/jsonproc/inja.hpp +++ b/tools/jsonproc/inja.hpp @@ -1,1427 +1,841 @@ -// MIT License +/* + ___ _ Version 3.3 + |_ _|_ __ (_) __ _ https://github.com/pantor/inja + | || '_ \ | |/ _` | Licensed under the MIT License . + | || | | || | (_| | + |___|_| |_|/ |\__,_| Copyright (c) 2018-2021 Lars Berscheid + |__/ +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +*/ -// Copyright (c) 2018 lbersch +#ifndef INCLUDE_INJA_INJA_HPP_ +#define INCLUDE_INJA_INJA_HPP_ -// Permission is hereby granted, free of charge, to any person obtaining a copy -// of this software and associated documentation files (the "Software"), to deal -// in the Software without restriction, including without limitation the rights -// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -// copies of the Software, and to permit persons to whom the Software is -// furnished to do so, subject to the following conditions: +#include -// The above copyright notice and this permission notice shall be included in all -// copies or substantial portions of the Software. +namespace inja { +#ifndef INJA_DATA_TYPE +using json = nlohmann::json; +#else +using json = INJA_DATA_TYPE; +#endif +} // namespace inja -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -// SOFTWARE. +#if (defined(__cpp_exceptions) || defined(__EXCEPTIONS) || defined(_CPPUNWIND)) && !defined(INJA_NOEXCEPTION) +#ifndef INJA_THROW +#define INJA_THROW(exception) throw exception +#endif +#else +#include +#ifndef INJA_THROW +#define INJA_THROW(exception) \ + std::abort(); \ + std::ignore = exception +#endif +#ifndef INJA_NOEXCEPTION +#define INJA_NOEXCEPTION +#endif +#endif +// #include "environment.hpp" +#ifndef INCLUDE_INJA_ENVIRONMENT_HPP_ +#define INCLUDE_INJA_ENVIRONMENT_HPP_ -// --- - - -// Copyright (c) 2009-2018 FIRST -// All rights reserved. - -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are met: -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above copyright -// notice, this list of conditions and the following disclaimer in the -// documentation and/or other materials provided with the distribution. -// * Neither the name of the FIRST nor the -// names of its contributors may be used to endorse or promote products -// derived from this software without specific prior written permission. - -// THIS SOFTWARE IS PROVIDED BY FIRST AND CONTRIBUTORS``AS IS'' AND ANY -// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -// WARRANTIES OF MERCHANTABILITY NONINFRINGEMENT AND FITNESS FOR A PARTICULAR -// PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL FIRST OR CONTRIBUTORS BE LIABLE FOR -// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -// ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -#ifndef PANTOR_INJA_HPP -#define PANTOR_INJA_HPP - -#include +#include #include -#include #include #include #include +#include + +// #include "config.hpp" +#ifndef INCLUDE_INJA_CONFIG_HPP_ +#define INCLUDE_INJA_CONFIG_HPP_ + +#include +#include + +// #include "template.hpp" +#ifndef INCLUDE_INJA_TEMPLATE_HPP_ +#define INCLUDE_INJA_TEMPLATE_HPP_ + +#include +#include +#include #include -#include +// #include "node.hpp" +#ifndef INCLUDE_INJA_NODE_HPP_ +#define INCLUDE_INJA_NODE_HPP_ -// #include "environment.hpp" -#ifndef PANTOR_INJA_ENVIRONMENT_HPP -#define PANTOR_INJA_ENVIRONMENT_HPP - -#include -#include -#include #include +#include +#include -#include - -// #include "config.hpp" -#ifndef PANTOR_INJA_CONFIG_HPP -#define PANTOR_INJA_CONFIG_HPP - -#include -#include - -// #include "string_view.hpp" -// Copyright 2017-2019 by Martin Moene -// -// string-view lite, a C++17-like string_view for C++98 and later. -// For more information see https://github.com/martinmoene/string-view-lite -// -// Distributed under the Boost Software License, Version 1.0. -// (See accompanying file LICENSE.txt or copy at http://www.boost.org/LICENSE_1_0.txt) - - - -#ifndef NONSTD_SV_LITE_H_INCLUDED -#define NONSTD_SV_LITE_H_INCLUDED - -#define string_view_lite_MAJOR 1 -#define string_view_lite_MINOR 1 -#define string_view_lite_PATCH 0 - -#define string_view_lite_VERSION nssv_STRINGIFY(string_view_lite_MAJOR) "." nssv_STRINGIFY(string_view_lite_MINOR) "." nssv_STRINGIFY(string_view_lite_PATCH) - -#define nssv_STRINGIFY( x ) nssv_STRINGIFY_( x ) -#define nssv_STRINGIFY_( x ) #x - -// string-view lite configuration: - -#define nssv_STRING_VIEW_DEFAULT 0 -#define nssv_STRING_VIEW_NONSTD 1 -#define nssv_STRING_VIEW_STD 2 - -#if !defined( nssv_CONFIG_SELECT_STRING_VIEW ) -# define nssv_CONFIG_SELECT_STRING_VIEW ( nssv_HAVE_STD_STRING_VIEW ? nssv_STRING_VIEW_STD : nssv_STRING_VIEW_NONSTD ) -#endif - -#if defined( nssv_CONFIG_SELECT_STD_STRING_VIEW ) || defined( nssv_CONFIG_SELECT_NONSTD_STRING_VIEW ) -# error nssv_CONFIG_SELECT_STD_STRING_VIEW and nssv_CONFIG_SELECT_NONSTD_STRING_VIEW are deprecated and removed, please use nssv_CONFIG_SELECT_STRING_VIEW=nssv_STRING_VIEW_... -#endif - -#ifndef nssv_CONFIG_STD_SV_OPERATOR -# define nssv_CONFIG_STD_SV_OPERATOR 0 -#endif - -#ifndef nssv_CONFIG_USR_SV_OPERATOR -# define nssv_CONFIG_USR_SV_OPERATOR 1 -#endif - -#ifdef nssv_CONFIG_CONVERSION_STD_STRING -# define nssv_CONFIG_CONVERSION_STD_STRING_CLASS_METHODS nssv_CONFIG_CONVERSION_STD_STRING -# define nssv_CONFIG_CONVERSION_STD_STRING_FREE_FUNCTIONS nssv_CONFIG_CONVERSION_STD_STRING -#endif - -#ifndef nssv_CONFIG_CONVERSION_STD_STRING_CLASS_METHODS -# define nssv_CONFIG_CONVERSION_STD_STRING_CLASS_METHODS 1 -#endif - -#ifndef nssv_CONFIG_CONVERSION_STD_STRING_FREE_FUNCTIONS -# define nssv_CONFIG_CONVERSION_STD_STRING_FREE_FUNCTIONS 1 -#endif - -// Control presence of exception handling (try and auto discover): - -#ifndef nssv_CONFIG_NO_EXCEPTIONS -# if defined(__cpp_exceptions) || defined(__EXCEPTIONS) || defined(_CPPUNWIND) -# define nssv_CONFIG_NO_EXCEPTIONS 0 -# else -# define nssv_CONFIG_NO_EXCEPTIONS 1 -# endif -#endif - -// C++ language version detection (C++20 is speculative): -// Note: VC14.0/1900 (VS2015) lacks too much from C++14. - -#ifndef nssv_CPLUSPLUS -# if defined(_MSVC_LANG ) && !defined(__clang__) -# define nssv_CPLUSPLUS (_MSC_VER == 1900 ? 201103L : _MSVC_LANG ) -# else -# define nssv_CPLUSPLUS __cplusplus -# endif -#endif - -#define nssv_CPP98_OR_GREATER ( nssv_CPLUSPLUS >= 199711L ) -#define nssv_CPP11_OR_GREATER ( nssv_CPLUSPLUS >= 201103L ) -#define nssv_CPP11_OR_GREATER_ ( nssv_CPLUSPLUS >= 201103L ) -#define nssv_CPP14_OR_GREATER ( nssv_CPLUSPLUS >= 201402L ) -#define nssv_CPP17_OR_GREATER ( nssv_CPLUSPLUS >= 201703L ) -#define nssv_CPP20_OR_GREATER ( nssv_CPLUSPLUS >= 202000L ) - -// use C++17 std::string_view if available and requested: - -#if nssv_CPP17_OR_GREATER && defined(__has_include ) -# if __has_include( ) -# define nssv_HAVE_STD_STRING_VIEW 1 -# else -# define nssv_HAVE_STD_STRING_VIEW 0 -# endif -#else -# define nssv_HAVE_STD_STRING_VIEW 0 -#endif - -#define nssv_USES_STD_STRING_VIEW ( (nssv_CONFIG_SELECT_STRING_VIEW == nssv_STRING_VIEW_STD) || ((nssv_CONFIG_SELECT_STRING_VIEW == nssv_STRING_VIEW_DEFAULT) && nssv_HAVE_STD_STRING_VIEW) ) - -#define nssv_HAVE_STARTS_WITH ( nssv_CPP20_OR_GREATER || !nssv_USES_STD_STRING_VIEW ) -#define nssv_HAVE_ENDS_WITH nssv_HAVE_STARTS_WITH - -// -// Use C++17 std::string_view: -// - -#if nssv_USES_STD_STRING_VIEW +// #include "function_storage.hpp" +#ifndef INCLUDE_INJA_FUNCTION_STORAGE_HPP_ +#define INCLUDE_INJA_FUNCTION_STORAGE_HPP_ #include +#include -// Extensions for std::string: +namespace inja { -#if nssv_CONFIG_CONVERSION_STD_STRING_FREE_FUNCTIONS +using Arguments = std::vector; +using CallbackFunction = std::function; +using VoidCallbackFunction = std::function; -namespace nonstd { +/*! + * \brief Class for builtin functions and user-defined callbacks. + */ +class FunctionStorage { +public: + enum class Operation { + Not, + And, + Or, + In, + Equal, + NotEqual, + Greater, + GreaterEqual, + Less, + LessEqual, + Add, + Subtract, + Multiplication, + Division, + Power, + Modulo, + AtId, + At, + Default, + DivisibleBy, + Even, + Exists, + ExistsInObject, + First, + Float, + Int, + IsArray, + IsBoolean, + IsFloat, + IsInteger, + IsNumber, + IsObject, + IsString, + Last, + Length, + Lower, + Max, + Min, + Odd, + Range, + Round, + Sort, + Upper, + Super, + Join, + Callback, + ParenLeft, + ParenRight, + None, + }; -template< class CharT, class Traits, class Allocator = std::allocator > -std::basic_string -to_string( std::basic_string_view v, Allocator const & a = Allocator() ) -{ - return std::basic_string( v.begin(), v.end(), a ); -} + struct FunctionData { + explicit FunctionData(const Operation& op, const CallbackFunction& cb = CallbackFunction {}): operation(op), callback(cb) {} + const Operation operation; + const CallbackFunction callback; + }; -template< class CharT, class Traits, class Allocator > -std::basic_string_view -to_string_view( std::basic_string const & s ) -{ - return std::basic_string_view( s.data(), s.size() ); -} +private: + const int VARIADIC {-1}; -// Literal operators sv and _sv: + std::map, FunctionData> function_storage = { + {std::make_pair("at", 2), FunctionData {Operation::At}}, + {std::make_pair("default", 2), FunctionData {Operation::Default}}, + {std::make_pair("divisibleBy", 2), FunctionData {Operation::DivisibleBy}}, + {std::make_pair("even", 1), FunctionData {Operation::Even}}, + {std::make_pair("exists", 1), FunctionData {Operation::Exists}}, + {std::make_pair("existsIn", 2), FunctionData {Operation::ExistsInObject}}, + {std::make_pair("first", 1), FunctionData {Operation::First}}, + {std::make_pair("float", 1), FunctionData {Operation::Float}}, + {std::make_pair("int", 1), FunctionData {Operation::Int}}, + {std::make_pair("isArray", 1), FunctionData {Operation::IsArray}}, + {std::make_pair("isBoolean", 1), FunctionData {Operation::IsBoolean}}, + {std::make_pair("isFloat", 1), FunctionData {Operation::IsFloat}}, + {std::make_pair("isInteger", 1), FunctionData {Operation::IsInteger}}, + {std::make_pair("isNumber", 1), FunctionData {Operation::IsNumber}}, + {std::make_pair("isObject", 1), FunctionData {Operation::IsObject}}, + {std::make_pair("isString", 1), FunctionData {Operation::IsString}}, + {std::make_pair("last", 1), FunctionData {Operation::Last}}, + {std::make_pair("length", 1), FunctionData {Operation::Length}}, + {std::make_pair("lower", 1), FunctionData {Operation::Lower}}, + {std::make_pair("max", 1), FunctionData {Operation::Max}}, + {std::make_pair("min", 1), FunctionData {Operation::Min}}, + {std::make_pair("odd", 1), FunctionData {Operation::Odd}}, + {std::make_pair("range", 1), FunctionData {Operation::Range}}, + {std::make_pair("round", 2), FunctionData {Operation::Round}}, + {std::make_pair("sort", 1), FunctionData {Operation::Sort}}, + {std::make_pair("upper", 1), FunctionData {Operation::Upper}}, + {std::make_pair("super", 0), FunctionData {Operation::Super}}, + {std::make_pair("super", 1), FunctionData {Operation::Super}}, + {std::make_pair("join", 2), FunctionData {Operation::Join}}, + }; -#if nssv_CONFIG_STD_SV_OPERATOR +public: + void add_builtin(std::string_view name, int num_args, Operation op) { + function_storage.emplace(std::make_pair(static_cast(name), num_args), FunctionData {op}); + } -using namespace std::literals::string_view_literals; + void add_callback(std::string_view name, int num_args, const CallbackFunction& callback) { + function_storage.emplace(std::make_pair(static_cast(name), num_args), FunctionData {Operation::Callback, callback}); + } -#endif + FunctionData find_function(std::string_view name, int num_args) const { + auto it = function_storage.find(std::make_pair(static_cast(name), num_args)); + if (it != function_storage.end()) { + return it->second; -#if nssv_CONFIG_USR_SV_OPERATOR + // Find variadic function + } else if (num_args > 0) { + it = function_storage.find(std::make_pair(static_cast(name), VARIADIC)); + if (it != function_storage.end()) { + return it->second; + } + } -inline namespace literals { -inline namespace string_view_literals { + return FunctionData {Operation::None}; + } +}; +} // namespace inja -constexpr std::string_view operator "" _sv( const char* str, size_t len ) noexcept // (1) -{ - return std::string_view{ str, len }; -} +#endif // INCLUDE_INJA_FUNCTION_STORAGE_HPP_ -constexpr std::u16string_view operator "" _sv( const char16_t* str, size_t len ) noexcept // (2) -{ - return std::u16string_view{ str, len }; -} - -constexpr std::u32string_view operator "" _sv( const char32_t* str, size_t len ) noexcept // (3) -{ - return std::u32string_view{ str, len }; -} - -constexpr std::wstring_view operator "" _sv( const wchar_t* str, size_t len ) noexcept // (4) -{ - return std::wstring_view{ str, len }; -} - -}} // namespace literals::string_view_literals - -#endif // nssv_CONFIG_USR_SV_OPERATOR - -} // namespace nonstd - -#endif // nssv_CONFIG_CONVERSION_STD_STRING_FREE_FUNCTIONS - -namespace nonstd { - -using std::string_view; -using std::wstring_view; -using std::u16string_view; -using std::u32string_view; -using std::basic_string_view; - -// literal "sv" and "_sv", see above - -using std::operator==; -using std::operator!=; -using std::operator<; -using std::operator<=; -using std::operator>; -using std::operator>=; - -using std::operator<<; - -} // namespace nonstd - -#else // nssv_HAVE_STD_STRING_VIEW - -// -// Before C++17: use string_view lite: -// - -// Compiler versions: -// -// MSVC++ 6.0 _MSC_VER == 1200 (Visual Studio 6.0) -// MSVC++ 7.0 _MSC_VER == 1300 (Visual Studio .NET 2002) -// MSVC++ 7.1 _MSC_VER == 1310 (Visual Studio .NET 2003) -// MSVC++ 8.0 _MSC_VER == 1400 (Visual Studio 2005) -// MSVC++ 9.0 _MSC_VER == 1500 (Visual Studio 2008) -// MSVC++ 10.0 _MSC_VER == 1600 (Visual Studio 2010) -// MSVC++ 11.0 _MSC_VER == 1700 (Visual Studio 2012) -// MSVC++ 12.0 _MSC_VER == 1800 (Visual Studio 2013) -// MSVC++ 14.0 _MSC_VER == 1900 (Visual Studio 2015) -// MSVC++ 14.1 _MSC_VER >= 1910 (Visual Studio 2017) - -#if defined(_MSC_VER ) && !defined(__clang__) -# define nssv_COMPILER_MSVC_VER (_MSC_VER ) -# define nssv_COMPILER_MSVC_VERSION (_MSC_VER / 10 - 10 * ( 5 + (_MSC_VER < 1900 ) ) ) -#else -# define nssv_COMPILER_MSVC_VER 0 -# define nssv_COMPILER_MSVC_VERSION 0 -#endif - -#define nssv_COMPILER_VERSION( major, minor, patch ) (10 * ( 10 * major + minor) + patch) - -#if defined(__clang__) -# define nssv_COMPILER_CLANG_VERSION nssv_COMPILER_VERSION(__clang_major__, __clang_minor__, __clang_patchlevel__) -#else -# define nssv_COMPILER_CLANG_VERSION 0 -#endif - -#if defined(__GNUC__) && !defined(__clang__) -# define nssv_COMPILER_GNUC_VERSION nssv_COMPILER_VERSION(__GNUC__, __GNUC_MINOR__, __GNUC_PATCHLEVEL__) -#else -# define nssv_COMPILER_GNUC_VERSION 0 -#endif - -// half-open range [lo..hi): -#define nssv_BETWEEN( v, lo, hi ) ( (lo) <= (v) && (v) < (hi) ) - -// Presence of language and library features: - -#ifdef _HAS_CPP0X -# define nssv_HAS_CPP0X _HAS_CPP0X -#else -# define nssv_HAS_CPP0X 0 -#endif - -// Unless defined otherwise below, consider VC14 as C++11 for variant-lite: - -#if nssv_COMPILER_MSVC_VER >= 1900 -# undef nssv_CPP11_OR_GREATER -# define nssv_CPP11_OR_GREATER 1 -#endif - -#define nssv_CPP11_90 (nssv_CPP11_OR_GREATER_ || nssv_COMPILER_MSVC_VER >= 1500) -#define nssv_CPP11_100 (nssv_CPP11_OR_GREATER_ || nssv_COMPILER_MSVC_VER >= 1600) -#define nssv_CPP11_110 (nssv_CPP11_OR_GREATER_ || nssv_COMPILER_MSVC_VER >= 1700) -#define nssv_CPP11_120 (nssv_CPP11_OR_GREATER_ || nssv_COMPILER_MSVC_VER >= 1800) -#define nssv_CPP11_140 (nssv_CPP11_OR_GREATER_ || nssv_COMPILER_MSVC_VER >= 1900) -#define nssv_CPP11_141 (nssv_CPP11_OR_GREATER_ || nssv_COMPILER_MSVC_VER >= 1910) - -#define nssv_CPP14_000 (nssv_CPP14_OR_GREATER) -#define nssv_CPP17_000 (nssv_CPP17_OR_GREATER) - -// Presence of C++11 language features: - -#define nssv_HAVE_CONSTEXPR_11 nssv_CPP11_140 -#define nssv_HAVE_EXPLICIT_CONVERSION nssv_CPP11_140 -#define nssv_HAVE_INLINE_NAMESPACE nssv_CPP11_140 -#define nssv_HAVE_NOEXCEPT nssv_CPP11_140 -#define nssv_HAVE_NULLPTR nssv_CPP11_100 -#define nssv_HAVE_REF_QUALIFIER nssv_CPP11_140 -#define nssv_HAVE_UNICODE_LITERALS nssv_CPP11_140 -#define nssv_HAVE_USER_DEFINED_LITERALS nssv_CPP11_140 -#define nssv_HAVE_WCHAR16_T nssv_CPP11_100 -#define nssv_HAVE_WCHAR32_T nssv_CPP11_100 - -#if ! ( ( nssv_CPP11 && nssv_COMPILER_CLANG_VERSION ) || nssv_BETWEEN( nssv_COMPILER_CLANG_VERSION, 300, 400 ) ) -# define nssv_HAVE_STD_DEFINED_LITERALS nssv_CPP11_140 -#endif - -// Presence of C++14 language features: - -#define nssv_HAVE_CONSTEXPR_14 nssv_CPP14_000 - -// Presence of C++17 language features: - -#define nssv_HAVE_NODISCARD nssv_CPP17_000 - -// Presence of C++ library features: - -#define nssv_HAVE_STD_HASH nssv_CPP11_120 - -// C++ feature usage: - -#if nssv_HAVE_CONSTEXPR_11 -# define nssv_constexpr constexpr -#else -# define nssv_constexpr /*constexpr*/ -#endif - -#if nssv_HAVE_CONSTEXPR_14 -# define nssv_constexpr14 constexpr -#else -# define nssv_constexpr14 /*constexpr*/ -#endif - -#if nssv_HAVE_EXPLICIT_CONVERSION -# define nssv_explicit explicit -#else -# define nssv_explicit /*explicit*/ -#endif - -#if nssv_HAVE_INLINE_NAMESPACE -# define nssv_inline_ns inline -#else -# define nssv_inline_ns /*inline*/ -#endif - -#if nssv_HAVE_NOEXCEPT -# define nssv_noexcept noexcept -#else -# define nssv_noexcept /*noexcept*/ -#endif - -//#if nssv_HAVE_REF_QUALIFIER -//# define nssv_ref_qual & -//# define nssv_refref_qual && -//#else -//# define nssv_ref_qual /*&*/ -//# define nssv_refref_qual /*&&*/ -//#endif - -#if nssv_HAVE_NULLPTR -# define nssv_nullptr nullptr -#else -# define nssv_nullptr NULL -#endif - -#if nssv_HAVE_NODISCARD -# define nssv_nodiscard [[nodiscard]] -#else -# define nssv_nodiscard /*[[nodiscard]]*/ -#endif - -// Additional includes: +// #include "utils.hpp" +#ifndef INCLUDE_INJA_UTILS_HPP_ +#define INCLUDE_INJA_UTILS_HPP_ #include -#include -#include -#include -#include -#include // std::char_traits<> +#include +#include +#include +#include -#if ! nssv_CONFIG_NO_EXCEPTIONS -# include -#endif +// #include "exceptions.hpp" +#ifndef INCLUDE_INJA_EXCEPTIONS_HPP_ +#define INCLUDE_INJA_EXCEPTIONS_HPP_ -#if nssv_CPP11_OR_GREATER -# include -#endif +#include +#include -// Clang, GNUC, MSVC warning suppression macros: +namespace inja { -#if defined(__clang__) -# pragma clang diagnostic ignored "-Wreserved-user-defined-literal" -# pragma clang diagnostic push -# pragma clang diagnostic ignored "-Wuser-defined-literals" -#elif defined(__GNUC__) -# pragma GCC diagnostic push -# pragma GCC diagnostic ignored "-Wliteral-suffix" -#endif // __clang__ - -#if nssv_COMPILER_MSVC_VERSION >= 140 -# define nssv_SUPPRESS_MSGSL_WARNING(expr) [[gsl::suppress(expr)]] -# define nssv_SUPPRESS_MSVC_WARNING(code, descr) __pragma(warning(suppress: code) ) -# define nssv_DISABLE_MSVC_WARNINGS(codes) __pragma(warning(push)) __pragma(warning(disable: codes)) -#else -# define nssv_SUPPRESS_MSGSL_WARNING(expr) -# define nssv_SUPPRESS_MSVC_WARNING(code, descr) -# define nssv_DISABLE_MSVC_WARNINGS(codes) -#endif - -#if defined(__clang__) -# define nssv_RESTORE_WARNINGS() _Pragma("clang diagnostic pop") -#elif defined(__GNUC__) -# define nssv_RESTORE_WARNINGS() _Pragma("GCC diagnostic pop") -#elif nssv_COMPILER_MSVC_VERSION >= 140 -# define nssv_RESTORE_WARNINGS() __pragma(warning(pop )) -#else -# define nssv_RESTORE_WARNINGS() -#endif - -// Suppress the following MSVC (GSL) warnings: -// - C4455, non-gsl : 'operator ""sv': literal suffix identifiers that do not -// start with an underscore are reserved -// - C26472, gsl::t.1 : don't use a static_cast for arithmetic conversions; -// use brace initialization, gsl::narrow_cast or gsl::narow -// - C26481: gsl::b.1 : don't use pointer arithmetic. Use span instead - -nssv_DISABLE_MSVC_WARNINGS( 4455 26481 26472 ) -//nssv_DISABLE_CLANG_WARNINGS( "-Wuser-defined-literals" ) -//nssv_DISABLE_GNUC_WARNINGS( -Wliteral-suffix ) - -namespace nonstd { namespace sv_lite { - -template -< - class CharT, - class Traits = std::char_traits -> -class basic_string_view; - -// -// basic_string_view: -// - -template -< - class CharT, - class Traits /* = std::char_traits */ -> -class basic_string_view -{ -public: - // Member types: - - typedef Traits traits_type; - typedef CharT value_type; - - typedef CharT * pointer; - typedef CharT const * const_pointer; - typedef CharT & reference; - typedef CharT const & const_reference; - - typedef const_pointer iterator; - typedef const_pointer const_iterator; - typedef std::reverse_iterator< const_iterator > reverse_iterator; - typedef std::reverse_iterator< const_iterator > const_reverse_iterator; - - typedef std::size_t size_type; - typedef std::ptrdiff_t difference_type; - - // 24.4.2.1 Construction and assignment: - - nssv_constexpr basic_string_view() nssv_noexcept - : data_( nssv_nullptr ) - , size_( 0 ) - {} - -#if nssv_CPP11_OR_GREATER - nssv_constexpr basic_string_view( basic_string_view const & other ) nssv_noexcept = default; -#else - nssv_constexpr basic_string_view( basic_string_view const & other ) nssv_noexcept - : data_( other.data_) - , size_( other.size_) - {} -#endif - - nssv_constexpr basic_string_view( CharT const * s, size_type count ) - : data_( s ) - , size_( count ) - {} - - nssv_constexpr basic_string_view( CharT const * s) - : data_( s ) - , size_( Traits::length(s) ) - {} - - // Assignment: - -#if nssv_CPP11_OR_GREATER - nssv_constexpr14 basic_string_view & operator=( basic_string_view const & other ) nssv_noexcept = default; -#else - nssv_constexpr14 basic_string_view & operator=( basic_string_view const & other ) nssv_noexcept - { - data_ = other.data_; - size_ = other.size_; - return *this; - } -#endif - - // 24.4.2.2 Iterator support: - - nssv_constexpr const_iterator begin() const nssv_noexcept { return data_; } - nssv_constexpr const_iterator end() const nssv_noexcept { return data_ + size_; } - - nssv_constexpr const_iterator cbegin() const nssv_noexcept { return begin(); } - nssv_constexpr const_iterator cend() const nssv_noexcept { return end(); } - - nssv_constexpr const_reverse_iterator rbegin() const nssv_noexcept { return const_reverse_iterator( end() ); } - nssv_constexpr const_reverse_iterator rend() const nssv_noexcept { return const_reverse_iterator( begin() ); } - - nssv_constexpr const_reverse_iterator crbegin() const nssv_noexcept { return rbegin(); } - nssv_constexpr const_reverse_iterator crend() const nssv_noexcept { return rend(); } - - // 24.4.2.3 Capacity: - - nssv_constexpr size_type size() const nssv_noexcept { return size_; } - nssv_constexpr size_type length() const nssv_noexcept { return size_; } - nssv_constexpr size_type max_size() const nssv_noexcept { return (std::numeric_limits< size_type >::max)(); } - - // since C++20 - nssv_nodiscard nssv_constexpr bool empty() const nssv_noexcept - { - return 0 == size_; - } - - // 24.4.2.4 Element access: - - nssv_constexpr const_reference operator[]( size_type pos ) const - { - return data_at( pos ); - } - - nssv_constexpr14 const_reference at( size_type pos ) const - { -#if nssv_CONFIG_NO_EXCEPTIONS - assert( pos < size() ); -#else - if ( pos >= size() ) - { - throw std::out_of_range("nonst::string_view::at()"); - } -#endif - return data_at( pos ); - } - - nssv_constexpr const_reference front() const { return data_at( 0 ); } - nssv_constexpr const_reference back() const { return data_at( size() - 1 ); } - - nssv_constexpr const_pointer data() const nssv_noexcept { return data_; } - - // 24.4.2.5 Modifiers: - - nssv_constexpr14 void remove_prefix( size_type n ) - { - assert( n <= size() ); - data_ += n; - size_ -= n; - } - - nssv_constexpr14 void remove_suffix( size_type n ) - { - assert( n <= size() ); - size_ -= n; - } - - nssv_constexpr14 void swap( basic_string_view & other ) nssv_noexcept - { - using std::swap; - swap( data_, other.data_ ); - swap( size_, other.size_ ); - } - - // 24.4.2.6 String operations: - - size_type copy( CharT * dest, size_type n, size_type pos = 0 ) const - { -#if nssv_CONFIG_NO_EXCEPTIONS - assert( pos <= size() ); -#else - if ( pos > size() ) - { - throw std::out_of_range("nonst::string_view::copy()"); - } -#endif - const size_type rlen = (std::min)( n, size() - pos ); - - (void) Traits::copy( dest, data() + pos, rlen ); - - return rlen; - } - - nssv_constexpr14 basic_string_view substr( size_type pos = 0, size_type n = npos ) const - { -#if nssv_CONFIG_NO_EXCEPTIONS - assert( pos <= size() ); -#else - if ( pos > size() ) - { - throw std::out_of_range("nonst::string_view::substr()"); - } -#endif - return basic_string_view( data() + pos, (std::min)( n, size() - pos ) ); - } - - // compare(), 6x: - - nssv_constexpr14 int compare( basic_string_view other ) const nssv_noexcept // (1) - { - if ( const int result = Traits::compare( data(), other.data(), (std::min)( size(), other.size() ) ) ) - return result; - - return size() == other.size() ? 0 : size() < other.size() ? -1 : 1; - } - - nssv_constexpr int compare( size_type pos1, size_type n1, basic_string_view other ) const // (2) - { - return substr( pos1, n1 ).compare( other ); - } - - nssv_constexpr int compare( size_type pos1, size_type n1, basic_string_view other, size_type pos2, size_type n2 ) const // (3) - { - return substr( pos1, n1 ).compare( other.substr( pos2, n2 ) ); - } - - nssv_constexpr int compare( CharT const * s ) const // (4) - { - return compare( basic_string_view( s ) ); - } - - nssv_constexpr int compare( size_type pos1, size_type n1, CharT const * s ) const // (5) - { - return substr( pos1, n1 ).compare( basic_string_view( s ) ); - } - - nssv_constexpr int compare( size_type pos1, size_type n1, CharT const * s, size_type n2 ) const // (6) - { - return substr( pos1, n1 ).compare( basic_string_view( s, n2 ) ); - } - - // 24.4.2.7 Searching: - - // starts_with(), 3x, since C++20: - - nssv_constexpr bool starts_with( basic_string_view v ) const nssv_noexcept // (1) - { - return size() >= v.size() && compare( 0, v.size(), v ) == 0; - } - - nssv_constexpr bool starts_with( CharT c ) const nssv_noexcept // (2) - { - return starts_with( basic_string_view( &c, 1 ) ); - } - - nssv_constexpr bool starts_with( CharT const * s ) const // (3) - { - return starts_with( basic_string_view( s ) ); - } - - // ends_with(), 3x, since C++20: - - nssv_constexpr bool ends_with( basic_string_view v ) const nssv_noexcept // (1) - { - return size() >= v.size() && compare( size() - v.size(), npos, v ) == 0; - } - - nssv_constexpr bool ends_with( CharT c ) const nssv_noexcept // (2) - { - return ends_with( basic_string_view( &c, 1 ) ); - } - - nssv_constexpr bool ends_with( CharT const * s ) const // (3) - { - return ends_with( basic_string_view( s ) ); - } - - // find(), 4x: - - nssv_constexpr14 size_type find( basic_string_view v, size_type pos = 0 ) const nssv_noexcept // (1) - { - return assert( v.size() == 0 || v.data() != nssv_nullptr ) - , pos >= size() - ? npos - : to_pos( std::search( cbegin() + pos, cend(), v.cbegin(), v.cend(), Traits::eq ) ); - } - - nssv_constexpr14 size_type find( CharT c, size_type pos = 0 ) const nssv_noexcept // (2) - { - return find( basic_string_view( &c, 1 ), pos ); - } - - nssv_constexpr14 size_type find( CharT const * s, size_type pos, size_type n ) const // (3) - { - return find( basic_string_view( s, n ), pos ); - } - - nssv_constexpr14 size_type find( CharT const * s, size_type pos = 0 ) const // (4) - { - return find( basic_string_view( s ), pos ); - } - - // rfind(), 4x: - - nssv_constexpr14 size_type rfind( basic_string_view v, size_type pos = npos ) const nssv_noexcept // (1) - { - if ( size() < v.size() ) - return npos; - - if ( v.empty() ) - return (std::min)( size(), pos ); - - const_iterator last = cbegin() + (std::min)( size() - v.size(), pos ) + v.size(); - const_iterator result = std::find_end( cbegin(), last, v.cbegin(), v.cend(), Traits::eq ); - - return result != last ? size_type( result - cbegin() ) : npos; - } - - nssv_constexpr14 size_type rfind( CharT c, size_type pos = npos ) const nssv_noexcept // (2) - { - return rfind( basic_string_view( &c, 1 ), pos ); - } - - nssv_constexpr14 size_type rfind( CharT const * s, size_type pos, size_type n ) const // (3) - { - return rfind( basic_string_view( s, n ), pos ); - } - - nssv_constexpr14 size_type rfind( CharT const * s, size_type pos = npos ) const // (4) - { - return rfind( basic_string_view( s ), pos ); - } - - // find_first_of(), 4x: - - nssv_constexpr size_type find_first_of( basic_string_view v, size_type pos = 0 ) const nssv_noexcept // (1) - { - return pos >= size() - ? npos - : to_pos( std::find_first_of( cbegin() + pos, cend(), v.cbegin(), v.cend(), Traits::eq ) ); - } - - nssv_constexpr size_type find_first_of( CharT c, size_type pos = 0 ) const nssv_noexcept // (2) - { - return find_first_of( basic_string_view( &c, 1 ), pos ); - } - - nssv_constexpr size_type find_first_of( CharT const * s, size_type pos, size_type n ) const // (3) - { - return find_first_of( basic_string_view( s, n ), pos ); - } - - nssv_constexpr size_type find_first_of( CharT const * s, size_type pos = 0 ) const // (4) - { - return find_first_of( basic_string_view( s ), pos ); - } - - // find_last_of(), 4x: - - nssv_constexpr size_type find_last_of( basic_string_view v, size_type pos = npos ) const nssv_noexcept // (1) - { - return empty() - ? npos - : pos >= size() - ? find_last_of( v, size() - 1 ) - : to_pos( std::find_first_of( const_reverse_iterator( cbegin() + pos + 1 ), crend(), v.cbegin(), v.cend(), Traits::eq ) ); - } - - nssv_constexpr size_type find_last_of( CharT c, size_type pos = npos ) const nssv_noexcept // (2) - { - return find_last_of( basic_string_view( &c, 1 ), pos ); - } - - nssv_constexpr size_type find_last_of( CharT const * s, size_type pos, size_type count ) const // (3) - { - return find_last_of( basic_string_view( s, count ), pos ); - } - - nssv_constexpr size_type find_last_of( CharT const * s, size_type pos = npos ) const // (4) - { - return find_last_of( basic_string_view( s ), pos ); - } - - // find_first_not_of(), 4x: - - nssv_constexpr size_type find_first_not_of( basic_string_view v, size_type pos = 0 ) const nssv_noexcept // (1) - { - return pos >= size() - ? npos - : to_pos( std::find_if( cbegin() + pos, cend(), not_in_view( v ) ) ); - } - - nssv_constexpr size_type find_first_not_of( CharT c, size_type pos = 0 ) const nssv_noexcept // (2) - { - return find_first_not_of( basic_string_view( &c, 1 ), pos ); - } - - nssv_constexpr size_type find_first_not_of( CharT const * s, size_type pos, size_type count ) const // (3) - { - return find_first_not_of( basic_string_view( s, count ), pos ); - } - - nssv_constexpr size_type find_first_not_of( CharT const * s, size_type pos = 0 ) const // (4) - { - return find_first_not_of( basic_string_view( s ), pos ); - } - - // find_last_not_of(), 4x: - - nssv_constexpr size_type find_last_not_of( basic_string_view v, size_type pos = npos ) const nssv_noexcept // (1) - { - return empty() - ? npos - : pos >= size() - ? find_last_not_of( v, size() - 1 ) - : to_pos( std::find_if( const_reverse_iterator( cbegin() + pos + 1 ), crend(), not_in_view( v ) ) ); - } - - nssv_constexpr size_type find_last_not_of( CharT c, size_type pos = npos ) const nssv_noexcept // (2) - { - return find_last_not_of( basic_string_view( &c, 1 ), pos ); - } - - nssv_constexpr size_type find_last_not_of( CharT const * s, size_type pos, size_type count ) const // (3) - { - return find_last_not_of( basic_string_view( s, count ), pos ); - } - - nssv_constexpr size_type find_last_not_of( CharT const * s, size_type pos = npos ) const // (4) - { - return find_last_not_of( basic_string_view( s ), pos ); - } - - // Constants: - -#if nssv_CPP17_OR_GREATER - static nssv_constexpr size_type npos = size_type(-1); -#elif nssv_CPP11_OR_GREATER - enum : size_type { npos = size_type(-1) }; -#else - enum { npos = size_type(-1) }; -#endif - -private: - struct not_in_view - { - const basic_string_view v; - - nssv_constexpr not_in_view( basic_string_view v ) : v( v ) {} - - nssv_constexpr bool operator()( CharT c ) const - { - return npos == v.find_first_of( c ); - } - }; - - nssv_constexpr size_type to_pos( const_iterator it ) const - { - return it == cend() ? npos : size_type( it - cbegin() ); - } - - nssv_constexpr size_type to_pos( const_reverse_iterator it ) const - { - return it == crend() ? npos : size_type( crend() - it - 1 ); - } - - nssv_constexpr const_reference data_at( size_type pos ) const - { -#if nssv_BETWEEN( nssv_COMPILER_GNUC_VERSION, 1, 500 ) - return data_[pos]; -#else - return assert( pos < size() ), data_[pos]; -#endif - } - -private: - const_pointer data_; - size_type size_; - -public: -#if nssv_CONFIG_CONVERSION_STD_STRING_CLASS_METHODS - - template< class Allocator > - basic_string_view( std::basic_string const & s ) nssv_noexcept - : data_( s.data() ) - , size_( s.size() ) - {} - -#if nssv_HAVE_EXPLICIT_CONVERSION - - template< class Allocator > - explicit operator std::basic_string() const - { - return to_string( Allocator() ); - } - -#endif // nssv_HAVE_EXPLICIT_CONVERSION - -#if nssv_CPP11_OR_GREATER - - template< class Allocator = std::allocator > - std::basic_string - to_string( Allocator const & a = Allocator() ) const - { - return std::basic_string( begin(), end(), a ); - } - -#else - - std::basic_string - to_string() const - { - return std::basic_string( begin(), end() ); - } - - template< class Allocator > - std::basic_string - to_string( Allocator const & a ) const - { - return std::basic_string( begin(), end(), a ); - } - -#endif // nssv_CPP11_OR_GREATER - -#endif // nssv_CONFIG_CONVERSION_STD_STRING_CLASS_METHODS +struct SourceLocation { + size_t line; + size_t column; }; -// -// Non-member functions: -// +struct InjaError : public std::runtime_error { + const std::string type; + const std::string message; -// 24.4.3 Non-member comparison functions: -// lexicographically compare two string views (function template): + const SourceLocation location; -template< class CharT, class Traits > -nssv_constexpr bool operator== ( - basic_string_view lhs, - basic_string_view rhs ) nssv_noexcept -{ return lhs.compare( rhs ) == 0 ; } + explicit InjaError(const std::string& type, const std::string& message) + : std::runtime_error("[inja.exception." + type + "] " + message), type(type), message(message), location({0, 0}) {} -template< class CharT, class Traits > -nssv_constexpr bool operator!= ( - basic_string_view lhs, - basic_string_view rhs ) nssv_noexcept -{ return lhs.compare( rhs ) != 0 ; } - -template< class CharT, class Traits > -nssv_constexpr bool operator< ( - basic_string_view lhs, - basic_string_view rhs ) nssv_noexcept -{ return lhs.compare( rhs ) < 0 ; } - -template< class CharT, class Traits > -nssv_constexpr bool operator<= ( - basic_string_view lhs, - basic_string_view rhs ) nssv_noexcept -{ return lhs.compare( rhs ) <= 0 ; } - -template< class CharT, class Traits > -nssv_constexpr bool operator> ( - basic_string_view lhs, - basic_string_view rhs ) nssv_noexcept -{ return lhs.compare( rhs ) > 0 ; } - -template< class CharT, class Traits > -nssv_constexpr bool operator>= ( - basic_string_view lhs, - basic_string_view rhs ) nssv_noexcept -{ return lhs.compare( rhs ) >= 0 ; } - -// Let S be basic_string_view, and sv be an instance of S. -// Implementations shall provide sufficient additional overloads marked -// constexpr and noexcept so that an object t with an implicit conversion -// to S can be compared according to Table 67. - -#if nssv_CPP11_OR_GREATER && ! nssv_BETWEEN( nssv_COMPILER_MSVC_VERSION, 100, 141 ) - -#define nssv_BASIC_STRING_VIEW_I(T,U) typename std::decay< basic_string_view >::type - -#if nssv_BETWEEN( nssv_COMPILER_MSVC_VERSION, 140, 150 ) -# define nssv_MSVC_ORDER(x) , int=x -#else -# define nssv_MSVC_ORDER(x) /*, int=x*/ -#endif - -// == - -template< class CharT, class Traits nssv_MSVC_ORDER(1) > -nssv_constexpr bool operator==( - basic_string_view lhs, - nssv_BASIC_STRING_VIEW_I(CharT, Traits) rhs ) nssv_noexcept -{ return lhs.compare( rhs ) == 0; } - -template< class CharT, class Traits nssv_MSVC_ORDER(2) > -nssv_constexpr bool operator==( - nssv_BASIC_STRING_VIEW_I(CharT, Traits) lhs, - basic_string_view rhs ) nssv_noexcept -{ return lhs.size() == rhs.size() && lhs.compare( rhs ) == 0; } - -// != - -template< class CharT, class Traits nssv_MSVC_ORDER(1) > -nssv_constexpr bool operator!= ( - basic_string_view < CharT, Traits > lhs, - nssv_BASIC_STRING_VIEW_I( CharT, Traits ) rhs ) nssv_noexcept -{ return lhs.size() != rhs.size() || lhs.compare( rhs ) != 0 ; } - -template< class CharT, class Traits nssv_MSVC_ORDER(2) > -nssv_constexpr bool operator!= ( - nssv_BASIC_STRING_VIEW_I( CharT, Traits ) lhs, - basic_string_view < CharT, Traits > rhs ) nssv_noexcept -{ return lhs.compare( rhs ) != 0 ; } - -// < - -template< class CharT, class Traits nssv_MSVC_ORDER(1) > -nssv_constexpr bool operator< ( - basic_string_view < CharT, Traits > lhs, - nssv_BASIC_STRING_VIEW_I( CharT, Traits ) rhs ) nssv_noexcept -{ return lhs.compare( rhs ) < 0 ; } - -template< class CharT, class Traits nssv_MSVC_ORDER(2) > -nssv_constexpr bool operator< ( - nssv_BASIC_STRING_VIEW_I( CharT, Traits ) lhs, - basic_string_view < CharT, Traits > rhs ) nssv_noexcept -{ return lhs.compare( rhs ) < 0 ; } - -// <= - -template< class CharT, class Traits nssv_MSVC_ORDER(1) > -nssv_constexpr bool operator<= ( - basic_string_view < CharT, Traits > lhs, - nssv_BASIC_STRING_VIEW_I( CharT, Traits ) rhs ) nssv_noexcept -{ return lhs.compare( rhs ) <= 0 ; } - -template< class CharT, class Traits nssv_MSVC_ORDER(2) > -nssv_constexpr bool operator<= ( - nssv_BASIC_STRING_VIEW_I( CharT, Traits ) lhs, - basic_string_view < CharT, Traits > rhs ) nssv_noexcept -{ return lhs.compare( rhs ) <= 0 ; } - -// > - -template< class CharT, class Traits nssv_MSVC_ORDER(1) > -nssv_constexpr bool operator> ( - basic_string_view < CharT, Traits > lhs, - nssv_BASIC_STRING_VIEW_I( CharT, Traits ) rhs ) nssv_noexcept -{ return lhs.compare( rhs ) > 0 ; } - -template< class CharT, class Traits nssv_MSVC_ORDER(2) > -nssv_constexpr bool operator> ( - nssv_BASIC_STRING_VIEW_I( CharT, Traits ) lhs, - basic_string_view < CharT, Traits > rhs ) nssv_noexcept -{ return lhs.compare( rhs ) > 0 ; } - -// >= - -template< class CharT, class Traits nssv_MSVC_ORDER(1) > -nssv_constexpr bool operator>= ( - basic_string_view < CharT, Traits > lhs, - nssv_BASIC_STRING_VIEW_I( CharT, Traits ) rhs ) nssv_noexcept -{ return lhs.compare( rhs ) >= 0 ; } - -template< class CharT, class Traits nssv_MSVC_ORDER(2) > -nssv_constexpr bool operator>= ( - nssv_BASIC_STRING_VIEW_I( CharT, Traits ) lhs, - basic_string_view < CharT, Traits > rhs ) nssv_noexcept -{ return lhs.compare( rhs ) >= 0 ; } - -#undef nssv_MSVC_ORDER -#undef nssv_BASIC_STRING_VIEW_I - -#endif // nssv_CPP11_OR_GREATER - -// 24.4.4 Inserters and extractors: - -namespace detail { - -template< class Stream > -void write_padding( Stream & os, std::streamsize n ) -{ - for ( std::streamsize i = 0; i < n; ++i ) - os.rdbuf()->sputc( os.fill() ); -} - -template< class Stream, class View > -Stream & write_to_stream( Stream & os, View const & sv ) -{ - typename Stream::sentry sentry( os ); - - if ( !os ) - return os; - - const std::streamsize length = static_cast( sv.length() ); - - // Whether, and how, to pad: - const bool pad = ( length < os.width() ); - const bool left_pad = pad && ( os.flags() & std::ios_base::adjustfield ) == std::ios_base::right; - - if ( left_pad ) - write_padding( os, os.width() - length ); - - // Write span characters: - os.rdbuf()->sputn( sv.begin(), length ); - - if ( pad && !left_pad ) - write_padding( os, os.width() - length ); - - // Reset output stream width: - os.width( 0 ); - - return os; -} - -} // namespace detail - -template< class CharT, class Traits > -std::basic_ostream & -operator<<( - std::basic_ostream& os, - basic_string_view sv ) -{ - return detail::write_to_stream( os, sv ); -} - -// Several typedefs for common character types are provided: - -typedef basic_string_view string_view; -typedef basic_string_view wstring_view; -#if nssv_HAVE_WCHAR16_T -typedef basic_string_view u16string_view; -typedef basic_string_view u32string_view; -#endif - -}} // namespace nonstd::sv_lite - -// -// 24.4.6 Suffix for basic_string_view literals: -// - -#if nssv_HAVE_USER_DEFINED_LITERALS - -namespace nonstd { -nssv_inline_ns namespace literals { -nssv_inline_ns namespace string_view_literals { - -#if nssv_CONFIG_STD_SV_OPERATOR && nssv_HAVE_STD_DEFINED_LITERALS - -nssv_constexpr nonstd::sv_lite::string_view operator "" sv( const char* str, size_t len ) nssv_noexcept // (1) -{ - return nonstd::sv_lite::string_view{ str, len }; -} - -nssv_constexpr nonstd::sv_lite::u16string_view operator "" sv( const char16_t* str, size_t len ) nssv_noexcept // (2) -{ - return nonstd::sv_lite::u16string_view{ str, len }; -} - -nssv_constexpr nonstd::sv_lite::u32string_view operator "" sv( const char32_t* str, size_t len ) nssv_noexcept // (3) -{ - return nonstd::sv_lite::u32string_view{ str, len }; -} - -nssv_constexpr nonstd::sv_lite::wstring_view operator "" sv( const wchar_t* str, size_t len ) nssv_noexcept // (4) -{ - return nonstd::sv_lite::wstring_view{ str, len }; -} - -#endif // nssv_CONFIG_STD_SV_OPERATOR && nssv_HAVE_STD_DEFINED_LITERALS - -#if nssv_CONFIG_USR_SV_OPERATOR - -nssv_constexpr nonstd::sv_lite::string_view operator "" _sv( const char* str, size_t len ) nssv_noexcept // (1) -{ - return nonstd::sv_lite::string_view{ str, len }; -} - -nssv_constexpr nonstd::sv_lite::u16string_view operator "" _sv( const char16_t* str, size_t len ) nssv_noexcept // (2) -{ - return nonstd::sv_lite::u16string_view{ str, len }; -} - -nssv_constexpr nonstd::sv_lite::u32string_view operator "" _sv( const char32_t* str, size_t len ) nssv_noexcept // (3) -{ - return nonstd::sv_lite::u32string_view{ str, len }; -} - -nssv_constexpr nonstd::sv_lite::wstring_view operator "" _sv( const wchar_t* str, size_t len ) nssv_noexcept // (4) -{ - return nonstd::sv_lite::wstring_view{ str, len }; -} - -#endif // nssv_CONFIG_USR_SV_OPERATOR - -}}} // namespace nonstd::literals::string_view_literals - -#endif - -// -// Extensions for std::string: -// - -#if nssv_CONFIG_CONVERSION_STD_STRING_FREE_FUNCTIONS - -namespace nonstd { -namespace sv_lite { - -// Exclude MSVC 14 (19.00): it yields ambiguous to_string(): - -#if nssv_CPP11_OR_GREATER && nssv_COMPILER_MSVC_VERSION != 140 - -template< class CharT, class Traits, class Allocator = std::allocator > -std::basic_string -to_string( basic_string_view v, Allocator const & a = Allocator() ) -{ - return std::basic_string( v.begin(), v.end(), a ); -} - -#else - -template< class CharT, class Traits > -std::basic_string -to_string( basic_string_view v ) -{ - return std::basic_string( v.begin(), v.end() ); -} - -template< class CharT, class Traits, class Allocator > -std::basic_string -to_string( basic_string_view v, Allocator const & a ) -{ - return std::basic_string( v.begin(), v.end(), a ); -} - -#endif // nssv_CPP11_OR_GREATER - -template< class CharT, class Traits, class Allocator > -basic_string_view -to_string_view( std::basic_string const & s ) -{ - return basic_string_view( s.data(), s.size() ); -} - -}} // namespace nonstd::sv_lite - -#endif // nssv_CONFIG_CONVERSION_STD_STRING_FREE_FUNCTIONS - -// -// make types and algorithms available in namespace nonstd: -// - -namespace nonstd { - -using sv_lite::basic_string_view; -using sv_lite::string_view; -using sv_lite::wstring_view; - -#if nssv_HAVE_WCHAR16_T -using sv_lite::u16string_view; -#endif -#if nssv_HAVE_WCHAR32_T -using sv_lite::u32string_view; -#endif - -// literal "sv" - -using sv_lite::operator==; -using sv_lite::operator!=; -using sv_lite::operator<; -using sv_lite::operator<=; -using sv_lite::operator>; -using sv_lite::operator>=; - -using sv_lite::operator<<; - -#if nssv_CONFIG_CONVERSION_STD_STRING_FREE_FUNCTIONS -using sv_lite::to_string; -using sv_lite::to_string_view; -#endif - -} // namespace nonstd - -// 24.4.5 Hash support (C++11): - -// Note: The hash value of a string view object is equal to the hash value of -// the corresponding string object. - -#if nssv_HAVE_STD_HASH - -#include - -namespace std { - -template<> -struct hash< nonstd::string_view > -{ -public: - std::size_t operator()( nonstd::string_view v ) const nssv_noexcept - { - return std::hash()( std::string( v.data(), v.size() ) ); - } + explicit InjaError(const std::string& type, const std::string& message, SourceLocation location) + : std::runtime_error("[inja.exception." + type + "] (at " + std::to_string(location.line) + ":" + std::to_string(location.column) + ") " + message), + type(type), message(message), location(location) {} }; -template<> -struct hash< nonstd::wstring_view > -{ -public: - std::size_t operator()( nonstd::wstring_view v ) const nssv_noexcept - { - return std::hash()( std::wstring( v.data(), v.size() ) ); - } +struct ParserError : public InjaError { + explicit ParserError(const std::string& message, SourceLocation location): InjaError("parser_error", message, location) {} }; -template<> -struct hash< nonstd::u16string_view > -{ -public: - std::size_t operator()( nonstd::u16string_view v ) const nssv_noexcept - { - return std::hash()( std::u16string( v.data(), v.size() ) ); - } +struct RenderError : public InjaError { + explicit RenderError(const std::string& message, SourceLocation location): InjaError("render_error", message, location) {} }; -template<> -struct hash< nonstd::u32string_view > -{ -public: - std::size_t operator()( nonstd::u32string_view v ) const nssv_noexcept - { - return std::hash()( std::u32string( v.data(), v.size() ) ); - } +struct FileError : public InjaError { + explicit FileError(const std::string& message): InjaError("file_error", message) {} + explicit FileError(const std::string& message, SourceLocation location): InjaError("file_error", message, location) {} }; -} // namespace std +struct DataError : public InjaError { + explicit DataError(const std::string& message, SourceLocation location): InjaError("data_error", message, location) {} +}; -#endif // nssv_HAVE_STD_HASH - -nssv_RESTORE_WARNINGS() - -#endif // nssv_HAVE_STD_STRING_VIEW -#endif // NONSTD_SV_LITE_H_INCLUDED +} // namespace inja +#endif // INCLUDE_INJA_EXCEPTIONS_HPP_ namespace inja { -enum class ElementNotation { - Dot, - Pointer +namespace string_view { +inline std::string_view slice(std::string_view view, size_t start, size_t end) { + start = std::min(start, view.size()); + end = std::min(std::max(start, end), view.size()); + return view.substr(start, end - start); +} + +inline std::pair split(std::string_view view, char Separator) { + size_t idx = view.find(Separator); + if (idx == std::string_view::npos) { + return std::make_pair(view, std::string_view()); + } + return std::make_pair(slice(view, 0, idx), slice(view, idx + 1, std::string_view::npos)); +} + +inline bool starts_with(std::string_view view, std::string_view prefix) { + return (view.size() >= prefix.size() && view.compare(0, prefix.size(), prefix) == 0); +} +} // namespace string_view + +inline SourceLocation get_source_location(std::string_view content, size_t pos) { + // Get line and offset position (starts at 1:1) + auto sliced = string_view::slice(content, 0, pos); + std::size_t last_newline = sliced.rfind("\n"); + + if (last_newline == std::string_view::npos) { + return {1, sliced.length() + 1}; + } + + // Count newlines + size_t count_lines = 0; + size_t search_start = 0; + while (search_start <= sliced.size()) { + search_start = sliced.find("\n", search_start) + 1; + if (search_start == 0) { + break; + } + count_lines += 1; + } + + return {count_lines + 1, sliced.length() - last_newline}; +} + +inline void replace_substring(std::string& s, const std::string& f, const std::string& t) { + if (f.empty()) { + return; + } + for (auto pos = s.find(f); // find first occurrence of f + pos != std::string::npos; // make sure f was found + s.replace(pos, f.size(), t), // replace with t, and + pos = s.find(f, pos + t.size())) // find next occurrence of f + {} +} + +} // namespace inja + +#endif // INCLUDE_INJA_UTILS_HPP_ + + +namespace inja { + +class NodeVisitor; +class BlockNode; +class TextNode; +class ExpressionNode; +class LiteralNode; +class DataNode; +class FunctionNode; +class ExpressionListNode; +class StatementNode; +class ForStatementNode; +class ForArrayStatementNode; +class ForObjectStatementNode; +class IfStatementNode; +class IncludeStatementNode; +class ExtendsStatementNode; +class BlockStatementNode; +class SetStatementNode; + +class NodeVisitor { +public: + virtual ~NodeVisitor() = default; + + virtual void visit(const BlockNode& node) = 0; + virtual void visit(const TextNode& node) = 0; + virtual void visit(const ExpressionNode& node) = 0; + virtual void visit(const LiteralNode& node) = 0; + virtual void visit(const DataNode& node) = 0; + virtual void visit(const FunctionNode& node) = 0; + virtual void visit(const ExpressionListNode& node) = 0; + virtual void visit(const StatementNode& node) = 0; + virtual void visit(const ForStatementNode& node) = 0; + virtual void visit(const ForArrayStatementNode& node) = 0; + virtual void visit(const ForObjectStatementNode& node) = 0; + virtual void visit(const IfStatementNode& node) = 0; + virtual void visit(const IncludeStatementNode& node) = 0; + virtual void visit(const ExtendsStatementNode& node) = 0; + virtual void visit(const BlockStatementNode& node) = 0; + virtual void visit(const SetStatementNode& node) = 0; }; +/*! + * \brief Base node class for the abstract syntax tree (AST). + */ +class AstNode { +public: + virtual void accept(NodeVisitor& v) const = 0; + + size_t pos; + + AstNode(size_t pos): pos(pos) {} + virtual ~AstNode() {} +}; + +class BlockNode : public AstNode { +public: + std::vector> nodes; + + explicit BlockNode(): AstNode(0) {} + + void accept(NodeVisitor& v) const { + v.visit(*this); + } +}; + +class TextNode : public AstNode { +public: + const size_t length; + + explicit TextNode(size_t pos, size_t length): AstNode(pos), length(length) {} + + void accept(NodeVisitor& v) const { + v.visit(*this); + } +}; + +class ExpressionNode : public AstNode { +public: + explicit ExpressionNode(size_t pos): AstNode(pos) {} + + void accept(NodeVisitor& v) const { + v.visit(*this); + } +}; + +class LiteralNode : public ExpressionNode { +public: + const json value; + + explicit LiteralNode(std::string_view data_text, size_t pos): ExpressionNode(pos), value(json::parse(data_text)) {} + + void accept(NodeVisitor& v) const { + v.visit(*this); + } +}; + +class DataNode : public ExpressionNode { +public: + const std::string name; + const json::json_pointer ptr; + + static std::string convert_dot_to_ptr(std::string_view ptr_name) { + std::string result; + do { + std::string_view part; + std::tie(part, ptr_name) = string_view::split(ptr_name, '.'); + result.push_back('/'); + result.append(part.begin(), part.end()); + } while (!ptr_name.empty()); + return result; + } + + explicit DataNode(std::string_view ptr_name, size_t pos): ExpressionNode(pos), name(ptr_name), ptr(json::json_pointer(convert_dot_to_ptr(ptr_name))) {} + + void accept(NodeVisitor& v) const { + v.visit(*this); + } +}; + +class FunctionNode : public ExpressionNode { + using Op = FunctionStorage::Operation; + +public: + enum class Associativity { + Left, + Right, + }; + + unsigned int precedence; + Associativity associativity; + + Op operation; + + std::string name; + int number_args; // Should also be negative -> -1 for unknown number + std::vector> arguments; + CallbackFunction callback; + + explicit FunctionNode(std::string_view name, size_t pos) + : ExpressionNode(pos), precedence(8), associativity(Associativity::Left), operation(Op::Callback), name(name), number_args(1) {} + explicit FunctionNode(Op operation, size_t pos): ExpressionNode(pos), operation(operation), number_args(1) { + switch (operation) { + case Op::Not: { + number_args = 1; + precedence = 4; + associativity = Associativity::Left; + } break; + case Op::And: { + number_args = 2; + precedence = 1; + associativity = Associativity::Left; + } break; + case Op::Or: { + number_args = 2; + precedence = 1; + associativity = Associativity::Left; + } break; + case Op::In: { + number_args = 2; + precedence = 2; + associativity = Associativity::Left; + } break; + case Op::Equal: { + number_args = 2; + precedence = 2; + associativity = Associativity::Left; + } break; + case Op::NotEqual: { + number_args = 2; + precedence = 2; + associativity = Associativity::Left; + } break; + case Op::Greater: { + number_args = 2; + precedence = 2; + associativity = Associativity::Left; + } break; + case Op::GreaterEqual: { + number_args = 2; + precedence = 2; + associativity = Associativity::Left; + } break; + case Op::Less: { + number_args = 2; + precedence = 2; + associativity = Associativity::Left; + } break; + case Op::LessEqual: { + number_args = 2; + precedence = 2; + associativity = Associativity::Left; + } break; + case Op::Add: { + number_args = 2; + precedence = 3; + associativity = Associativity::Left; + } break; + case Op::Subtract: { + number_args = 2; + precedence = 3; + associativity = Associativity::Left; + } break; + case Op::Multiplication: { + number_args = 2; + precedence = 4; + associativity = Associativity::Left; + } break; + case Op::Division: { + number_args = 2; + precedence = 4; + associativity = Associativity::Left; + } break; + case Op::Power: { + number_args = 2; + precedence = 5; + associativity = Associativity::Right; + } break; + case Op::Modulo: { + number_args = 2; + precedence = 4; + associativity = Associativity::Left; + } break; + case Op::AtId: { + number_args = 2; + precedence = 8; + associativity = Associativity::Left; + } break; + default: { + precedence = 1; + associativity = Associativity::Left; + } + } + } + + void accept(NodeVisitor& v) const { + v.visit(*this); + } +}; + +class ExpressionListNode : public AstNode { +public: + std::shared_ptr root; + + explicit ExpressionListNode(): AstNode(0) {} + explicit ExpressionListNode(size_t pos): AstNode(pos) {} + + void accept(NodeVisitor& v) const { + v.visit(*this); + } +}; + +class StatementNode : public AstNode { +public: + StatementNode(size_t pos): AstNode(pos) {} + + virtual void accept(NodeVisitor& v) const = 0; +}; + +class ForStatementNode : public StatementNode { +public: + ExpressionListNode condition; + BlockNode body; + BlockNode* const parent; + + ForStatementNode(BlockNode* const parent, size_t pos): StatementNode(pos), parent(parent) {} + + virtual void accept(NodeVisitor& v) const = 0; +}; + +class ForArrayStatementNode : public ForStatementNode { +public: + const std::string value; + + explicit ForArrayStatementNode(const std::string& value, BlockNode* const parent, size_t pos): ForStatementNode(parent, pos), value(value) {} + + void accept(NodeVisitor& v) const { + v.visit(*this); + } +}; + +class ForObjectStatementNode : public ForStatementNode { +public: + const std::string key; + const std::string value; + + explicit ForObjectStatementNode(const std::string& key, const std::string& value, BlockNode* const parent, size_t pos) + : ForStatementNode(parent, pos), key(key), value(value) {} + + void accept(NodeVisitor& v) const { + v.visit(*this); + } +}; + +class IfStatementNode : public StatementNode { +public: + ExpressionListNode condition; + BlockNode true_statement; + BlockNode false_statement; + BlockNode* const parent; + + const bool is_nested; + bool has_false_statement {false}; + + explicit IfStatementNode(BlockNode* const parent, size_t pos): StatementNode(pos), parent(parent), is_nested(false) {} + explicit IfStatementNode(bool is_nested, BlockNode* const parent, size_t pos): StatementNode(pos), parent(parent), is_nested(is_nested) {} + + void accept(NodeVisitor& v) const { + v.visit(*this); + } +}; + +class IncludeStatementNode : public StatementNode { +public: + const std::string file; + + explicit IncludeStatementNode(const std::string& file, size_t pos): StatementNode(pos), file(file) {} + + void accept(NodeVisitor& v) const { + v.visit(*this); + } +}; + +class ExtendsStatementNode : public StatementNode { +public: + const std::string file; + + explicit ExtendsStatementNode(const std::string& file, size_t pos): StatementNode(pos), file(file) {} + + void accept(NodeVisitor& v) const { + v.visit(*this); + }; +}; + +class BlockStatementNode : public StatementNode { +public: + const std::string name; + BlockNode block; + BlockNode* const parent; + + explicit BlockStatementNode(BlockNode* const parent, const std::string& name, size_t pos): StatementNode(pos), name(name), parent(parent) {} + + void accept(NodeVisitor& v) const { + v.visit(*this); + }; +}; + +class SetStatementNode : public StatementNode { +public: + const std::string key; + ExpressionListNode expression; + + explicit SetStatementNode(const std::string& key, size_t pos): StatementNode(pos), key(key) {} + + void accept(NodeVisitor& v) const { + v.visit(*this); + } +}; + +} // namespace inja + +#endif // INCLUDE_INJA_NODE_HPP_ + +// #include "statistics.hpp" +#ifndef INCLUDE_INJA_STATISTICS_HPP_ +#define INCLUDE_INJA_STATISTICS_HPP_ + +// #include "node.hpp" + + +namespace inja { + +/*! + * \brief A class for counting statistics on a Template. + */ +class StatisticsVisitor : public NodeVisitor { + void visit(const BlockNode& node) { + for (auto& n : node.nodes) { + n->accept(*this); + } + } + + void visit(const TextNode&) {} + void visit(const ExpressionNode&) {} + void visit(const LiteralNode&) {} + + void visit(const DataNode&) { + variable_counter += 1; + } + + void visit(const FunctionNode& node) { + for (auto& n : node.arguments) { + n->accept(*this); + } + } + + void visit(const ExpressionListNode& node) { + node.root->accept(*this); + } + + void visit(const StatementNode&) {} + void visit(const ForStatementNode&) {} + + void visit(const ForArrayStatementNode& node) { + node.condition.accept(*this); + node.body.accept(*this); + } + + void visit(const ForObjectStatementNode& node) { + node.condition.accept(*this); + node.body.accept(*this); + } + + void visit(const IfStatementNode& node) { + node.condition.accept(*this); + node.true_statement.accept(*this); + node.false_statement.accept(*this); + } + + void visit(const IncludeStatementNode&) {} + + void visit(const ExtendsStatementNode&) {} + + void visit(const BlockStatementNode& node) { + node.block.accept(*this); + } + + void visit(const SetStatementNode&) {} + +public: + unsigned int variable_counter; + + explicit StatisticsVisitor(): variable_counter(0) {} +}; + +} // namespace inja + +#endif // INCLUDE_INJA_STATISTICS_HPP_ + + +namespace inja { + +/*! + * \brief The main inja Template. + */ +struct Template { + BlockNode root; + std::string content; + std::map> block_storage; + + explicit Template() {} + explicit Template(const std::string& content): content(content) {} + + /// Return number of variables (total number, not distinct ones) in the template + int count_variables() { + auto statistic_visitor = StatisticsVisitor(); + root.accept(statistic_visitor); + return statistic_visitor.variable_counter; + } +}; + +using TemplateStorage = std::map; + +} // namespace inja + +#endif // INCLUDE_INJA_TEMPLATE_HPP_ + + +namespace inja { + /*! * \brief Class for lexer configuration. */ struct LexerConfig { std::string statement_open {"{%"}; + std::string statement_open_no_lstrip {"{%+"}; + std::string statement_open_force_lstrip {"{%-"}; std::string statement_close {"%}"}; + std::string statement_close_force_rstrip {"-%}"}; std::string line_statement {"##"}; std::string expression_open {"{{"}; + std::string expression_open_force_lstrip {"{{-"}; std::string expression_close {"}}"}; + std::string expression_close_force_rstrip {"-}}"}; std::string comment_open {"{#"}; + std::string comment_open_force_lstrip {"{#-"}; std::string comment_close {"#}"}; + std::string comment_close_force_rstrip {"-#}"}; std::string open_chars {"#{"}; bool trim_blocks {false}; @@ -1435,12 +849,24 @@ struct LexerConfig { if (open_chars.find(statement_open[0]) == std::string::npos) { open_chars += statement_open[0]; } + if (open_chars.find(statement_open_no_lstrip[0]) == std::string::npos) { + open_chars += statement_open_no_lstrip[0]; + } + if (open_chars.find(statement_open_force_lstrip[0]) == std::string::npos) { + open_chars += statement_open_force_lstrip[0]; + } if (open_chars.find(expression_open[0]) == std::string::npos) { open_chars += expression_open[0]; } + if (open_chars.find(expression_open_force_lstrip[0]) == std::string::npos) { + open_chars += expression_open_force_lstrip[0]; + } if (open_chars.find(comment_open[0]) == std::string::npos) { open_chars += comment_open[0]; } + if (open_chars.find(comment_open_force_lstrip[0]) == std::string::npos) { + open_chars += comment_open_force_lstrip[0]; + } } }; @@ -1448,245 +874,43 @@ struct LexerConfig { * \brief Class for parser configuration. */ struct ParserConfig { - ElementNotation notation {ElementNotation::Dot}; + bool search_included_templates_in_files {true}; + + std::function include_callback; }; -} - -#endif // PANTOR_INJA_CONFIG_HPP - -// #include "function_storage.hpp" -#ifndef PANTOR_INJA_FUNCTION_STORAGE_HPP -#define PANTOR_INJA_FUNCTION_STORAGE_HPP - -#include - -// #include "bytecode.hpp" -#ifndef PANTOR_INJA_BYTECODE_HPP -#define PANTOR_INJA_BYTECODE_HPP - -#include -#include - -#include - -// #include "string_view.hpp" - - - -namespace inja { - -using json = nlohmann::json; - - -struct Bytecode { - enum class Op : uint8_t { - Nop, - // print StringRef (always immediate) - PrintText, - // print value - PrintValue, - // push value onto stack (always immediate) - Push, - - // builtin functions - // result is pushed to stack - // args specify number of arguments - // all functions can take their "last" argument either immediate - // or popped off stack (e.g. if immediate, it's like the immediate was - // just pushed to the stack) - Not, - And, - Or, - In, - Equal, - Greater, - GreaterEqual, - Less, - LessEqual, - At, - Different, - DivisibleBy, - Even, - First, - Float, - Int, - Last, - Length, - Lower, - Max, - Min, - Odd, - Range, - Result, - Round, - Sort, - Upper, - Exists, - ExistsInObject, - IsBoolean, - IsNumber, - IsInteger, - IsFloat, - IsObject, - IsArray, - IsString, - Default, - - // include another template - // value is the template name - Include, - - // callback function - // str is the function name (this means it cannot be a lookup) - // args specify number of arguments - // as with builtin functions, "last" argument can be immediate - Callback, - - // unconditional jump - // args is the index of the bytecode to jump to. - Jump, - - // conditional jump - // value popped off stack is checked for truthyness - // if false, args is the index of the bytecode to jump to. - // if true, no action is taken (falls through) - ConditionalJump, - - // start loop - // value popped off stack is what is iterated over - // args is index of bytecode after end loop (jumped to if iterable is - // empty) - // immediate value is key name (for maps) - // str is value name - StartLoop, - - // end a loop - // args is index of the first bytecode in the loop body - EndLoop, - }; - - enum Flag { - // location of value for value-taking ops (mask) - ValueMask = 0x03, - // pop value off stack - ValuePop = 0x00, - // value is immediate rather than on stack - ValueImmediate = 0x01, - // lookup immediate str (dot notation) - ValueLookupDot = 0x02, - // lookup immediate str (json pointer notation) - ValueLookupPointer = 0x03, - }; - - Op op {Op::Nop}; - uint32_t args: 30; - uint32_t flags: 2; - - json value; - std::string str; - - Bytecode(): args(0), flags(0) {} - explicit Bytecode(Op op, unsigned int args = 0): op(op), args(args), flags(0) {} - explicit Bytecode(Op op, nonstd::string_view str, unsigned int flags): op(op), args(0), flags(flags), str(str) {} - explicit Bytecode(Op op, json&& value, unsigned int flags): op(op), args(0), flags(flags), value(std::move(value)) {} -}; - -} // namespace inja - -#endif // PANTOR_INJA_BYTECODE_HPP - -// #include "string_view.hpp" - - - -namespace inja { - -using namespace nlohmann; - -using Arguments = std::vector; -using CallbackFunction = std::function; - /*! - * \brief Class for builtin functions and user-defined callbacks. + * \brief Class for render configuration. */ -class FunctionStorage { - public: - void add_builtin(nonstd::string_view name, unsigned int num_args, Bytecode::Op op) { - auto& data = get_or_new(name, num_args); - data.op = op; - } - - void add_callback(nonstd::string_view name, unsigned int num_args, const CallbackFunction& function) { - auto& data = get_or_new(name, num_args); - data.function = function; - } - - Bytecode::Op find_builtin(nonstd::string_view name, unsigned int num_args) const { - if (auto ptr = get(name, num_args)) { - return ptr->op; - } - return Bytecode::Op::Nop; - } - - CallbackFunction find_callback(nonstd::string_view name, unsigned int num_args) const { - if (auto ptr = get(name, num_args)) { - return ptr->function; - } - return nullptr; - } - - private: - struct FunctionData { - unsigned int num_args {0}; - Bytecode::Op op {Bytecode::Op::Nop}; // for builtins - CallbackFunction function; // for callbacks - }; - - FunctionData& get_or_new(nonstd::string_view name, unsigned int num_args) { - auto &vec = m_map[static_cast(name)]; - for (auto &i: vec) { - if (i.num_args == num_args) return i; - } - vec.emplace_back(); - vec.back().num_args = num_args; - return vec.back(); - } - - const FunctionData* get(nonstd::string_view name, unsigned int num_args) const { - auto it = m_map.find(static_cast(name)); - if (it == m_map.end()) return nullptr; - for (auto &&i: it->second) { - if (i.num_args == num_args) return &i; - } - return nullptr; - } - - std::map> m_map; +struct RenderConfig { + bool throw_at_missing_includes {true}; }; -} +} // namespace inja -#endif // PANTOR_INJA_FUNCTION_STORAGE_HPP +#endif // INCLUDE_INJA_CONFIG_HPP_ + +// #include "function_storage.hpp" // #include "parser.hpp" -#ifndef PANTOR_INJA_PARSER_HPP -#define PANTOR_INJA_PARSER_HPP +#ifndef INCLUDE_INJA_PARSER_HPP_ +#define INCLUDE_INJA_PARSER_HPP_ #include +#include #include #include #include -// #include "bytecode.hpp" - // #include "config.hpp" +// #include "exceptions.hpp" + // #include "function_storage.hpp" // #include "lexer.hpp" -#ifndef PANTOR_INJA_LEXER_HPP -#define PANTOR_INJA_LEXER_HPP +#ifndef INCLUDE_INJA_LEXER_HPP_ +#define INCLUDE_INJA_LEXER_HPP_ #include #include @@ -1694,130 +918,81 @@ class FunctionStorage { // #include "config.hpp" // #include "token.hpp" -#ifndef PANTOR_INJA_TOKEN_HPP -#define PANTOR_INJA_TOKEN_HPP +#ifndef INCLUDE_INJA_TOKEN_HPP_ +#define INCLUDE_INJA_TOKEN_HPP_ #include - -// #include "string_view.hpp" - - +#include namespace inja { /*! - * \brief Helper-class for the inja Parser. + * \brief Helper-class for the inja Lexer. */ struct Token { enum class Kind { Text, - ExpressionOpen, // {{ - ExpressionClose, // }} - LineStatementOpen, // ## - LineStatementClose, // \n - StatementOpen, // {% - StatementClose, // %} - CommentOpen, // {# - CommentClose, // #} - Id, // this, this.foo - Number, // 1, 2, -1, 5.2, -5.3 - String, // "this" - Comma, // , - Colon, // : - LeftParen, // ( - RightParen, // ) - LeftBracket, // [ - RightBracket, // ] - LeftBrace, // { - RightBrace, // } - Equal, // == - GreaterThan, // > - GreaterEqual, // >= - LessThan, // < - LessEqual, // <= - NotEqual, // != + ExpressionOpen, // {{ + ExpressionClose, // }} + LineStatementOpen, // ## + LineStatementClose, // \n + StatementOpen, // {% + StatementClose, // %} + CommentOpen, // {# + CommentClose, // #} + Id, // this, this.foo + Number, // 1, 2, -1, 5.2, -5.3 + String, // "this" + Plus, // + + Minus, // - + Times, // * + Slash, // / + Percent, // % + Power, // ^ + Comma, // , + Dot, // . + Colon, // : + LeftParen, // ( + RightParen, // ) + LeftBracket, // [ + RightBracket, // ] + LeftBrace, // { + RightBrace, // } + Equal, // == + NotEqual, // != + GreaterThan, // > + GreaterEqual, // >= + LessThan, // < + LessEqual, // <= Unknown, - Eof - } kind {Kind::Unknown}; + Eof, + }; - nonstd::string_view text; + Kind kind {Kind::Unknown}; + std::string_view text; - constexpr Token() = default; - constexpr Token(Kind kind, nonstd::string_view text): kind(kind), text(text) {} + explicit constexpr Token() = default; + explicit constexpr Token(Kind kind, std::string_view text): kind(kind), text(text) {} std::string describe() const { switch (kind) { - case Kind::Text: - return ""; - case Kind::LineStatementClose: - return ""; - case Kind::Eof: - return ""; - default: - return static_cast(text); + case Kind::Text: + return ""; + case Kind::LineStatementClose: + return ""; + case Kind::Eof: + return ""; + default: + return static_cast(text); } } }; -} +} // namespace inja -#endif // PANTOR_INJA_TOKEN_HPP +#endif // INCLUDE_INJA_TOKEN_HPP_ // #include "utils.hpp" -#ifndef PANTOR_INJA_UTILS_HPP -#define PANTOR_INJA_UTILS_HPP - -#include -#include -#include -#include -#include - -// #include "string_view.hpp" - - - -namespace inja { - -inline void inja_throw(const std::string& type, const std::string& message) { - throw std::runtime_error("[inja.exception." + type + "] " + message); -} - -inline std::ifstream open_file_or_throw(const std::string& path) { - std::ifstream file; - file.exceptions(std::ifstream::failbit | std::ifstream::badbit); - try { - file.open(path); - } catch(const std::ios_base::failure& e) { - inja_throw("file_error", "failed accessing file at '" + path + "'"); - } - return file; -} - -namespace string_view { - inline nonstd::string_view slice(nonstd::string_view view, size_t start, size_t end) { - start = std::min(start, view.size()); - end = std::min(std::max(start, end), view.size()); - return view.substr(start, end - start); // StringRef(Data + Start, End - Start); - } - - inline std::pair split(nonstd::string_view view, char Separator) { - size_t idx = view.find(Separator); - if (idx == nonstd::string_view::npos) { - return std::make_pair(view, nonstd::string_view()); - } - return std::make_pair(slice(view, 0, idx), slice(view, idx + 1, nonstd::string_view::npos)); - } - - inline bool starts_with(nonstd::string_view view, nonstd::string_view prefix) { - return (view.size() >= prefix.size() && view.compare(0, prefix.size(), prefix) == 0); - } -} // namespace string - -} // namespace inja - -#endif // PANTOR_INJA_UTILS_HPP - namespace inja { @@ -1829,236 +1004,190 @@ class Lexer { enum class State { Text, ExpressionStart, + ExpressionStartForceLstrip, ExpressionBody, LineStart, LineBody, StatementStart, + StatementStartNoLstrip, + StatementStartForceLstrip, StatementBody, CommentStart, - CommentBody - } m_state; + CommentStartForceLstrip, + CommentBody, + }; - const LexerConfig& m_config; - nonstd::string_view m_in; - size_t m_tok_start; - size_t m_pos; + enum class MinusState { + Operator, + Number, + }; - public: - explicit Lexer(const LexerConfig& config) : m_config(config) {} + const LexerConfig& config; - void start(nonstd::string_view in) { - m_in = in; - m_tok_start = 0; - m_pos = 0; - m_state = State::Text; - } + State state; + MinusState minus_state; + std::string_view m_in; + size_t tok_start; + size_t pos; - Token scan() { - m_tok_start = m_pos; - - again: - if (m_tok_start >= m_in.size()) return make_token(Token::Kind::Eof); - - switch (m_state) { - default: - case State::Text: { - // fast-scan to first open character - size_t open_start = m_in.substr(m_pos).find_first_of(m_config.open_chars); - if (open_start == nonstd::string_view::npos) { - // didn't find open, return remaining text as text token - m_pos = m_in.size(); - return make_token(Token::Kind::Text); - } - m_pos += open_start; - - // try to match one of the opening sequences, and get the close - nonstd::string_view open_str = m_in.substr(m_pos); - bool must_lstrip = false; - if (inja::string_view::starts_with(open_str, m_config.expression_open)) { - m_state = State::ExpressionStart; - } else if (inja::string_view::starts_with(open_str, m_config.statement_open)) { - m_state = State::StatementStart; - must_lstrip = m_config.lstrip_blocks; - } else if (inja::string_view::starts_with(open_str, m_config.comment_open)) { - m_state = State::CommentStart; - must_lstrip = m_config.lstrip_blocks; - } else if ((m_pos == 0 || m_in[m_pos - 1] == '\n') && - inja::string_view::starts_with(open_str, m_config.line_statement)) { - m_state = State::LineStart; - } else { - m_pos += 1; // wasn't actually an opening sequence - goto again; - } - - nonstd::string_view text = string_view::slice(m_in, m_tok_start, m_pos); - if (must_lstrip) - text = clear_final_line_if_whitespace(text); - - if (text.empty()) goto again; // don't generate empty token - return Token(Token::Kind::Text, text); - } - case State::ExpressionStart: { - m_state = State::ExpressionBody; - m_pos += m_config.expression_open.size(); - return make_token(Token::Kind::ExpressionOpen); - } - case State::LineStart: { - m_state = State::LineBody; - m_pos += m_config.line_statement.size(); - return make_token(Token::Kind::LineStatementOpen); - } - case State::StatementStart: { - m_state = State::StatementBody; - m_pos += m_config.statement_open.size(); - return make_token(Token::Kind::StatementOpen); - } - case State::CommentStart: { - m_state = State::CommentBody; - m_pos += m_config.comment_open.size(); - return make_token(Token::Kind::CommentOpen); - } - case State::ExpressionBody: - return scan_body(m_config.expression_close, Token::Kind::ExpressionClose); - case State::LineBody: - return scan_body("\n", Token::Kind::LineStatementClose); - case State::StatementBody: - return scan_body(m_config.statement_close, Token::Kind::StatementClose, m_config.trim_blocks); - case State::CommentBody: { - // fast-scan to comment close - size_t end = m_in.substr(m_pos).find(m_config.comment_close); - if (end == nonstd::string_view::npos) { - m_pos = m_in.size(); - return make_token(Token::Kind::Eof); - } - // return the entire comment in the close token - m_state = State::Text; - m_pos += end + m_config.comment_close.size(); - Token tok = make_token(Token::Kind::CommentClose); - if (m_config.trim_blocks) - skip_newline(); - return tok; - } - } - } - - const LexerConfig& get_config() const { return m_config; } - - private: - Token scan_body(nonstd::string_view close, Token::Kind closeKind, bool trim = false) { + Token scan_body(std::string_view close, Token::Kind closeKind, std::string_view close_trim = std::string_view(), bool trim = false) { again: // skip whitespace (except for \n as it might be a close) - if (m_tok_start >= m_in.size()) return make_token(Token::Kind::Eof); - char ch = m_in[m_tok_start]; + if (tok_start >= m_in.size()) { + return make_token(Token::Kind::Eof); + } + const char ch = m_in[tok_start]; if (ch == ' ' || ch == '\t' || ch == '\r') { - m_tok_start += 1; + tok_start += 1; goto again; } // check for close - if (inja::string_view::starts_with(m_in.substr(m_tok_start), close)) { - m_state = State::Text; - m_pos = m_tok_start + close.size(); - Token tok = make_token(closeKind); - if (trim) - skip_newline(); + if (!close_trim.empty() && inja::string_view::starts_with(m_in.substr(tok_start), close_trim)) { + state = State::Text; + pos = tok_start + close_trim.size(); + const Token tok = make_token(closeKind); + skip_whitespaces_and_newlines(); + return tok; + } + + if (inja::string_view::starts_with(m_in.substr(tok_start), close)) { + state = State::Text; + pos = tok_start + close.size(); + const Token tok = make_token(closeKind); + if (trim) { + skip_whitespaces_and_first_newline(); + } return tok; } // skip \n if (ch == '\n') { - m_tok_start += 1; + tok_start += 1; goto again; } - m_pos = m_tok_start + 1; - if (std::isalpha(ch)) return scan_id(); + pos = tok_start + 1; + if (std::isalpha(ch)) { + minus_state = MinusState::Operator; + return scan_id(); + } + + const MinusState current_minus_state = minus_state; + if (minus_state == MinusState::Operator) { + minus_state = MinusState::Number; + } + switch (ch) { - case ',': - return make_token(Token::Kind::Comma); - case ':': - return make_token(Token::Kind::Colon); - case '(': - return make_token(Token::Kind::LeftParen); - case ')': - return make_token(Token::Kind::RightParen); - case '[': - return make_token(Token::Kind::LeftBracket); - case ']': - return make_token(Token::Kind::RightBracket); - case '{': - return make_token(Token::Kind::LeftBrace); - case '}': - return make_token(Token::Kind::RightBrace); - case '>': - if (m_pos < m_in.size() && m_in[m_pos] == '=') { - m_pos += 1; - return make_token(Token::Kind::GreaterEqual); - } - return make_token(Token::Kind::GreaterThan); - case '<': - if (m_pos < m_in.size() && m_in[m_pos] == '=') { - m_pos += 1; - return make_token(Token::Kind::LessEqual); - } - return make_token(Token::Kind::LessThan); - case '=': - if (m_pos < m_in.size() && m_in[m_pos] == '=') { - m_pos += 1; - return make_token(Token::Kind::Equal); - } - return make_token(Token::Kind::Unknown); - case '!': - if (m_pos < m_in.size() && m_in[m_pos] == '=') { - m_pos += 1; - return make_token(Token::Kind::NotEqual); - } - return make_token(Token::Kind::Unknown); - case '\"': - return scan_string(); - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case '-': - return scan_number(); - case '_': - return scan_id(); - default: - return make_token(Token::Kind::Unknown); + case '+': + return make_token(Token::Kind::Plus); + case '-': + if (current_minus_state == MinusState::Operator) { + return make_token(Token::Kind::Minus); + } + return scan_number(); + case '*': + return make_token(Token::Kind::Times); + case '/': + return make_token(Token::Kind::Slash); + case '^': + return make_token(Token::Kind::Power); + case '%': + return make_token(Token::Kind::Percent); + case '.': + return make_token(Token::Kind::Dot); + case ',': + return make_token(Token::Kind::Comma); + case ':': + return make_token(Token::Kind::Colon); + case '(': + return make_token(Token::Kind::LeftParen); + case ')': + minus_state = MinusState::Operator; + return make_token(Token::Kind::RightParen); + case '[': + return make_token(Token::Kind::LeftBracket); + case ']': + minus_state = MinusState::Operator; + return make_token(Token::Kind::RightBracket); + case '{': + return make_token(Token::Kind::LeftBrace); + case '}': + minus_state = MinusState::Operator; + return make_token(Token::Kind::RightBrace); + case '>': + if (pos < m_in.size() && m_in[pos] == '=') { + pos += 1; + return make_token(Token::Kind::GreaterEqual); + } + return make_token(Token::Kind::GreaterThan); + case '<': + if (pos < m_in.size() && m_in[pos] == '=') { + pos += 1; + return make_token(Token::Kind::LessEqual); + } + return make_token(Token::Kind::LessThan); + case '=': + if (pos < m_in.size() && m_in[pos] == '=') { + pos += 1; + return make_token(Token::Kind::Equal); + } + return make_token(Token::Kind::Unknown); + case '!': + if (pos < m_in.size() && m_in[pos] == '=') { + pos += 1; + return make_token(Token::Kind::NotEqual); + } + return make_token(Token::Kind::Unknown); + case '\"': + return scan_string(); + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + minus_state = MinusState::Operator; + return scan_number(); + case '_': + case '@': + case '$': + minus_state = MinusState::Operator; + return scan_id(); + default: + return make_token(Token::Kind::Unknown); } } Token scan_id() { for (;;) { - if (m_pos >= m_in.size()) { + if (pos >= m_in.size()) { break; } - char ch = m_in[m_pos]; + const char ch = m_in[pos]; if (!std::isalnum(ch) && ch != '.' && ch != '/' && ch != '_' && ch != '-') { break; } - m_pos += 1; + pos += 1; } return make_token(Token::Kind::Id); } Token scan_number() { for (;;) { - if (m_pos >= m_in.size()) { + if (pos >= m_in.size()) { break; } - char ch = m_in[m_pos]; + const char ch = m_in[pos]; // be very permissive in lexer (we'll catch errors when conversion happens) - if (!std::isdigit(ch) && ch != '.' && ch != 'e' && ch != 'E' && ch != '+' && ch != '-') { + if (!(std::isdigit(ch) || ch == '.' || ch == 'e' || ch == 'E' || (ch == '+' && (pos == 0 || m_in[pos-1] == 'e' || m_in[pos-1] == 'E')) || (ch == '-' && (pos == 0 || m_in[pos-1] == 'e' || m_in[pos-1] == 'E')))) { break; } - m_pos += 1; + pos += 1; } return make_token(Token::Kind::Number); } @@ -2066,11 +1195,13 @@ class Lexer { Token scan_string() { bool escape {false}; for (;;) { - if (m_pos >= m_in.size()) break; - char ch = m_in[m_pos++]; + if (pos >= m_in.size()) { + break; + } + const char ch = m_in[pos++]; if (ch == '\\') { escape = true; - } else if (!escape && ch == m_in[m_tok_start]) { + } else if (!escape && ch == m_in[tok_start]) { break; } else { escape = false; @@ -2080,675 +1211,870 @@ class Lexer { } Token make_token(Token::Kind kind) const { - return Token(kind, string_view::slice(m_in, m_tok_start, m_pos)); + return Token(kind, string_view::slice(m_in, tok_start, pos)); } - void skip_newline() { - if (m_pos < m_in.size()) { - char ch = m_in[m_pos]; - if (ch == '\n') - m_pos += 1; - else if (ch == '\r') { - m_pos += 1; - if (m_pos < m_in.size() && m_in[m_pos] == '\n') - m_pos += 1; + void skip_whitespaces_and_newlines() { + if (pos < m_in.size()) { + while (pos < m_in.size() && (m_in[pos] == ' ' || m_in[pos] == '\t' || m_in[pos] == '\n' || m_in[pos] == '\r')) { + pos += 1; } } } - static nonstd::string_view clear_final_line_if_whitespace(nonstd::string_view text) - { - nonstd::string_view result = text; + void skip_whitespaces_and_first_newline() { + if (pos < m_in.size()) { + while (pos < m_in.size() && (m_in[pos] == ' ' || m_in[pos] == '\t')) { + pos += 1; + } + } + + if (pos < m_in.size()) { + const char ch = m_in[pos]; + if (ch == '\n') { + pos += 1; + } else if (ch == '\r') { + pos += 1; + if (pos < m_in.size() && m_in[pos] == '\n') { + pos += 1; + } + } + } + } + + static std::string_view clear_final_line_if_whitespace(std::string_view text) { + std::string_view result = text; while (!result.empty()) { - char ch = result.back(); - if (ch == ' ' || ch == '\t') - result.remove_suffix(1); - else if (ch == '\n' || ch == '\r') + const char ch = result.back(); + if (ch == ' ' || ch == '\t') { + result.remove_suffix(1); + } else if (ch == '\n' || ch == '\r') { break; - else + } else { return text; + } } return result; } + +public: + explicit Lexer(const LexerConfig& config): config(config), state(State::Text), minus_state(MinusState::Number) {} + + SourceLocation current_position() const { + return get_source_location(m_in, tok_start); + } + + void start(std::string_view input) { + m_in = input; + tok_start = 0; + pos = 0; + state = State::Text; + minus_state = MinusState::Number; + + // Consume byte order mark (BOM) for UTF-8 + if (inja::string_view::starts_with(m_in, "\xEF\xBB\xBF")) { + m_in = m_in.substr(3); + } + } + + Token scan() { + tok_start = pos; + + again: + if (tok_start >= m_in.size()) { + return make_token(Token::Kind::Eof); + } + + switch (state) { + default: + case State::Text: { + // fast-scan to first open character + const size_t open_start = m_in.substr(pos).find_first_of(config.open_chars); + if (open_start == std::string_view::npos) { + // didn't find open, return remaining text as text token + pos = m_in.size(); + return make_token(Token::Kind::Text); + } + pos += open_start; + + // try to match one of the opening sequences, and get the close + std::string_view open_str = m_in.substr(pos); + bool must_lstrip = false; + if (inja::string_view::starts_with(open_str, config.expression_open)) { + if (inja::string_view::starts_with(open_str, config.expression_open_force_lstrip)) { + state = State::ExpressionStartForceLstrip; + must_lstrip = true; + } else { + state = State::ExpressionStart; + } + } else if (inja::string_view::starts_with(open_str, config.statement_open)) { + if (inja::string_view::starts_with(open_str, config.statement_open_no_lstrip)) { + state = State::StatementStartNoLstrip; + } else if (inja::string_view::starts_with(open_str, config.statement_open_force_lstrip)) { + state = State::StatementStartForceLstrip; + must_lstrip = true; + } else { + state = State::StatementStart; + must_lstrip = config.lstrip_blocks; + } + } else if (inja::string_view::starts_with(open_str, config.comment_open)) { + if (inja::string_view::starts_with(open_str, config.comment_open_force_lstrip)) { + state = State::CommentStartForceLstrip; + must_lstrip = true; + } else { + state = State::CommentStart; + must_lstrip = config.lstrip_blocks; + } + } else if ((pos == 0 || m_in[pos - 1] == '\n') && inja::string_view::starts_with(open_str, config.line_statement)) { + state = State::LineStart; + } else { + pos += 1; // wasn't actually an opening sequence + goto again; + } + + std::string_view text = string_view::slice(m_in, tok_start, pos); + if (must_lstrip) { + text = clear_final_line_if_whitespace(text); + } + + if (text.empty()) { + goto again; // don't generate empty token + } + return Token(Token::Kind::Text, text); + } + case State::ExpressionStart: { + state = State::ExpressionBody; + pos += config.expression_open.size(); + return make_token(Token::Kind::ExpressionOpen); + } + case State::ExpressionStartForceLstrip: { + state = State::ExpressionBody; + pos += config.expression_open_force_lstrip.size(); + return make_token(Token::Kind::ExpressionOpen); + } + case State::LineStart: { + state = State::LineBody; + pos += config.line_statement.size(); + return make_token(Token::Kind::LineStatementOpen); + } + case State::StatementStart: { + state = State::StatementBody; + pos += config.statement_open.size(); + return make_token(Token::Kind::StatementOpen); + } + case State::StatementStartNoLstrip: { + state = State::StatementBody; + pos += config.statement_open_no_lstrip.size(); + return make_token(Token::Kind::StatementOpen); + } + case State::StatementStartForceLstrip: { + state = State::StatementBody; + pos += config.statement_open_force_lstrip.size(); + return make_token(Token::Kind::StatementOpen); + } + case State::CommentStart: { + state = State::CommentBody; + pos += config.comment_open.size(); + return make_token(Token::Kind::CommentOpen); + } + case State::CommentStartForceLstrip: { + state = State::CommentBody; + pos += config.comment_open_force_lstrip.size(); + return make_token(Token::Kind::CommentOpen); + } + case State::ExpressionBody: + return scan_body(config.expression_close, Token::Kind::ExpressionClose, config.expression_close_force_rstrip); + case State::LineBody: + return scan_body("\n", Token::Kind::LineStatementClose); + case State::StatementBody: + return scan_body(config.statement_close, Token::Kind::StatementClose, config.statement_close_force_rstrip, config.trim_blocks); + case State::CommentBody: { + // fast-scan to comment close + const size_t end = m_in.substr(pos).find(config.comment_close); + if (end == std::string_view::npos) { + pos = m_in.size(); + return make_token(Token::Kind::Eof); + } + + // Check for trim pattern + const bool must_rstrip = inja::string_view::starts_with(m_in.substr(pos + end - 1), config.comment_close_force_rstrip); + + // return the entire comment in the close token + state = State::Text; + pos += end + config.comment_close.size(); + Token tok = make_token(Token::Kind::CommentClose); + + if (must_rstrip || config.trim_blocks) { + skip_whitespaces_and_first_newline(); + } + return tok; + } + } + } + + const LexerConfig& get_config() const { + return config; + } }; -} +} // namespace inja -#endif // PANTOR_INJA_LEXER_HPP +#endif // INCLUDE_INJA_LEXER_HPP_ + +// #include "node.hpp" // #include "template.hpp" -#ifndef PANTOR_INJA_TEMPLATE_HPP -#define PANTOR_INJA_TEMPLATE_HPP - -#include -#include -#include - -// #include "bytecode.hpp" - - - -namespace inja { - -/*! - * \brief The main inja Template. - */ -struct Template { - std::vector bytecodes; - std::string content; -}; - -using TemplateStorage = std::map; - -} - -#endif // PANTOR_INJA_TEMPLATE_HPP // #include "token.hpp" // #include "utils.hpp" -#include - - namespace inja { -class ParserStatic { - ParserStatic() { - functions.add_builtin("at", 2, Bytecode::Op::At); - functions.add_builtin("default", 2, Bytecode::Op::Default); - functions.add_builtin("divisibleBy", 2, Bytecode::Op::DivisibleBy); - functions.add_builtin("even", 1, Bytecode::Op::Even); - functions.add_builtin("first", 1, Bytecode::Op::First); - functions.add_builtin("float", 1, Bytecode::Op::Float); - functions.add_builtin("int", 1, Bytecode::Op::Int); - functions.add_builtin("last", 1, Bytecode::Op::Last); - functions.add_builtin("length", 1, Bytecode::Op::Length); - functions.add_builtin("lower", 1, Bytecode::Op::Lower); - functions.add_builtin("max", 1, Bytecode::Op::Max); - functions.add_builtin("min", 1, Bytecode::Op::Min); - functions.add_builtin("odd", 1, Bytecode::Op::Odd); - functions.add_builtin("range", 1, Bytecode::Op::Range); - functions.add_builtin("round", 2, Bytecode::Op::Round); - functions.add_builtin("sort", 1, Bytecode::Op::Sort); - functions.add_builtin("upper", 1, Bytecode::Op::Upper); - functions.add_builtin("exists", 1, Bytecode::Op::Exists); - functions.add_builtin("existsIn", 2, Bytecode::Op::ExistsInObject); - functions.add_builtin("isBoolean", 1, Bytecode::Op::IsBoolean); - functions.add_builtin("isNumber", 1, Bytecode::Op::IsNumber); - functions.add_builtin("isInteger", 1, Bytecode::Op::IsInteger); - functions.add_builtin("isFloat", 1, Bytecode::Op::IsFloat); - functions.add_builtin("isObject", 1, Bytecode::Op::IsObject); - functions.add_builtin("isArray", 1, Bytecode::Op::IsArray); - functions.add_builtin("isString", 1, Bytecode::Op::IsString); - } - - public: - ParserStatic(const ParserStatic&) = delete; - ParserStatic& operator=(const ParserStatic&) = delete; - - static const ParserStatic& get_instance() { - static ParserStatic inst; - return inst; - } - - FunctionStorage functions; -}; - /*! * \brief Class for parsing an inja Template. */ class Parser { - public: - explicit Parser(const ParserConfig& parser_config, const LexerConfig& lexer_config, TemplateStorage& included_templates): m_config(parser_config), m_lexer(lexer_config), m_included_templates(included_templates), m_static(ParserStatic::get_instance()) { } + const ParserConfig& config; - bool parse_expression(Template& tmpl) { - if (!parse_expression_and(tmpl)) return false; - if (m_tok.kind != Token::Kind::Id || m_tok.text != static_cast("or")) return true; - get_next_token(); - if (!parse_expression_and(tmpl)) return false; - append_function(tmpl, Bytecode::Op::Or, 2); - return true; + Lexer lexer; + TemplateStorage& template_storage; + const FunctionStorage& function_storage; + + Token tok, peek_tok; + bool have_peek_tok {false}; + + size_t current_paren_level {0}; + size_t current_bracket_level {0}; + size_t current_brace_level {0}; + + std::string_view literal_start; + + BlockNode* current_block {nullptr}; + ExpressionListNode* current_expression_list {nullptr}; + std::stack> function_stack; + std::vector> arguments; + + std::stack> operator_stack; + std::stack if_statement_stack; + std::stack for_statement_stack; + std::stack block_statement_stack; + + inline void throw_parser_error(const std::string& message) const { + INJA_THROW(ParserError(message, lexer.current_position())); } - bool parse_expression_and(Template& tmpl) { - if (!parse_expression_not(tmpl)) return false; - if (m_tok.kind != Token::Kind::Id || m_tok.text != static_cast("and")) return true; - get_next_token(); - if (!parse_expression_not(tmpl)) return false; - append_function(tmpl, Bytecode::Op::And, 2); - return true; - } - - bool parse_expression_not(Template& tmpl) { - if (m_tok.kind == Token::Kind::Id && m_tok.text == static_cast("not")) { - get_next_token(); - if (!parse_expression_not(tmpl)) return false; - append_function(tmpl, Bytecode::Op::Not, 1); - return true; + inline void get_next_token() { + if (have_peek_tok) { + tok = peek_tok; + have_peek_tok = false; } else { - return parse_expression_comparison(tmpl); + tok = lexer.scan(); } } - bool parse_expression_comparison(Template& tmpl) { - if (!parse_expression_datum(tmpl)) return false; - Bytecode::Op op; - switch (m_tok.kind) { - case Token::Kind::Id: - if (m_tok.text == static_cast("in")) - op = Bytecode::Op::In; - else - return true; - break; - case Token::Kind::Equal: - op = Bytecode::Op::Equal; - break; - case Token::Kind::GreaterThan: - op = Bytecode::Op::Greater; - break; - case Token::Kind::LessThan: - op = Bytecode::Op::Less; - break; - case Token::Kind::LessEqual: - op = Bytecode::Op::LessEqual; - break; - case Token::Kind::GreaterEqual: - op = Bytecode::Op::GreaterEqual; - break; - case Token::Kind::NotEqual: - op = Bytecode::Op::Different; - break; - default: - return true; + inline void get_peek_token() { + if (!have_peek_tok) { + peek_tok = lexer.scan(); + have_peek_tok = true; } - get_next_token(); - if (!parse_expression_datum(tmpl)) return false; - append_function(tmpl, op, 2); - return true; } - bool parse_expression_datum(Template& tmpl) { - nonstd::string_view json_first; - size_t bracket_level = 0; - size_t brace_level = 0; + inline void add_literal(const char* content_ptr) { + std::string_view data_text(literal_start.data(), tok.text.data() - literal_start.data() + tok.text.size()); + arguments.emplace_back(std::make_shared(data_text, data_text.data() - content_ptr)); + } - for (;;) { - switch (m_tok.kind) { - case Token::Kind::LeftParen: { - get_next_token(); - if (!parse_expression(tmpl)) return false; - if (m_tok.kind != Token::Kind::RightParen) { - inja_throw("parser_error", "unmatched '('"); - } - get_next_token(); - return true; + inline void add_operator() { + auto function = operator_stack.top(); + operator_stack.pop(); + + for (int i = 0; i < function->number_args; ++i) { + function->arguments.insert(function->arguments.begin(), arguments.back()); + arguments.pop_back(); + } + arguments.emplace_back(function); + } + + void add_to_template_storage(std::string_view path, std::string& template_name) { + if (template_storage.find(template_name) != template_storage.end()) { + return; + } + + std::string original_path = static_cast(path); + std::string original_name = template_name; + + if (config.search_included_templates_in_files) { + // Build the relative path + template_name = original_path + original_name; + if (template_name.compare(0, 2, "./") == 0) { + template_name.erase(0, 2); + } + + if (template_storage.find(template_name) == template_storage.end()) { + // Load file + std::ifstream file; + file.open(template_name); + if (!file.fail()) { + std::string text((std::istreambuf_iterator(file)), std::istreambuf_iterator()); + + auto include_template = Template(text); + template_storage.emplace(template_name, include_template); + parse_into_template(template_storage[template_name], template_name); + return; + } else if (!config.include_callback) { + INJA_THROW(FileError("failed accessing file at '" + template_name + "'")); } - case Token::Kind::Id: - get_peek_token(); - if (m_peek_tok.kind == Token::Kind::LeftParen) { - // function call, parse arguments - Token func_token = m_tok; - get_next_token(); // id - get_next_token(); // leftParen - unsigned int num_args = 0; - if (m_tok.kind == Token::Kind::RightParen) { - // no args - get_next_token(); - } else { - for (;;) { - if (!parse_expression(tmpl)) { - inja_throw("parser_error", "expected expression, got '" + m_tok.describe() + "'"); - } - num_args += 1; - if (m_tok.kind == Token::Kind::RightParen) { - get_next_token(); - break; - } - if (m_tok.kind != Token::Kind::Comma) { - inja_throw("parser_error", "expected ')' or ',', got '" + m_tok.describe() + "'"); - } - get_next_token(); - } - } + } + } - auto op = m_static.functions.find_builtin(func_token.text, num_args); + // Try include callback + if (config.include_callback) { + auto include_template = config.include_callback(original_path, original_name); + template_storage.emplace(template_name, include_template); + } + } - if (op != Bytecode::Op::Nop) { - // swap arguments for default(); see comment in RenderTo() - if (op == Bytecode::Op::Default) - std::swap(tmpl.bytecodes.back(), *(tmpl.bytecodes.rbegin() + 1)); - append_function(tmpl, op, num_args); - return true; - } else { - append_callback(tmpl, func_token.text, num_args); - return true; - } - } else if (m_tok.text == static_cast("true") || - m_tok.text == static_cast("false") || - m_tok.text == static_cast("null")) { - // true, false, null are json literals - if (brace_level == 0 && bracket_level == 0) { - json_first = m_tok.text; - goto returnJson; - } - break; + std::string parse_filename(const Token& tok) const { + if (tok.kind != Token::Kind::String) { + throw_parser_error("expected string, got '" + tok.describe() + "'"); + } + + if (tok.text.length() < 2) { + throw_parser_error("expected filename, got '" + static_cast(tok.text) + "'"); + } + + // Remove first and last character "" + return std::string {tok.text.substr(1, tok.text.length() - 2)}; + } + + bool parse_expression(Template& tmpl, Token::Kind closing) { + while (tok.kind != closing && tok.kind != Token::Kind::Eof) { + // Literals + switch (tok.kind) { + case Token::Kind::String: { + if (current_brace_level == 0 && current_bracket_level == 0) { + literal_start = tok.text; + add_literal(tmpl.content.c_str()); + } + } break; + case Token::Kind::Number: { + if (current_brace_level == 0 && current_bracket_level == 0) { + literal_start = tok.text; + add_literal(tmpl.content.c_str()); + } + } break; + case Token::Kind::LeftBracket: { + if (current_brace_level == 0 && current_bracket_level == 0) { + literal_start = tok.text; + } + current_bracket_level += 1; + } break; + case Token::Kind::LeftBrace: { + if (current_brace_level == 0 && current_bracket_level == 0) { + literal_start = tok.text; + } + current_brace_level += 1; + } break; + case Token::Kind::RightBracket: { + if (current_bracket_level == 0) { + throw_parser_error("unexpected ']'"); + } + + current_bracket_level -= 1; + if (current_brace_level == 0 && current_bracket_level == 0) { + add_literal(tmpl.content.c_str()); + } + } break; + case Token::Kind::RightBrace: { + if (current_brace_level == 0) { + throw_parser_error("unexpected '}'"); + } + + current_brace_level -= 1; + if (current_brace_level == 0 && current_bracket_level == 0) { + add_literal(tmpl.content.c_str()); + } + } break; + case Token::Kind::Id: { + get_peek_token(); + + // Data Literal + if (tok.text == static_cast("true") || tok.text == static_cast("false") || + tok.text == static_cast("null")) { + if (current_brace_level == 0 && current_bracket_level == 0) { + literal_start = tok.text; + add_literal(tmpl.content.c_str()); + } + + // Operator + } else if (tok.text == "and" || tok.text == "or" || tok.text == "in" || tok.text == "not") { + goto parse_operator; + + // Functions + } else if (peek_tok.kind == Token::Kind::LeftParen) { + operator_stack.emplace(std::make_shared(static_cast(tok.text), tok.text.data() - tmpl.content.c_str())); + function_stack.emplace(operator_stack.top().get(), current_paren_level); + + // Variables + } else { + arguments.emplace_back(std::make_shared(static_cast(tok.text), tok.text.data() - tmpl.content.c_str())); + } + + // Operators + } break; + case Token::Kind::Equal: + case Token::Kind::NotEqual: + case Token::Kind::GreaterThan: + case Token::Kind::GreaterEqual: + case Token::Kind::LessThan: + case Token::Kind::LessEqual: + case Token::Kind::Plus: + case Token::Kind::Minus: + case Token::Kind::Times: + case Token::Kind::Slash: + case Token::Kind::Power: + case Token::Kind::Percent: + case Token::Kind::Dot: { + + parse_operator: + FunctionStorage::Operation operation; + switch (tok.kind) { + case Token::Kind::Id: { + if (tok.text == "and") { + operation = FunctionStorage::Operation::And; + } else if (tok.text == "or") { + operation = FunctionStorage::Operation::Or; + } else if (tok.text == "in") { + operation = FunctionStorage::Operation::In; + } else if (tok.text == "not") { + operation = FunctionStorage::Operation::Not; } else { - // normal literal (json read) - tmpl.bytecodes.emplace_back( - Bytecode::Op::Push, m_tok.text, - m_config.notation == ElementNotation::Pointer ? Bytecode::Flag::ValueLookupPointer : Bytecode::Flag::ValueLookupDot); - get_next_token(); - return true; + throw_parser_error("unknown operator in parser."); } - // json passthrough - case Token::Kind::Number: - case Token::Kind::String: - if (brace_level == 0 && bracket_level == 0) { - json_first = m_tok.text; - goto returnJson; + } break; + case Token::Kind::Equal: { + operation = FunctionStorage::Operation::Equal; + } break; + case Token::Kind::NotEqual: { + operation = FunctionStorage::Operation::NotEqual; + } break; + case Token::Kind::GreaterThan: { + operation = FunctionStorage::Operation::Greater; + } break; + case Token::Kind::GreaterEqual: { + operation = FunctionStorage::Operation::GreaterEqual; + } break; + case Token::Kind::LessThan: { + operation = FunctionStorage::Operation::Less; + } break; + case Token::Kind::LessEqual: { + operation = FunctionStorage::Operation::LessEqual; + } break; + case Token::Kind::Plus: { + operation = FunctionStorage::Operation::Add; + } break; + case Token::Kind::Minus: { + operation = FunctionStorage::Operation::Subtract; + } break; + case Token::Kind::Times: { + operation = FunctionStorage::Operation::Multiplication; + } break; + case Token::Kind::Slash: { + operation = FunctionStorage::Operation::Division; + } break; + case Token::Kind::Power: { + operation = FunctionStorage::Operation::Power; + } break; + case Token::Kind::Percent: { + operation = FunctionStorage::Operation::Modulo; + } break; + case Token::Kind::Dot: { + operation = FunctionStorage::Operation::AtId; + } break; + default: { + throw_parser_error("unknown operator in parser."); + } + } + auto function_node = std::make_shared(operation, tok.text.data() - tmpl.content.c_str()); + + while (!operator_stack.empty() && + ((operator_stack.top()->precedence > function_node->precedence) || + (operator_stack.top()->precedence == function_node->precedence && function_node->associativity == FunctionNode::Associativity::Left)) && + (operator_stack.top()->operation != FunctionStorage::Operation::ParenLeft)) { + add_operator(); + } + + operator_stack.emplace(function_node); + } break; + case Token::Kind::Comma: { + if (current_brace_level == 0 && current_bracket_level == 0) { + if (function_stack.empty()) { + throw_parser_error("unexpected ','"); } - break; - case Token::Kind::Comma: - case Token::Kind::Colon: - if (brace_level == 0 && bracket_level == 0) { - inja_throw("parser_error", "unexpected token '" + m_tok.describe() + "'"); + + function_stack.top().first->number_args += 1; + } + } break; + case Token::Kind::Colon: { + if (current_brace_level == 0 && current_bracket_level == 0) { + throw_parser_error("unexpected ':'"); + } + } break; + case Token::Kind::LeftParen: { + current_paren_level += 1; + operator_stack.emplace(std::make_shared(FunctionStorage::Operation::ParenLeft, tok.text.data() - tmpl.content.c_str())); + + get_peek_token(); + if (peek_tok.kind == Token::Kind::RightParen) { + if (!function_stack.empty() && function_stack.top().second == current_paren_level - 1) { + function_stack.top().first->number_args = 0; } - break; - case Token::Kind::LeftBracket: - if (brace_level == 0 && bracket_level == 0) { - json_first = m_tok.text; + } + } break; + case Token::Kind::RightParen: { + current_paren_level -= 1; + while (!operator_stack.empty() && operator_stack.top()->operation != FunctionStorage::Operation::ParenLeft) { + add_operator(); + } + + if (!operator_stack.empty() && operator_stack.top()->operation == FunctionStorage::Operation::ParenLeft) { + operator_stack.pop(); + } + + if (!function_stack.empty() && function_stack.top().second == current_paren_level) { + auto func = function_stack.top().first; + auto function_data = function_storage.find_function(func->name, func->number_args); + if (function_data.operation == FunctionStorage::Operation::None) { + throw_parser_error("unknown function " + func->name); } - bracket_level += 1; - break; - case Token::Kind::LeftBrace: - if (brace_level == 0 && bracket_level == 0) { - json_first = m_tok.text; + func->operation = function_data.operation; + if (function_data.operation == FunctionStorage::Operation::Callback) { + func->callback = function_data.callback; } - brace_level += 1; - break; - case Token::Kind::RightBracket: - if (bracket_level == 0) { - inja_throw("parser_error", "unexpected ']'"); + + if (operator_stack.empty()) { + throw_parser_error("internal error at function " + func->name); } - --bracket_level; - if (brace_level == 0 && bracket_level == 0) goto returnJson; - break; - case Token::Kind::RightBrace: - if (brace_level == 0) { - inja_throw("parser_error", "unexpected '}'"); - } - --brace_level; - if (brace_level == 0 && bracket_level == 0) goto returnJson; - break; - default: - if (brace_level != 0) { - inja_throw("parser_error", "unmatched '{'"); - } - if (bracket_level != 0) { - inja_throw("parser_error", "unmatched '['"); - } - return false; + + add_operator(); + function_stack.pop(); + } + } + default: + break; } get_next_token(); } - returnJson: - // bridge across all intermediate tokens - nonstd::string_view json_text(json_first.data(), m_tok.text.data() - json_first.data() + m_tok.text.size()); - tmpl.bytecodes.emplace_back(Bytecode::Op::Push, json::parse(json_text), Bytecode::Flag::ValueImmediate); - get_next_token(); + while (!operator_stack.empty()) { + add_operator(); + } + + if (arguments.size() == 1) { + current_expression_list->root = arguments[0]; + arguments = {}; + } else if (arguments.size() > 1) { + throw_parser_error("malformed expression"); + } + return true; } - bool parse_statement(Template& tmpl, nonstd::string_view path) { - if (m_tok.kind != Token::Kind::Id) return false; + bool parse_statement(Template& tmpl, Token::Kind closing, std::string_view path) { + if (tok.kind != Token::Kind::Id) { + return false; + } - if (m_tok.text == static_cast("if")) { + if (tok.text == static_cast("if")) { get_next_token(); - // evaluate expression - if (!parse_expression(tmpl)) return false; + auto if_statement_node = std::make_shared(current_block, tok.text.data() - tmpl.content.c_str()); + current_block->nodes.emplace_back(if_statement_node); + if_statement_stack.emplace(if_statement_node.get()); + current_block = &if_statement_node->true_statement; + current_expression_list = &if_statement_node->condition; - // start a new if block on if stack - m_if_stack.emplace_back(tmpl.bytecodes.size()); - - // conditional jump; destination will be filled in by else or endif - tmpl.bytecodes.emplace_back(Bytecode::Op::ConditionalJump); - } else if (m_tok.text == static_cast("endif")) { - if (m_if_stack.empty()) { - inja_throw("parser_error", "endif without matching if"); + if (!parse_expression(tmpl, closing)) { + return false; } - auto& if_data = m_if_stack.back(); + } else if (tok.text == static_cast("else")) { + if (if_statement_stack.empty()) { + throw_parser_error("else without matching if"); + } + auto& if_statement_data = if_statement_stack.top(); get_next_token(); - // previous conditional jump jumps here - if (if_data.prev_cond_jump != std::numeric_limits::max()) { - tmpl.bytecodes[if_data.prev_cond_jump].args = tmpl.bytecodes.size(); - } + if_statement_data->has_false_statement = true; + current_block = &if_statement_data->false_statement; - // update all previous unconditional jumps to here - for (unsigned int i: if_data.uncond_jumps) { - tmpl.bytecodes[i].args = tmpl.bytecodes.size(); - } - - // pop if stack - m_if_stack.pop_back(); - } else if (m_tok.text == static_cast("else")) { - if (m_if_stack.empty()) - inja_throw("parser_error", "else without matching if"); - auto& if_data = m_if_stack.back(); - get_next_token(); - - // end previous block with unconditional jump to endif; destination will be - // filled in by endif - if_data.uncond_jumps.push_back(tmpl.bytecodes.size()); - tmpl.bytecodes.emplace_back(Bytecode::Op::Jump); - - // previous conditional jump jumps here - tmpl.bytecodes[if_data.prev_cond_jump].args = tmpl.bytecodes.size(); - if_data.prev_cond_jump = std::numeric_limits::max(); - - // chained else if - if (m_tok.kind == Token::Kind::Id && m_tok.text == static_cast("if")) { + // Chained else if + if (tok.kind == Token::Kind::Id && tok.text == static_cast("if")) { get_next_token(); - // evaluate expression - if (!parse_expression(tmpl)) return false; + auto if_statement_node = std::make_shared(true, current_block, tok.text.data() - tmpl.content.c_str()); + current_block->nodes.emplace_back(if_statement_node); + if_statement_stack.emplace(if_statement_node.get()); + current_block = &if_statement_node->true_statement; + current_expression_list = &if_statement_node->condition; - // update "previous jump" - if_data.prev_cond_jump = tmpl.bytecodes.size(); - - // conditional jump; destination will be filled in by else or endif - tmpl.bytecodes.emplace_back(Bytecode::Op::ConditionalJump); + if (!parse_expression(tmpl, closing)) { + return false; + } } - } else if (m_tok.text == static_cast("for")) { + } else if (tok.text == static_cast("endif")) { + if (if_statement_stack.empty()) { + throw_parser_error("endif without matching if"); + } + + // Nested if statements + while (if_statement_stack.top()->is_nested) { + if_statement_stack.pop(); + } + + auto& if_statement_data = if_statement_stack.top(); + get_next_token(); + + current_block = if_statement_data->parent; + if_statement_stack.pop(); + } else if (tok.text == static_cast("block")) { + get_next_token(); + + if (tok.kind != Token::Kind::Id) { + throw_parser_error("expected block name, got '" + tok.describe() + "'"); + } + + const std::string block_name = static_cast(tok.text); + + auto block_statement_node = std::make_shared(current_block, block_name, tok.text.data() - tmpl.content.c_str()); + current_block->nodes.emplace_back(block_statement_node); + block_statement_stack.emplace(block_statement_node.get()); + current_block = &block_statement_node->block; + auto success = tmpl.block_storage.emplace(block_name, block_statement_node); + if (!success.second) { + throw_parser_error("block with the name '" + block_name + "' does already exist"); + } + + get_next_token(); + } else if (tok.text == static_cast("endblock")) { + if (block_statement_stack.empty()) { + throw_parser_error("endblock without matching block"); + } + + auto& block_statement_data = block_statement_stack.top(); + get_next_token(); + + current_block = block_statement_data->parent; + block_statement_stack.pop(); + } else if (tok.text == static_cast("for")) { get_next_token(); // options: for a in arr; for a, b in obj - if (m_tok.kind != Token::Kind::Id) - inja_throw("parser_error", "expected id, got '" + m_tok.describe() + "'"); - Token value_token = m_tok; + if (tok.kind != Token::Kind::Id) { + throw_parser_error("expected id, got '" + tok.describe() + "'"); + } + + Token value_token = tok; get_next_token(); - Token key_token; - if (m_tok.kind == Token::Kind::Comma) { + // Object type + std::shared_ptr for_statement_node; + if (tok.kind == Token::Kind::Comma) { get_next_token(); - if (m_tok.kind != Token::Kind::Id) - inja_throw("parser_error", "expected id, got '" + m_tok.describe() + "'"); - key_token = std::move(value_token); - value_token = m_tok; + if (tok.kind != Token::Kind::Id) { + throw_parser_error("expected id, got '" + tok.describe() + "'"); + } + + Token key_token = std::move(value_token); + value_token = tok; get_next_token(); + + for_statement_node = std::make_shared(static_cast(key_token.text), static_cast(value_token.text), + current_block, tok.text.data() - tmpl.content.c_str()); + + // Array type + } else { + for_statement_node = + std::make_shared(static_cast(value_token.text), current_block, tok.text.data() - tmpl.content.c_str()); } - if (m_tok.kind != Token::Kind::Id || m_tok.text != static_cast("in")) - inja_throw("parser_error", - "expected 'in', got '" + m_tok.describe() + "'"); + current_block->nodes.emplace_back(for_statement_node); + for_statement_stack.emplace(for_statement_node.get()); + current_block = &for_statement_node->body; + current_expression_list = &for_statement_node->condition; + + if (tok.kind != Token::Kind::Id || tok.text != static_cast("in")) { + throw_parser_error("expected 'in', got '" + tok.describe() + "'"); + } get_next_token(); - if (!parse_expression(tmpl)) return false; - - m_loop_stack.push_back(tmpl.bytecodes.size()); - - tmpl.bytecodes.emplace_back(Bytecode::Op::StartLoop); - if (!key_token.text.empty()) { - tmpl.bytecodes.back().value = key_token.text; + if (!parse_expression(tmpl, closing)) { + return false; } - tmpl.bytecodes.back().str = static_cast(value_token.text); - } else if (m_tok.text == static_cast("endfor")) { - get_next_token(); - if (m_loop_stack.empty()) { - inja_throw("parser_error", "endfor without matching for"); + } else if (tok.text == static_cast("endfor")) { + if (for_statement_stack.empty()) { + throw_parser_error("endfor without matching for"); } - // update loop with EndLoop index (for empty case) - tmpl.bytecodes[m_loop_stack.back()].args = tmpl.bytecodes.size(); - - tmpl.bytecodes.emplace_back(Bytecode::Op::EndLoop); - tmpl.bytecodes.back().args = m_loop_stack.back() + 1; // loop body - m_loop_stack.pop_back(); - } else if (m_tok.text == static_cast("include")) { + auto& for_statement_data = for_statement_stack.top(); get_next_token(); - if (m_tok.kind != Token::Kind::String) { - inja_throw("parser_error", "expected string, got '" + m_tok.describe() + "'"); - } + current_block = for_statement_data->parent; + for_statement_stack.pop(); + } else if (tok.text == static_cast("include")) { + get_next_token(); - // build the relative path - json json_name = json::parse(m_tok.text); - std::string pathname = static_cast(path); - pathname += json_name.get_ref(); - if (pathname.compare(0, 2, "./") == 0) { - pathname.erase(0, 2); - } - // sys::path::remove_dots(pathname, true, sys::path::Style::posix); + std::string template_name = parse_filename(tok); + add_to_template_storage(path, template_name); - if (m_included_templates.find(pathname) == m_included_templates.end()) { - Template include_template = parse_template(pathname); - m_included_templates.emplace(pathname, include_template); - } - - // generate a reference bytecode - tmpl.bytecodes.emplace_back(Bytecode::Op::Include, json(pathname), Bytecode::Flag::ValueImmediate); + current_block->nodes.emplace_back(std::make_shared(template_name, tok.text.data() - tmpl.content.c_str())); get_next_token(); + } else if (tok.text == static_cast("extends")) { + get_next_token(); + + std::string template_name = parse_filename(tok); + add_to_template_storage(path, template_name); + + current_block->nodes.emplace_back(std::make_shared(template_name, tok.text.data() - tmpl.content.c_str())); + + get_next_token(); + } else if (tok.text == static_cast("set")) { + get_next_token(); + + if (tok.kind != Token::Kind::Id) { + throw_parser_error("expected variable name, got '" + tok.describe() + "'"); + } + + std::string key = static_cast(tok.text); + get_next_token(); + + auto set_statement_node = std::make_shared(key, tok.text.data() - tmpl.content.c_str()); + current_block->nodes.emplace_back(set_statement_node); + current_expression_list = &set_statement_node->expression; + + if (tok.text != static_cast("=")) { + throw_parser_error("expected '=', got '" + tok.describe() + "'"); + } + get_next_token(); + + if (!parse_expression(tmpl, closing)) { + return false; + } } else { return false; } return true; } - void append_function(Template& tmpl, Bytecode::Op op, unsigned int num_args) { - // we can merge with back-to-back push - if (!tmpl.bytecodes.empty()) { - Bytecode& last = tmpl.bytecodes.back(); - if (last.op == Bytecode::Op::Push) { - last.op = op; - last.args = num_args; - return; - } - } - - // otherwise just add it to the end - tmpl.bytecodes.emplace_back(op, num_args); - } - - void append_callback(Template& tmpl, nonstd::string_view name, unsigned int num_args) { - // we can merge with back-to-back push value (not lookup) - if (!tmpl.bytecodes.empty()) { - Bytecode& last = tmpl.bytecodes.back(); - if (last.op == Bytecode::Op::Push && - (last.flags & Bytecode::Flag::ValueMask) == Bytecode::Flag::ValueImmediate) { - last.op = Bytecode::Op::Callback; - last.args = num_args; - last.str = static_cast(name); - return; - } - } - - // otherwise just add it to the end - tmpl.bytecodes.emplace_back(Bytecode::Op::Callback, num_args); - tmpl.bytecodes.back().str = static_cast(name); - } - - void parse_into(Template& tmpl, nonstd::string_view path) { - m_lexer.start(tmpl.content); + void parse_into(Template& tmpl, std::string_view path) { + lexer.start(tmpl.content); + current_block = &tmpl.root; for (;;) { get_next_token(); - switch (m_tok.kind) { - case Token::Kind::Eof: - if (!m_if_stack.empty()) inja_throw("parser_error", "unmatched if"); - if (!m_loop_stack.empty()) inja_throw("parser_error", "unmatched for"); - return; - case Token::Kind::Text: - tmpl.bytecodes.emplace_back(Bytecode::Op::PrintText, m_tok.text, 0u); - break; - case Token::Kind::StatementOpen: - get_next_token(); - if (!parse_statement(tmpl, path)) { - inja_throw("parser_error", "expected statement, got '" + m_tok.describe() + "'"); - } - if (m_tok.kind != Token::Kind::StatementClose) { - inja_throw("parser_error", "expected statement close, got '" + m_tok.describe() + "'"); - } - break; - case Token::Kind::LineStatementOpen: - get_next_token(); - parse_statement(tmpl, path); - if (m_tok.kind != Token::Kind::LineStatementClose && - m_tok.kind != Token::Kind::Eof) { - inja_throw("parser_error", "expected line statement close, got '" + m_tok.describe() + "'"); - } - break; - case Token::Kind::ExpressionOpen: - get_next_token(); - if (!parse_expression(tmpl)) { - inja_throw("parser_error", "expected expression, got '" + m_tok.describe() + "'"); - } - append_function(tmpl, Bytecode::Op::PrintValue, 1); - if (m_tok.kind != Token::Kind::ExpressionClose) { - inja_throw("parser_error", "expected expression close, got '" + m_tok.describe() + "'"); - } - break; - case Token::Kind::CommentOpen: - get_next_token(); - if (m_tok.kind != Token::Kind::CommentClose) { - inja_throw("parser_error", "expected comment close, got '" + m_tok.describe() + "'"); - } - break; - default: - inja_throw("parser_error", "unexpected token '" + m_tok.describe() + "'"); - break; + switch (tok.kind) { + case Token::Kind::Eof: { + if (!if_statement_stack.empty()) { + throw_parser_error("unmatched if"); + } + if (!for_statement_stack.empty()) { + throw_parser_error("unmatched for"); + } + } + return; + case Token::Kind::Text: { + current_block->nodes.emplace_back(std::make_shared(tok.text.data() - tmpl.content.c_str(), tok.text.size())); + } break; + case Token::Kind::StatementOpen: { + get_next_token(); + if (!parse_statement(tmpl, Token::Kind::StatementClose, path)) { + throw_parser_error("expected statement, got '" + tok.describe() + "'"); + } + if (tok.kind != Token::Kind::StatementClose) { + throw_parser_error("expected statement close, got '" + tok.describe() + "'"); + } + } break; + case Token::Kind::LineStatementOpen: { + get_next_token(); + if (!parse_statement(tmpl, Token::Kind::LineStatementClose, path)) { + throw_parser_error("expected statement, got '" + tok.describe() + "'"); + } + if (tok.kind != Token::Kind::LineStatementClose && tok.kind != Token::Kind::Eof) { + throw_parser_error("expected line statement close, got '" + tok.describe() + "'"); + } + } break; + case Token::Kind::ExpressionOpen: { + get_next_token(); + + auto expression_list_node = std::make_shared(tok.text.data() - tmpl.content.c_str()); + current_block->nodes.emplace_back(expression_list_node); + current_expression_list = expression_list_node.get(); + + if (!parse_expression(tmpl, Token::Kind::ExpressionClose)) { + throw_parser_error("expected expression, got '" + tok.describe() + "'"); + } + + if (tok.kind != Token::Kind::ExpressionClose) { + throw_parser_error("expected expression close, got '" + tok.describe() + "'"); + } + } break; + case Token::Kind::CommentOpen: { + get_next_token(); + if (tok.kind != Token::Kind::CommentClose) { + throw_parser_error("expected comment close, got '" + tok.describe() + "'"); + } + } break; + default: { + throw_parser_error("unexpected token '" + tok.describe() + "'"); + } break; } } } - Template parse(nonstd::string_view input, nonstd::string_view path) { - Template result; - result.content = static_cast(input); +public: + explicit Parser(const ParserConfig& parser_config, const LexerConfig& lexer_config, TemplateStorage& template_storage, + const FunctionStorage& function_storage) + : config(parser_config), lexer(lexer_config), template_storage(template_storage), function_storage(function_storage) {} + + Template parse(std::string_view input, std::string_view path) { + auto result = Template(static_cast(input)); parse_into(result, path); return result; } - Template parse(nonstd::string_view input) { + Template parse(std::string_view input) { return parse(input, "./"); } - Template parse_template(nonstd::string_view filename) { - Template result; - result.content = load_file(filename); + void parse_into_template(Template& tmpl, std::string_view filename) { + std::string_view path = filename.substr(0, filename.find_last_of("/\\") + 1); - nonstd::string_view path = filename.substr(0, filename.find_last_of("/\\") + 1); - // StringRef path = sys::path::parent_path(filename); - Parser(m_config, m_lexer.get_config(), m_included_templates).parse_into(result, path); - return result; + // StringRef path = sys::path::parent_path(filename); + auto sub_parser = Parser(config, lexer.get_config(), template_storage, function_storage); + sub_parser.parse_into(tmpl, path); } - std::string load_file(nonstd::string_view filename) { - std::ifstream file = open_file_or_throw(static_cast(filename)); + std::string load_file(const std::string& filename) { + std::ifstream file; + file.open(filename); + if (file.fail()) { + INJA_THROW(FileError("failed accessing file at '" + filename + "'")); + } std::string text((std::istreambuf_iterator(file)), std::istreambuf_iterator()); return text; } - - private: - const ParserConfig& m_config; - Lexer m_lexer; - Token m_tok; - Token m_peek_tok; - bool m_have_peek_tok {false}; - TemplateStorage& m_included_templates; - const ParserStatic& m_static; - - struct IfData { - unsigned int prev_cond_jump; - std::vector uncond_jumps; - - explicit IfData(unsigned int condJump): prev_cond_jump(condJump) {} - }; - - std::vector m_if_stack; - std::vector m_loop_stack; - - void get_next_token() { - if (m_have_peek_tok) { - m_tok = m_peek_tok; - m_have_peek_tok = false; - } else { - m_tok = m_lexer.scan(); - } - } - - void get_peek_token() { - if (!m_have_peek_tok) { - m_peek_tok = m_lexer.scan(); - m_have_peek_tok = true; - } - } }; -} // namespace inja +} // namespace inja -#endif // PANTOR_INJA_PARSER_HPP - -// #include "polyfill.hpp" -#ifndef PANTOR_INJA_POLYFILL_HPP -#define PANTOR_INJA_POLYFILL_HPP - - -#if __cplusplus < 201402L - -#include -#include -#include -#include - - -namespace stdinja { - template struct _Unique_if { - typedef std::unique_ptr _Single_object; - }; - - template struct _Unique_if { - typedef std::unique_ptr _Unknown_bound; - }; - - template struct _Unique_if { - typedef void _Known_bound; - }; - - template - typename _Unique_if::_Single_object - make_unique(Args&&... args) { - return std::unique_ptr(new T(std::forward(args)...)); - } - - template - typename _Unique_if::_Unknown_bound - make_unique(size_t n) { - typedef typename std::remove_extent::type U; - return std::unique_ptr(new U[n]()); - } - - template - typename _Unique_if::_Known_bound - make_unique(Args&&...) = delete; -} - -#else - -namespace stdinja = std; - -#endif // memory */ - - -#endif // PANTOR_INJA_POLYFILL_HPP +#endif // INCLUDE_INJA_PARSER_HPP_ // #include "renderer.hpp" -#ifndef PANTOR_INJA_RENDERER_HPP -#define PANTOR_INJA_RENDERER_HPP +#ifndef INCLUDE_INJA_RENDERER_HPP_ +#define INCLUDE_INJA_RENDERER_HPP_ #include #include @@ -2756,677 +2082,735 @@ namespace stdinja = std; #include #include -#include +// #include "config.hpp" -// #include "bytecode.hpp" +// #include "exceptions.hpp" + +// #include "node.hpp" // #include "template.hpp" // #include "utils.hpp" - namespace inja { -inline nonstd::string_view convert_dot_to_json_pointer(nonstd::string_view dot, std::string& out) { - out.clear(); - do { - nonstd::string_view part; - std::tie(part, dot) = string_view::split(dot, '.'); - out.push_back('/'); - out.append(part.begin(), part.end()); - } while (!dot.empty()); - return nonstd::string_view(out.data(), out.size()); -} - /*! * \brief Class for rendering a Template with data. */ -class Renderer { - std::vector& get_args(const Bytecode& bc) { - m_tmp_args.clear(); +class Renderer : public NodeVisitor { + using Op = FunctionStorage::Operation; - bool has_imm = ((bc.flags & Bytecode::Flag::ValueMask) != Bytecode::Flag::ValuePop); + const RenderConfig config; + const TemplateStorage& template_storage; + const FunctionStorage& function_storage; - // get args from stack - unsigned int pop_args = bc.args; - if (has_imm) { - pop_args -= 1; - } + const Template* current_template; + size_t current_level {0}; + std::vector template_stack; + std::vector block_statement_stack; - for (auto i = std::prev(m_stack.end(), pop_args); i != m_stack.end(); i++) { - m_tmp_args.push_back(&(*i)); - } + const json* data_input; + std::ostream* output_stream; - // get immediate arg - if (has_imm) { - m_tmp_args.push_back(get_imm(bc)); - } + json additional_data; + json* current_loop_data = &additional_data["loop"]; - return m_tmp_args; - } + std::vector> data_tmp_stack; + std::stack data_eval_stack; + std::stack not_found_stack; - void pop_args(const Bytecode& bc) { - unsigned int popArgs = bc.args; - if ((bc.flags & Bytecode::Flag::ValueMask) != Bytecode::Flag::ValuePop) { - popArgs -= 1; - } - for (unsigned int i = 0; i < popArgs; ++i) { - m_stack.pop_back(); - } - } + bool break_rendering {false}; - const json* get_imm(const Bytecode& bc) { - std::string ptr_buffer; - nonstd::string_view ptr; - switch (bc.flags & Bytecode::Flag::ValueMask) { - case Bytecode::Flag::ValuePop: - return nullptr; - case Bytecode::Flag::ValueImmediate: - return &bc.value; - case Bytecode::Flag::ValueLookupDot: - ptr = convert_dot_to_json_pointer(bc.str, ptr_buffer); - break; - case Bytecode::Flag::ValueLookupPointer: - ptr_buffer += '/'; - ptr_buffer += bc.str; - ptr = ptr_buffer; - break; - } - try { - return &m_data->at(json::json_pointer(ptr.data())); - } catch (std::exception&) { - // try to evaluate as a no-argument callback - if (auto callback = m_callbacks.find_callback(bc.str, 0)) { - std::vector arguments {}; - m_tmp_val = callback(arguments); - return &m_tmp_val; - } - inja_throw("render_error", "variable '" + static_cast(bc.str) + "' not found"); - return nullptr; - } - } - - bool truthy(const json& var) const { - if (var.empty()) { + static bool truthy(const json* data) { + if (data->is_boolean()) { + return data->get(); + } else if (data->is_number()) { + return (*data != 0); + } else if (data->is_null()) { return false; - } else if (var.is_number()) { - return (var != 0); - } else if (var.is_string()) { - return !var.empty(); - } - - try { - return var.get(); - } catch (json::type_error& e) { - inja_throw("json_error", e.what()); - throw; } + return !data->empty(); } - void update_loop_data() { - LoopLevel& level = m_loop_stack.back(); - - if (level.loop_type == LoopLevel::Type::Array) { - level.data[static_cast(level.value_name)] = level.values.at(level.index); // *level.it; - auto& loopData = level.data["loop"]; - loopData["index"] = level.index; - loopData["index1"] = level.index + 1; - loopData["is_first"] = (level.index == 0); - loopData["is_last"] = (level.index == level.size - 1); + void print_data(const std::shared_ptr value) { + if (value->is_string()) { + *output_stream << value->get_ref(); + } else if (value->is_number_integer()) { + *output_stream << value->get(); + } else if (value->is_null()) { } else { - level.data[static_cast(level.key_name)] = level.map_it->first; - level.data[static_cast(level.value_name)] = *level.map_it->second; + *output_stream << value->dump(); } } - const TemplateStorage& m_included_templates; - const FunctionStorage& m_callbacks; + const std::shared_ptr eval_expression_list(const ExpressionListNode& expression_list) { + if (!expression_list.root) { + throw_renderer_error("empty expression", expression_list); + } - std::vector m_stack; + expression_list.root->accept(*this); + if (data_eval_stack.empty()) { + throw_renderer_error("empty expression", expression_list); + } else if (data_eval_stack.size() != 1) { + throw_renderer_error("malformed expression", expression_list); + } - struct LoopLevel { - enum class Type { Map, Array }; + const auto result = data_eval_stack.top(); + data_eval_stack.pop(); - Type loop_type; - nonstd::string_view key_name; // variable name for keys - nonstd::string_view value_name; // variable name for values - json data; // data with loop info added + if (!result) { + if (not_found_stack.empty()) { + throw_renderer_error("expression could not be evaluated", expression_list); + } - json values; // values to iterate over + auto node = not_found_stack.top(); + not_found_stack.pop(); - // loop over list - size_t index; // current list index - size_t size; // length of list - - // loop over map - using KeyValue = std::pair; - using MapValues = std::vector; - MapValues map_values; // values to iterate over - MapValues::iterator map_it; // iterator over values - - }; - - std::vector m_loop_stack; - const json* m_data; - - std::vector m_tmp_args; - json m_tmp_val; - - - public: - Renderer(const TemplateStorage& included_templates, const FunctionStorage& callbacks): m_included_templates(included_templates), m_callbacks(callbacks) { - m_stack.reserve(16); - m_tmp_args.reserve(4); - m_loop_stack.reserve(16); + throw_renderer_error("variable '" + static_cast(node->name) + "' not found", *node); + } + return std::make_shared(*result); } - void render_to(std::ostream& os, const Template& tmpl, const json& data) { - m_data = &data; + void throw_renderer_error(const std::string& message, const AstNode& node) { + SourceLocation loc = get_source_location(current_template->content, node.pos); + INJA_THROW(RenderError(message, loc)); + } - for (size_t i = 0; i < tmpl.bytecodes.size(); ++i) { - const auto& bc = tmpl.bytecodes[i]; + void make_result(const json&& result) { + auto result_ptr = std::make_shared(result); + data_tmp_stack.push_back(result_ptr); + data_eval_stack.push(result_ptr.get()); + } - switch (bc.op) { - case Bytecode::Op::Nop: { - break; - } - case Bytecode::Op::PrintText: { - os << bc.str; - break; - } - case Bytecode::Op::PrintValue: { - const json& val = *get_args(bc)[0]; - if (val.is_string()) { - os << val.get_ref(); - } else { - os << val.dump(); - } - pop_args(bc); - break; - } - case Bytecode::Op::Push: { - m_stack.emplace_back(*get_imm(bc)); - break; - } - case Bytecode::Op::Upper: { - auto result = get_args(bc)[0]->get(); - std::transform(result.begin(), result.end(), result.begin(), ::toupper); - pop_args(bc); - m_stack.emplace_back(std::move(result)); - break; - } - case Bytecode::Op::Lower: { - auto result = get_args(bc)[0]->get(); - std::transform(result.begin(), result.end(), result.begin(), ::tolower); - pop_args(bc); - m_stack.emplace_back(std::move(result)); - break; - } - case Bytecode::Op::Range: { - int number = get_args(bc)[0]->get(); - std::vector result(number); - std::iota(std::begin(result), std::end(result), 0); - pop_args(bc); - m_stack.emplace_back(std::move(result)); - break; - } - case Bytecode::Op::Length: { - const json& val = *get_args(bc)[0]; + template std::array get_arguments(const FunctionNode& node) { + if (node.arguments.size() < N_start + N) { + throw_renderer_error("function needs " + std::to_string(N_start + N) + " variables, but has only found " + std::to_string(node.arguments.size()), node); + } - int result; - if (val.is_string()) { - result = val.get_ref().length(); - } else { - result = val.size(); - } + for (size_t i = N_start; i < N_start + N; i += 1) { + node.arguments[i]->accept(*this); + } - pop_args(bc); - m_stack.emplace_back(result); - break; - } - case Bytecode::Op::Sort: { - auto result = get_args(bc)[0]->get>(); - std::sort(result.begin(), result.end()); - pop_args(bc); - m_stack.emplace_back(std::move(result)); - break; - } - case Bytecode::Op::At: { - auto args = get_args(bc); - auto result = args[0]->at(args[1]->get()); - pop_args(bc); - m_stack.emplace_back(result); - break; - } - case Bytecode::Op::First: { - auto result = get_args(bc)[0]->front(); - pop_args(bc); - m_stack.emplace_back(result); - break; - } - case Bytecode::Op::Last: { - auto result = get_args(bc)[0]->back(); - pop_args(bc); - m_stack.emplace_back(result); - break; - } - case Bytecode::Op::Round: { - auto args = get_args(bc); - double number = args[0]->get(); - int precision = args[1]->get(); - pop_args(bc); - m_stack.emplace_back(std::round(number * std::pow(10.0, precision)) / std::pow(10.0, precision)); - break; - } - case Bytecode::Op::DivisibleBy: { - auto args = get_args(bc); - int number = args[0]->get(); - int divisor = args[1]->get(); - pop_args(bc); - m_stack.emplace_back((divisor != 0) && (number % divisor == 0)); - break; - } - case Bytecode::Op::Odd: { - int number = get_args(bc)[0]->get(); - pop_args(bc); - m_stack.emplace_back(number % 2 != 0); - break; - } - case Bytecode::Op::Even: { - int number = get_args(bc)[0]->get(); - pop_args(bc); - m_stack.emplace_back(number % 2 == 0); - break; - } - case Bytecode::Op::Max: { - auto args = get_args(bc); - auto result = *std::max_element(args[0]->begin(), args[0]->end()); - pop_args(bc); - m_stack.emplace_back(std::move(result)); - break; - } - case Bytecode::Op::Min: { - auto args = get_args(bc); - auto result = *std::min_element(args[0]->begin(), args[0]->end()); - pop_args(bc); - m_stack.emplace_back(std::move(result)); - break; - } - case Bytecode::Op::Not: { - bool result = !truthy(*get_args(bc)[0]); - pop_args(bc); - m_stack.emplace_back(result); - break; - } - case Bytecode::Op::And: { - auto args = get_args(bc); - bool result = truthy(*args[0]) && truthy(*args[1]); - pop_args(bc); - m_stack.emplace_back(result); - break; - } - case Bytecode::Op::Or: { - auto args = get_args(bc); - bool result = truthy(*args[0]) || truthy(*args[1]); - pop_args(bc); - m_stack.emplace_back(result); - break; - } - case Bytecode::Op::In: { - auto args = get_args(bc); - bool result = std::find(args[1]->begin(), args[1]->end(), *args[0]) != - args[1]->end(); - pop_args(bc); - m_stack.emplace_back(result); - break; - } - case Bytecode::Op::Equal: { - auto args = get_args(bc); - bool result = (*args[0] == *args[1]); - pop_args(bc); - m_stack.emplace_back(result); - break; - } - case Bytecode::Op::Greater: { - auto args = get_args(bc); - bool result = (*args[0] > *args[1]); - pop_args(bc); - m_stack.emplace_back(result); - break; - } - case Bytecode::Op::Less: { - auto args = get_args(bc); - bool result = (*args[0] < *args[1]); - pop_args(bc); - m_stack.emplace_back(result); - break; - } - case Bytecode::Op::GreaterEqual: { - auto args = get_args(bc); - bool result = (*args[0] >= *args[1]); - pop_args(bc); - m_stack.emplace_back(result); - break; - } - case Bytecode::Op::LessEqual: { - auto args = get_args(bc); - bool result = (*args[0] <= *args[1]); - pop_args(bc); - m_stack.emplace_back(result); - break; - } - case Bytecode::Op::Different: { - auto args = get_args(bc); - bool result = (*args[0] != *args[1]); - pop_args(bc); - m_stack.emplace_back(result); - break; - } - case Bytecode::Op::Float: { - double result = - std::stod(get_args(bc)[0]->get_ref()); - pop_args(bc); - m_stack.emplace_back(result); - break; - } - case Bytecode::Op::Int: { - int result = std::stoi(get_args(bc)[0]->get_ref()); - pop_args(bc); - m_stack.emplace_back(result); - break; - } - case Bytecode::Op::Exists: { - auto&& name = get_args(bc)[0]->get_ref(); - bool result = (data.find(name) != data.end()); - pop_args(bc); - m_stack.emplace_back(result); - break; - } - case Bytecode::Op::ExistsInObject: { - auto args = get_args(bc); - auto&& name = args[1]->get_ref(); - bool result = (args[0]->find(name) != args[0]->end()); - pop_args(bc); - m_stack.emplace_back(result); - break; - } - case Bytecode::Op::IsBoolean: { - bool result = get_args(bc)[0]->is_boolean(); - pop_args(bc); - m_stack.emplace_back(result); - break; - } - case Bytecode::Op::IsNumber: { - bool result = get_args(bc)[0]->is_number(); - pop_args(bc); - m_stack.emplace_back(result); - break; - } - case Bytecode::Op::IsInteger: { - bool result = get_args(bc)[0]->is_number_integer(); - pop_args(bc); - m_stack.emplace_back(result); - break; - } - case Bytecode::Op::IsFloat: { - bool result = get_args(bc)[0]->is_number_float(); - pop_args(bc); - m_stack.emplace_back(result); - break; - } - case Bytecode::Op::IsObject: { - bool result = get_args(bc)[0]->is_object(); - pop_args(bc); - m_stack.emplace_back(result); - break; - } - case Bytecode::Op::IsArray: { - bool result = get_args(bc)[0]->is_array(); - pop_args(bc); - m_stack.emplace_back(result); - break; - } - case Bytecode::Op::IsString: { - bool result = get_args(bc)[0]->is_string(); - pop_args(bc); - m_stack.emplace_back(result); - break; - } - case Bytecode::Op::Default: { - // default needs to be a bit "magic"; we can't evaluate the first - // argument during the push operation, so we swap the arguments during - // the parse phase so the second argument is pushed on the stack and - // the first argument is in the immediate - try { - const json* imm = get_imm(bc); - // if no exception was raised, replace the stack value with it - m_stack.back() = *imm; - } catch (std::exception&) { - // couldn't read immediate, just leave the stack as is - } - break; - } - case Bytecode::Op::Include: - Renderer(m_included_templates, m_callbacks).render_to(os, m_included_templates.find(get_imm(bc)->get_ref())->second, *m_data); - break; - case Bytecode::Op::Callback: { - auto callback = m_callbacks.find_callback(bc.str, bc.args); - if (!callback) { - inja_throw("render_error", "function '" + static_cast(bc.str) + "' (" + std::to_string(static_cast(bc.args)) + ") not found"); - } - json result = callback(get_args(bc)); - pop_args(bc); - m_stack.emplace_back(std::move(result)); - break; - } - case Bytecode::Op::Jump: { - i = bc.args - 1; // -1 due to ++i in loop - break; - } - case Bytecode::Op::ConditionalJump: { - if (!truthy(m_stack.back())) { - i = bc.args - 1; // -1 due to ++i in loop - } - m_stack.pop_back(); - break; - } - case Bytecode::Op::StartLoop: { - // jump past loop body if empty - if (m_stack.back().empty()) { - m_stack.pop_back(); - i = bc.args; // ++i in loop will take it past EndLoop - break; - } + if (data_eval_stack.size() < N) { + throw_renderer_error("function needs " + std::to_string(N) + " variables, but has only found " + std::to_string(data_eval_stack.size()), node); + } - m_loop_stack.emplace_back(); - LoopLevel& level = m_loop_stack.back(); - level.value_name = bc.str; - level.values = std::move(m_stack.back()); - level.data = (*m_data); - m_stack.pop_back(); + std::array result; + for (size_t i = 0; i < N; i += 1) { + result[N - i - 1] = data_eval_stack.top(); + data_eval_stack.pop(); - if (bc.value.is_string()) { - // map iterator - if (!level.values.is_object()) { - m_loop_stack.pop_back(); - inja_throw("render_error", "for key, value requires object"); - } - level.loop_type = LoopLevel::Type::Map; - level.key_name = bc.value.get_ref(); + if (!result[N - i - 1]) { + const auto data_node = not_found_stack.top(); + not_found_stack.pop(); - // sort by key - for (auto it = level.values.begin(), end = level.values.end(); it != end; ++it) { - level.map_values.emplace_back(it.key(), &it.value()); - } - std::sort(level.map_values.begin(), level.map_values.end(), [](const LoopLevel::KeyValue& a, const LoopLevel::KeyValue& b) { return a.first < b.first; }); - level.map_it = level.map_values.begin(); - } else { - if (!level.values.is_array()) { - m_loop_stack.pop_back(); - inja_throw("render_error", "type must be array"); - } - - // list iterator - level.loop_type = LoopLevel::Type::Array; - level.index = 0; - level.size = level.values.size(); - } - - // provide parent access in nested loop - auto parent_loop_it = level.data.find("loop"); - if (parent_loop_it != level.data.end()) { - json loop_copy = *parent_loop_it; - (*parent_loop_it)["parent"] = std::move(loop_copy); - } - - // set "current" data to loop data - m_data = &level.data; - update_loop_data(); - break; - } - case Bytecode::Op::EndLoop: { - if (m_loop_stack.empty()) { - inja_throw("render_error", "unexpected state in renderer"); - } - LoopLevel& level = m_loop_stack.back(); - - bool done; - if (level.loop_type == LoopLevel::Type::Array) { - level.index += 1; - done = (level.index == level.values.size()); - } else { - level.map_it += 1; - done = (level.map_it == level.map_values.end()); - } - - if (done) { - m_loop_stack.pop_back(); - // set "current" data to outer loop data or main data as appropriate - if (!m_loop_stack.empty()) { - m_data = &m_loop_stack.back().data; - } else { - m_data = &data; - } - break; - } - - update_loop_data(); - - // jump back to start of loop - i = bc.args - 1; // -1 due to ++i in loop - break; - } - default: { - inja_throw("render_error", "unknown op in renderer: " + std::to_string(static_cast(bc.op))); + if (throw_not_found) { + throw_renderer_error("variable '" + static_cast(data_node->name) + "' not found", *data_node); } } } + return result; + } + + template Arguments get_argument_vector(const FunctionNode& node) { + const size_t N = node.arguments.size(); + for (auto a : node.arguments) { + a->accept(*this); + } + + if (data_eval_stack.size() < N) { + throw_renderer_error("function needs " + std::to_string(N) + " variables, but has only found " + std::to_string(data_eval_stack.size()), node); + } + + Arguments result {N}; + for (size_t i = 0; i < N; i += 1) { + result[N - i - 1] = data_eval_stack.top(); + data_eval_stack.pop(); + + if (!result[N - i - 1]) { + const auto data_node = not_found_stack.top(); + not_found_stack.pop(); + + if (throw_not_found) { + throw_renderer_error("variable '" + static_cast(data_node->name) + "' not found", *data_node); + } + } + } + return result; + } + + void visit(const BlockNode& node) { + for (auto& n : node.nodes) { + n->accept(*this); + + if (break_rendering) { + break; + } + } + } + + void visit(const TextNode& node) { + output_stream->write(current_template->content.c_str() + node.pos, node.length); + } + + void visit(const ExpressionNode&) {} + + void visit(const LiteralNode& node) { + data_eval_stack.push(&node.value); + } + + void visit(const DataNode& node) { + if (additional_data.contains(node.ptr)) { + data_eval_stack.push(&(additional_data[node.ptr])); + } else if (data_input->contains(node.ptr)) { + data_eval_stack.push(&(*data_input)[node.ptr]); + } else { + // Try to evaluate as a no-argument callback + const auto function_data = function_storage.find_function(node.name, 0); + if (function_data.operation == FunctionStorage::Operation::Callback) { + Arguments empty_args {}; + const auto value = std::make_shared(function_data.callback(empty_args)); + data_tmp_stack.push_back(value); + data_eval_stack.push(value.get()); + } else { + data_eval_stack.push(nullptr); + not_found_stack.emplace(&node); + } + } + } + + void visit(const FunctionNode& node) { + switch (node.operation) { + case Op::Not: { + const auto args = get_arguments<1>(node); + make_result(!truthy(args[0])); + } break; + case Op::And: { + make_result(truthy(get_arguments<1, 0>(node)[0]) && truthy(get_arguments<1, 1>(node)[0])); + } break; + case Op::Or: { + make_result(truthy(get_arguments<1, 0>(node)[0]) || truthy(get_arguments<1, 1>(node)[0])); + } break; + case Op::In: { + const auto args = get_arguments<2>(node); + make_result(std::find(args[1]->begin(), args[1]->end(), *args[0]) != args[1]->end()); + } break; + case Op::Equal: { + const auto args = get_arguments<2>(node); + make_result(*args[0] == *args[1]); + } break; + case Op::NotEqual: { + const auto args = get_arguments<2>(node); + make_result(*args[0] != *args[1]); + } break; + case Op::Greater: { + const auto args = get_arguments<2>(node); + make_result(*args[0] > *args[1]); + } break; + case Op::GreaterEqual: { + const auto args = get_arguments<2>(node); + make_result(*args[0] >= *args[1]); + } break; + case Op::Less: { + const auto args = get_arguments<2>(node); + make_result(*args[0] < *args[1]); + } break; + case Op::LessEqual: { + const auto args = get_arguments<2>(node); + make_result(*args[0] <= *args[1]); + } break; + case Op::Add: { + const auto args = get_arguments<2>(node); + if (args[0]->is_string() && args[1]->is_string()) { + make_result(args[0]->get_ref() + args[1]->get_ref()); + } else if (args[0]->is_number_integer() && args[1]->is_number_integer()) { + make_result(args[0]->get() + args[1]->get()); + } else { + make_result(args[0]->get() + args[1]->get()); + } + } break; + case Op::Subtract: { + const auto args = get_arguments<2>(node); + if (args[0]->is_number_integer() && args[1]->is_number_integer()) { + make_result(args[0]->get() - args[1]->get()); + } else { + make_result(args[0]->get() - args[1]->get()); + } + } break; + case Op::Multiplication: { + const auto args = get_arguments<2>(node); + if (args[0]->is_number_integer() && args[1]->is_number_integer()) { + make_result(args[0]->get() * args[1]->get()); + } else { + make_result(args[0]->get() * args[1]->get()); + } + } break; + case Op::Division: { + const auto args = get_arguments<2>(node); + if (args[1]->get() == 0) { + throw_renderer_error("division by zero", node); + } + make_result(args[0]->get() / args[1]->get()); + } break; + case Op::Power: { + const auto args = get_arguments<2>(node); + if (args[0]->is_number_integer() && args[1]->get() >= 0) { + int result = static_cast(std::pow(args[0]->get(), args[1]->get())); + make_result(result); + } else { + double result = std::pow(args[0]->get(), args[1]->get()); + make_result(result); + } + } break; + case Op::Modulo: { + const auto args = get_arguments<2>(node); + make_result(args[0]->get() % args[1]->get()); + } break; + case Op::AtId: { + const auto container = get_arguments<1, 0, false>(node)[0]; + node.arguments[1]->accept(*this); + if (not_found_stack.empty()) { + throw_renderer_error("could not find element with given name", node); + } + const auto id_node = not_found_stack.top(); + not_found_stack.pop(); + data_eval_stack.pop(); + data_eval_stack.push(&container->at(id_node->name)); + } break; + case Op::At: { + const auto args = get_arguments<2>(node); + if (args[0]->is_object()) { + data_eval_stack.push(&args[0]->at(args[1]->get())); + } else { + data_eval_stack.push(&args[0]->at(args[1]->get())); + } + } break; + case Op::Default: { + const auto test_arg = get_arguments<1, 0, false>(node)[0]; + data_eval_stack.push(test_arg ? test_arg : get_arguments<1, 1>(node)[0]); + } break; + case Op::DivisibleBy: { + const auto args = get_arguments<2>(node); + const int divisor = args[1]->get(); + make_result((divisor != 0) && (args[0]->get() % divisor == 0)); + } break; + case Op::Even: { + make_result(get_arguments<1>(node)[0]->get() % 2 == 0); + } break; + case Op::Exists: { + auto&& name = get_arguments<1>(node)[0]->get_ref(); + make_result(data_input->contains(json::json_pointer(DataNode::convert_dot_to_ptr(name)))); + } break; + case Op::ExistsInObject: { + const auto args = get_arguments<2>(node); + auto&& name = args[1]->get_ref(); + make_result(args[0]->find(name) != args[0]->end()); + } break; + case Op::First: { + const auto result = &get_arguments<1>(node)[0]->front(); + data_eval_stack.push(result); + } break; + case Op::Float: { + make_result(std::stod(get_arguments<1>(node)[0]->get_ref())); + } break; + case Op::Int: { + make_result(std::stoi(get_arguments<1>(node)[0]->get_ref())); + } break; + case Op::Last: { + const auto result = &get_arguments<1>(node)[0]->back(); + data_eval_stack.push(result); + } break; + case Op::Length: { + const auto val = get_arguments<1>(node)[0]; + if (val->is_string()) { + make_result(val->get_ref().length()); + } else { + make_result(val->size()); + } + } break; + case Op::Lower: { + std::string result = get_arguments<1>(node)[0]->get(); + std::transform(result.begin(), result.end(), result.begin(), ::tolower); + make_result(std::move(result)); + } break; + case Op::Max: { + const auto args = get_arguments<1>(node); + const auto result = std::max_element(args[0]->begin(), args[0]->end()); + data_eval_stack.push(&(*result)); + } break; + case Op::Min: { + const auto args = get_arguments<1>(node); + const auto result = std::min_element(args[0]->begin(), args[0]->end()); + data_eval_stack.push(&(*result)); + } break; + case Op::Odd: { + make_result(get_arguments<1>(node)[0]->get() % 2 != 0); + } break; + case Op::Range: { + std::vector result(get_arguments<1>(node)[0]->get()); + std::iota(result.begin(), result.end(), 0); + make_result(std::move(result)); + } break; + case Op::Round: { + const auto args = get_arguments<2>(node); + const int precision = args[1]->get(); + const double result = std::round(args[0]->get() * std::pow(10.0, precision)) / std::pow(10.0, precision); + if (precision == 0) { + make_result(int(result)); + } else { + make_result(result); + } + } break; + case Op::Sort: { + auto result_ptr = std::make_shared(get_arguments<1>(node)[0]->get>()); + std::sort(result_ptr->begin(), result_ptr->end()); + data_tmp_stack.push_back(result_ptr); + data_eval_stack.push(result_ptr.get()); + } break; + case Op::Upper: { + std::string result = get_arguments<1>(node)[0]->get(); + std::transform(result.begin(), result.end(), result.begin(), ::toupper); + make_result(std::move(result)); + } break; + case Op::IsBoolean: { + make_result(get_arguments<1>(node)[0]->is_boolean()); + } break; + case Op::IsNumber: { + make_result(get_arguments<1>(node)[0]->is_number()); + } break; + case Op::IsInteger: { + make_result(get_arguments<1>(node)[0]->is_number_integer()); + } break; + case Op::IsFloat: { + make_result(get_arguments<1>(node)[0]->is_number_float()); + } break; + case Op::IsObject: { + make_result(get_arguments<1>(node)[0]->is_object()); + } break; + case Op::IsArray: { + make_result(get_arguments<1>(node)[0]->is_array()); + } break; + case Op::IsString: { + make_result(get_arguments<1>(node)[0]->is_string()); + } break; + case Op::Callback: { + auto args = get_argument_vector(node); + make_result(node.callback(args)); + } break; + case Op::Super: { + const auto args = get_argument_vector(node); + const size_t old_level = current_level; + const size_t level_diff = (args.size() == 1) ? args[0]->get() : 1; + const size_t level = current_level + level_diff; + + if (block_statement_stack.empty()) { + throw_renderer_error("super() call is not within a block", node); + } + + if (level < 1 || level > template_stack.size() - 1) { + throw_renderer_error("level of super() call does not match parent templates (between 1 and " + std::to_string(template_stack.size() - 1) + ")", node); + } + + const auto current_block_statement = block_statement_stack.back(); + const Template* new_template = template_stack.at(level); + const Template* old_template = current_template; + const auto block_it = new_template->block_storage.find(current_block_statement->name); + if (block_it != new_template->block_storage.end()) { + current_template = new_template; + current_level = level; + block_it->second->block.accept(*this); + current_level = old_level; + current_template = old_template; + } else { + throw_renderer_error("could not find block with name '" + current_block_statement->name + "'", node); + } + make_result(nullptr); + } break; + case Op::Join: { + const auto args = get_arguments<2>(node); + const auto separator = args[1]->get(); + std::ostringstream os; + std::string sep; + for (const auto& value : *args[0]) { + os << sep; + if (value.is_string()) { + os << value.get(); // otherwise the value is surrounded with "" + } else { + os << value.dump(); + } + sep = separator; + } + make_result(os.str()); + } break; + case Op::ParenLeft: + case Op::ParenRight: + case Op::None: + break; + } + } + + void visit(const ExpressionListNode& node) { + print_data(eval_expression_list(node)); + } + + void visit(const StatementNode&) {} + + void visit(const ForStatementNode&) {} + + void visit(const ForArrayStatementNode& node) { + const auto result = eval_expression_list(node.condition); + if (!result->is_array()) { + throw_renderer_error("object must be an array", node); + } + + if (!current_loop_data->empty()) { + auto tmp = *current_loop_data; // Because of clang-3 + (*current_loop_data)["parent"] = std::move(tmp); + } + + size_t index = 0; + (*current_loop_data)["is_first"] = true; + (*current_loop_data)["is_last"] = (result->size() <= 1); + for (auto it = result->begin(); it != result->end(); ++it) { + additional_data[static_cast(node.value)] = *it; + + (*current_loop_data)["index"] = index; + (*current_loop_data)["index1"] = index + 1; + if (index == 1) { + (*current_loop_data)["is_first"] = false; + } + if (index == result->size() - 1) { + (*current_loop_data)["is_last"] = true; + } + + node.body.accept(*this); + ++index; + } + + additional_data[static_cast(node.value)].clear(); + if (!(*current_loop_data)["parent"].empty()) { + const auto tmp = (*current_loop_data)["parent"]; + *current_loop_data = std::move(tmp); + } else { + current_loop_data = &additional_data["loop"]; + } + } + + void visit(const ForObjectStatementNode& node) { + const auto result = eval_expression_list(node.condition); + if (!result->is_object()) { + throw_renderer_error("object must be an object", node); + } + + if (!current_loop_data->empty()) { + (*current_loop_data)["parent"] = std::move(*current_loop_data); + } + + size_t index = 0; + (*current_loop_data)["is_first"] = true; + (*current_loop_data)["is_last"] = (result->size() <= 1); + for (auto it = result->begin(); it != result->end(); ++it) { + additional_data[static_cast(node.key)] = it.key(); + additional_data[static_cast(node.value)] = it.value(); + + (*current_loop_data)["index"] = index; + (*current_loop_data)["index1"] = index + 1; + if (index == 1) { + (*current_loop_data)["is_first"] = false; + } + if (index == result->size() - 1) { + (*current_loop_data)["is_last"] = true; + } + + node.body.accept(*this); + ++index; + } + + additional_data[static_cast(node.key)].clear(); + additional_data[static_cast(node.value)].clear(); + if (!(*current_loop_data)["parent"].empty()) { + *current_loop_data = std::move((*current_loop_data)["parent"]); + } else { + current_loop_data = &additional_data["loop"]; + } + } + + void visit(const IfStatementNode& node) { + const auto result = eval_expression_list(node.condition); + if (truthy(result.get())) { + node.true_statement.accept(*this); + } else if (node.has_false_statement) { + node.false_statement.accept(*this); + } + } + + void visit(const IncludeStatementNode& node) { + auto sub_renderer = Renderer(config, template_storage, function_storage); + const auto included_template_it = template_storage.find(node.file); + if (included_template_it != template_storage.end()) { + sub_renderer.render_to(*output_stream, included_template_it->second, *data_input, &additional_data); + } else if (config.throw_at_missing_includes) { + throw_renderer_error("include '" + node.file + "' not found", node); + } + } + + void visit(const ExtendsStatementNode& node) { + const auto included_template_it = template_storage.find(node.file); + if (included_template_it != template_storage.end()) { + const Template* parent_template = &included_template_it->second; + render_to(*output_stream, *parent_template, *data_input, &additional_data); + break_rendering = true; + } else if (config.throw_at_missing_includes) { + throw_renderer_error("extends '" + node.file + "' not found", node); + } + } + + void visit(const BlockStatementNode& node) { + const size_t old_level = current_level; + current_level = 0; + current_template = template_stack.front(); + const auto block_it = current_template->block_storage.find(node.name); + if (block_it != current_template->block_storage.end()) { + block_statement_stack.emplace_back(&node); + block_it->second->block.accept(*this); + block_statement_stack.pop_back(); + } + current_level = old_level; + current_template = template_stack.back(); + } + + void visit(const SetStatementNode& node) { + std::string ptr = node.key; + replace_substring(ptr, ".", "/"); + ptr = "/" + ptr; + additional_data[json::json_pointer(ptr)] = *eval_expression_list(node.expression); + } + +public: + Renderer(const RenderConfig& config, const TemplateStorage& template_storage, const FunctionStorage& function_storage) + : config(config), template_storage(template_storage), function_storage(function_storage) {} + + void render_to(std::ostream& os, const Template& tmpl, const json& data, json* loop_data = nullptr) { + output_stream = &os; + current_template = &tmpl; + data_input = &data; + if (loop_data) { + additional_data = *loop_data; + current_loop_data = &additional_data["loop"]; + } + + template_stack.emplace_back(current_template); + current_template->root.accept(*this); + + data_tmp_stack.clear(); } }; -} // namespace inja +} // namespace inja -#endif // PANTOR_INJA_RENDERER_HPP - -// #include "string_view.hpp" +#endif // INCLUDE_INJA_RENDERER_HPP_ // #include "template.hpp" // #include "utils.hpp" - namespace inja { -using namespace nlohmann; - /*! * \brief Class for changing the configuration. */ class Environment { - class Impl { - public: - std::string input_path; - std::string output_path; + std::string input_path; + std::string output_path; - LexerConfig lexer_config; - ParserConfig parser_config; + LexerConfig lexer_config; + ParserConfig parser_config; + RenderConfig render_config; - FunctionStorage callbacks; - TemplateStorage included_templates; - }; + FunctionStorage function_storage; + TemplateStorage template_storage; - std::unique_ptr m_impl; +public: + Environment(): Environment("") {} - public: - Environment(): Environment("") { } + explicit Environment(const std::string& global_path): input_path(global_path), output_path(global_path) {} - explicit Environment(const std::string& global_path): m_impl(stdinja::make_unique()) { - m_impl->input_path = global_path; - m_impl->output_path = global_path; - } - - explicit Environment(const std::string& input_path, const std::string& output_path): m_impl(stdinja::make_unique()) { - m_impl->input_path = input_path; - m_impl->output_path = output_path; - } + Environment(const std::string& input_path, const std::string& output_path): input_path(input_path), output_path(output_path) {} /// Sets the opener and closer for template statements void set_statement(const std::string& open, const std::string& close) { - m_impl->lexer_config.statement_open = open; - m_impl->lexer_config.statement_close = close; - m_impl->lexer_config.update_open_chars(); + lexer_config.statement_open = open; + lexer_config.statement_open_no_lstrip = open + "+"; + lexer_config.statement_open_force_lstrip = open + "-"; + lexer_config.statement_close = close; + lexer_config.statement_close_force_rstrip = "-" + close; + lexer_config.update_open_chars(); } /// Sets the opener for template line statements void set_line_statement(const std::string& open) { - m_impl->lexer_config.line_statement = open; - m_impl->lexer_config.update_open_chars(); + lexer_config.line_statement = open; + lexer_config.update_open_chars(); } /// Sets the opener and closer for template expressions void set_expression(const std::string& open, const std::string& close) { - m_impl->lexer_config.expression_open = open; - m_impl->lexer_config.expression_close = close; - m_impl->lexer_config.update_open_chars(); + lexer_config.expression_open = open; + lexer_config.expression_open_force_lstrip = open + "-"; + lexer_config.expression_close = close; + lexer_config.expression_close_force_rstrip = "-" + close; + lexer_config.update_open_chars(); } /// Sets the opener and closer for template comments void set_comment(const std::string& open, const std::string& close) { - m_impl->lexer_config.comment_open = open; - m_impl->lexer_config.comment_close = close; - m_impl->lexer_config.update_open_chars(); + lexer_config.comment_open = open; + lexer_config.comment_open_force_lstrip = open + "-"; + lexer_config.comment_close = close; + lexer_config.comment_close_force_rstrip = "-" + close; + lexer_config.update_open_chars(); } /// Sets whether to remove the first newline after a block void set_trim_blocks(bool trim_blocks) { - m_impl->lexer_config.trim_blocks = trim_blocks; + lexer_config.trim_blocks = trim_blocks; } /// Sets whether to strip the spaces and tabs from the start of a line to a block void set_lstrip_blocks(bool lstrip_blocks) { - m_impl->lexer_config.lstrip_blocks = lstrip_blocks; + lexer_config.lstrip_blocks = lstrip_blocks; } /// Sets the element notation syntax - void set_element_notation(ElementNotation notation) { - m_impl->parser_config.notation = notation; + void set_search_included_templates_in_files(bool search_in_files) { + parser_config.search_included_templates_in_files = search_in_files; } + /// Sets whether a missing include will throw an error + void set_throw_at_missing_includes(bool will_throw) { + render_config.throw_at_missing_includes = will_throw; + } - Template parse(nonstd::string_view input) { - Parser parser(m_impl->parser_config, m_impl->lexer_config, m_impl->included_templates); + Template parse(std::string_view input) { + Parser parser(parser_config, lexer_config, template_storage, function_storage); return parser.parse(input); } Template parse_template(const std::string& filename) { - Parser parser(m_impl->parser_config, m_impl->lexer_config, m_impl->included_templates); - return parser.parse_template(m_impl->input_path + static_cast(filename)); - } + Parser parser(parser_config, lexer_config, template_storage, function_storage); + auto result = Template(parser.load_file(input_path + static_cast(filename))); + parser.parse_into_template(result, input_path + static_cast(filename)); + return result; + } - std::string render(nonstd::string_view input, const json& data) { + Template parse_file(const std::string& filename) { + return parse_template(filename); + } + + std::string render(std::string_view input, const json& data) { return render(parse(input), data); } @@ -3437,55 +2821,85 @@ class Environment { } std::string render_file(const std::string& filename, const json& data) { - return render(parse_template(filename), data); - } + return render(parse_template(filename), data); + } std::string render_file_with_json_file(const std::string& filename, const std::string& filename_data) { - const json data = load_json(filename_data); - return render_file(filename, data); - } + const json data = load_json(filename_data); + return render_file(filename, data); + } void write(const std::string& filename, const json& data, const std::string& filename_out) { - std::ofstream file(m_impl->output_path + filename_out); - file << render_file(filename, data); - file.close(); - } + std::ofstream file(output_path + filename_out); + file << render_file(filename, data); + file.close(); + } void write(const Template& temp, const json& data, const std::string& filename_out) { - std::ofstream file(m_impl->output_path + filename_out); - file << render(temp, data); - file.close(); - } + std::ofstream file(output_path + filename_out); + file << render(temp, data); + file.close(); + } - void write_with_json_file(const std::string& filename, const std::string& filename_data, const std::string& filename_out) { - const json data = load_json(filename_data); - write(filename, data, filename_out); - } + void write_with_json_file(const std::string& filename, const std::string& filename_data, const std::string& filename_out) { + const json data = load_json(filename_data); + write(filename, data, filename_out); + } - void write_with_json_file(const Template& temp, const std::string& filename_data, const std::string& filename_out) { - const json data = load_json(filename_data); - write(temp, data, filename_out); - } + void write_with_json_file(const Template& temp, const std::string& filename_data, const std::string& filename_out) { + const json data = load_json(filename_data); + write(temp, data, filename_out); + } std::ostream& render_to(std::ostream& os, const Template& tmpl, const json& data) { - Renderer(m_impl->included_templates, m_impl->callbacks).render_to(os, tmpl, data); + Renderer(render_config, template_storage, function_storage).render_to(os, tmpl, data); return os; } std::string load_file(const std::string& filename) { - Parser parser(m_impl->parser_config, m_impl->lexer_config, m_impl->included_templates); - return parser.load_file(m_impl->input_path + filename); - } + Parser parser(parser_config, lexer_config, template_storage, function_storage); + return parser.load_file(input_path + filename); + } json load_json(const std::string& filename) { - std::ifstream file = open_file_or_throw(m_impl->input_path + filename); - json j; - file >> j; - return j; + std::ifstream file; + file.open(input_path + filename); + if (file.fail()) { + INJA_THROW(FileError("failed accessing file at '" + input_path + filename + "'")); } - void add_callback(const std::string& name, unsigned int numArgs, const CallbackFunction& callback) { - m_impl->callbacks.add_callback(name, numArgs, callback); + return json::parse(std::istreambuf_iterator(file), std::istreambuf_iterator()); + } + + /*! + @brief Adds a variadic callback + */ + void add_callback(const std::string& name, const CallbackFunction& callback) { + add_callback(name, -1, callback); + } + + /*! + @brief Adds a variadic void callback + */ + void add_void_callback(const std::string& name, const VoidCallbackFunction& callback) { + add_void_callback(name, -1, callback); + } + + /*! + @brief Adds a callback with given number or arguments + */ + void add_callback(const std::string& name, int num_args, const CallbackFunction& callback) { + function_storage.add_callback(name, num_args, callback); + } + + /*! + @brief Adds a void callback with given number or arguments + */ + void add_void_callback(const std::string& name, int num_args, const VoidCallbackFunction& callback) { + function_storage.add_callback(name, num_args, [callback](Arguments& args) { + callback(args); + return json(); + }); } /** Includes a template with a given name into the environment. @@ -3493,37 +2907,43 @@ class Environment { * include "" syntax. */ void include_template(const std::string& name, const Template& tmpl) { - m_impl->included_templates[name] = tmpl; + template_storage[name] = tmpl; + } + + /*! + @brief Sets a function that is called when an included file is not found + */ + void set_include_callback(const std::function& callback) { + parser_config.include_callback = callback; } }; /*! @brief render with default settings to a string */ -inline std::string render(nonstd::string_view input, const json& data) { +inline std::string render(std::string_view input, const json& data) { return Environment().render(input, data); } /*! @brief render with default settings to the given output stream */ -inline void render_to(std::ostream& os, nonstd::string_view input, const json& data) { +inline void render_to(std::ostream& os, std::string_view input, const json& data) { Environment env; env.render_to(os, env.parse(input), data); } -} +} // namespace inja -#endif // PANTOR_INJA_ENVIRONMENT_HPP +#endif // INCLUDE_INJA_ENVIRONMENT_HPP_ -// #include "string_view.hpp" - -// #include "template.hpp" +// #include "exceptions.hpp" // #include "parser.hpp" // #include "renderer.hpp" +// #include "template.hpp" -#endif // PANTOR_INJA_HPP +#endif // INCLUDE_INJA_INJA_HPP_ diff --git a/tools/jsonproc/jsonproc.cpp b/tools/jsonproc/jsonproc.cpp index 2ba5fd082..23056a5ff 100755 --- a/tools/jsonproc/jsonproc.cpp +++ b/tools/jsonproc/jsonproc.cpp @@ -7,6 +7,9 @@ #include using std::string; using std::to_string; +#include +using std::replace_if; + #include using namespace inja; using json = nlohmann::json; @@ -33,6 +36,7 @@ int main(int argc, char *argv[]) string outputFilepath = argv[3]; Environment env; + env.set_trim_blocks(true); // Add custom command callbacks. env.add_callback("doNotModifyHeader", 0, [jsonfilepath, templateFilepath](Arguments& args) { @@ -96,6 +100,21 @@ int main(int argc, char *argv[]) return args.at(0)->empty(); }); + env.add_callback("isEmptyString", 1, [](Arguments& args) { + return args.at(0)->get().empty(); + }); + + env.add_callback("cleanString", 1, [](Arguments& args) { + string badChars = ".'{} \n\t-\u00e9"; + string str = args.at(0)->get(); + for (unsigned int i = 0; i < str.length(); i++) { + if (badChars.find(str[i]) != std::string::npos) { + str[i] = '_'; + } + } + return str; + }); + try { env.write_with_json_file(templateFilepath, jsonfilepath, outputFilepath); diff --git a/tools/jsonproc/nlohmann/json.hpp b/tools/jsonproc/nlohmann/json.hpp index 5003a4fa2..33a91164c 100755 --- a/tools/jsonproc/nlohmann/json.hpp +++ b/tools/jsonproc/nlohmann/json.hpp @@ -1,12 +1,12 @@ /* __ _____ _____ _____ __| | __| | | | JSON for Modern C++ -| | |__ | | | | | | version 3.6.1 +| | |__ | | | | | | version 3.10.5 |_____|_____|_____|_|___| https://github.com/nlohmann/json Licensed under the MIT License . SPDX-License-Identifier: MIT -Copyright (c) 2013-2019 Niels Lohmann . +Copyright (c) 2013-2022 Niels Lohmann . Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -27,20 +27,29 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ +/****************************************************************************\ + * Note on documentation: The source files contain links to the online * + * documentation of the public API at https://json.nlohmann.me. This URL * + * contains the most recent documentation and should also be applicable to * + * previous versions; documentation for deprecated functions is not * + * removed, but marked deprecated. See "Generate documentation" section in * + * file doc/README.md. * +\****************************************************************************/ + #ifndef INCLUDE_NLOHMANN_JSON_HPP_ #define INCLUDE_NLOHMANN_JSON_HPP_ #define NLOHMANN_JSON_VERSION_MAJOR 3 -#define NLOHMANN_JSON_VERSION_MINOR 6 -#define NLOHMANN_JSON_VERSION_PATCH 1 +#define NLOHMANN_JSON_VERSION_MINOR 10 +#define NLOHMANN_JSON_VERSION_PATCH 5 #include // all_of, find, for_each -#include // assert -#include // and, not, or #include // nullptr_t, ptrdiff_t, size_t #include // hash, less #include // initializer_list -#include // istream, ostream +#ifndef JSON_NO_IO + #include // istream, ostream +#endif // JSON_NO_IO #include // random_access_iterator_tag #include // unique_ptr #include // accumulate @@ -51,6 +60,7 @@ SOFTWARE. // #include +#include #include // #include @@ -58,7 +68,6 @@ SOFTWARE. #include // transform #include // array -#include // and, not #include // forward_list #include // inserter, front_inserter, end #include // map @@ -75,383 +84,2222 @@ SOFTWARE. #include // exception #include // runtime_error #include // to_string +#include // vector -// #include +// #include +#include // array #include // size_t +#include // uint8_t +#include // string namespace nlohmann { namespace detail { -/// struct to capture the start position of the current token -struct position_t -{ - /// the total number of characters read - std::size_t chars_read_total = 0; - /// the number of characters read in the current line - std::size_t chars_read_current_line = 0; - /// the number of lines read - std::size_t lines_read = 0; - - /// conversion to size_t to preserve SAX interface - constexpr operator size_t() const - { - return chars_read_total; - } -}; - -} // namespace detail -} // namespace nlohmann - - -namespace nlohmann -{ -namespace detail -{ -//////////////// -// exceptions // -//////////////// +/////////////////////////// +// JSON type enumeration // +/////////////////////////// /*! -@brief general exception of the @ref basic_json class +@brief the JSON type enumeration -This class is an extension of `std::exception` objects with a member @a id for -exception ids. It is used as the base class for all exceptions thrown by the -@ref basic_json class. This class can hence be used as "wildcard" to catch -exceptions. +This enumeration collects the different JSON types. It is internally used to +distinguish the stored values, and the functions @ref basic_json::is_null(), +@ref basic_json::is_object(), @ref basic_json::is_array(), +@ref basic_json::is_string(), @ref basic_json::is_boolean(), +@ref basic_json::is_number() (with @ref basic_json::is_number_integer(), +@ref basic_json::is_number_unsigned(), and @ref basic_json::is_number_float()), +@ref basic_json::is_discarded(), @ref basic_json::is_primitive(), and +@ref basic_json::is_structured() rely on it. -Subclasses: -- @ref parse_error for exceptions indicating a parse error -- @ref invalid_iterator for exceptions indicating errors with iterators -- @ref type_error for exceptions indicating executing a member function with - a wrong type -- @ref out_of_range for exceptions indicating access out of the defined range -- @ref other_error for exceptions indicating other library errors +@note There are three enumeration entries (number_integer, number_unsigned, and +number_float), because the library distinguishes these three types for numbers: +@ref basic_json::number_unsigned_t is used for unsigned integers, +@ref basic_json::number_integer_t is used for signed integers, and +@ref basic_json::number_float_t is used for floating-point numbers or to +approximate integers which do not fit in the limits of their respective type. -@internal -@note To have nothrow-copy-constructible exceptions, we internally use - `std::runtime_error` which can cope with arbitrary-length error messages. - Intermediate strings are built with static functions and then passed to - the actual constructor. -@endinternal +@sa see @ref basic_json::basic_json(const value_t value_type) -- create a JSON +value with the default value for a given type -@liveexample{The following code shows how arbitrary library exceptions can be -caught.,exception} - -@since version 3.0.0 +@since version 1.0.0 */ -class exception : public std::exception +enum class value_t : std::uint8_t { - public: - /// returns the explanatory string - const char* what() const noexcept override - { - return m.what(); - } - - /// the id of the exception - const int id; - - protected: - exception(int id_, const char* what_arg) : id(id_), m(what_arg) {} - - static std::string name(const std::string& ename, int id_) - { - return "[json.exception." + ename + "." + std::to_string(id_) + "] "; - } - - private: - /// an exception object as storage for error messages - std::runtime_error m; + null, ///< null value + object, ///< object (unordered set of name/value pairs) + array, ///< array (ordered collection of values) + string, ///< string value + boolean, ///< boolean value + number_integer, ///< number value (signed integer) + number_unsigned, ///< number value (unsigned integer) + number_float, ///< number value (floating-point) + binary, ///< binary array (ordered collection of bytes) + discarded ///< discarded by the parser callback function }; /*! -@brief exception indicating a parse error +@brief comparison operator for JSON types -This exception is thrown by the library when a parse error occurs. Parse errors -can occur during the deserialization of JSON text, CBOR, MessagePack, as well -as when using JSON Patch. +Returns an ordering that is similar to Python: +- order: null < boolean < number < object < array < string < binary +- furthermore, each type is not smaller than itself +- discarded values are not comparable +- binary is represented as a b"" string in python and directly comparable to a + string; however, making a binary array directly comparable with a string would + be surprising behavior in a JSON file. -Member @a byte holds the byte index of the last read character in the input -file. - -Exceptions have ids 1xx. - -name / id | example message | description ------------------------------- | --------------- | ------------------------- -json.exception.parse_error.101 | parse error at 2: unexpected end of input; expected string literal | This error indicates a syntax error while deserializing a JSON text. The error message describes that an unexpected token (character) was encountered, and the member @a byte indicates the error position. -json.exception.parse_error.102 | parse error at 14: missing or wrong low surrogate | JSON uses the `\uxxxx` format to describe Unicode characters. Code points above above 0xFFFF are split into two `\uxxxx` entries ("surrogate pairs"). This error indicates that the surrogate pair is incomplete or contains an invalid code point. -json.exception.parse_error.103 | parse error: code points above 0x10FFFF are invalid | Unicode supports code points up to 0x10FFFF. Code points above 0x10FFFF are invalid. -json.exception.parse_error.104 | parse error: JSON patch must be an array of objects | [RFC 6902](https://tools.ietf.org/html/rfc6902) requires a JSON Patch document to be a JSON document that represents an array of objects. -json.exception.parse_error.105 | parse error: operation must have string member 'op' | An operation of a JSON Patch document must contain exactly one "op" member, whose value indicates the operation to perform. Its value must be one of "add", "remove", "replace", "move", "copy", or "test"; other values are errors. -json.exception.parse_error.106 | parse error: array index '01' must not begin with '0' | An array index in a JSON Pointer ([RFC 6901](https://tools.ietf.org/html/rfc6901)) may be `0` or any number without a leading `0`. -json.exception.parse_error.107 | parse error: JSON pointer must be empty or begin with '/' - was: 'foo' | A JSON Pointer must be a Unicode string containing a sequence of zero or more reference tokens, each prefixed by a `/` character. -json.exception.parse_error.108 | parse error: escape character '~' must be followed with '0' or '1' | In a JSON Pointer, only `~0` and `~1` are valid escape sequences. -json.exception.parse_error.109 | parse error: array index 'one' is not a number | A JSON Pointer array index must be a number. -json.exception.parse_error.110 | parse error at 1: cannot read 2 bytes from vector | When parsing CBOR or MessagePack, the byte vector ends before the complete value has been read. -json.exception.parse_error.112 | parse error at 1: error reading CBOR; last byte: 0xF8 | Not all types of CBOR or MessagePack are supported. This exception occurs if an unsupported byte was read. -json.exception.parse_error.113 | parse error at 2: expected a CBOR string; last byte: 0x98 | While parsing a map key, a value that is not a string has been read. -json.exception.parse_error.114 | parse error: Unsupported BSON record type 0x0F | The parsing of the corresponding BSON record type is not implemented (yet). - -@note For an input with n bytes, 1 is the index of the first character and n+1 - is the index of the terminating null byte or the end of file. This also - holds true when reading a byte vector (CBOR or MessagePack). - -@liveexample{The following code shows how a `parse_error` exception can be -caught.,parse_error} - -@sa - @ref exception for the base class of the library exceptions -@sa - @ref invalid_iterator for exceptions indicating errors with iterators -@sa - @ref type_error for exceptions indicating executing a member function with - a wrong type -@sa - @ref out_of_range for exceptions indicating access out of the defined range -@sa - @ref other_error for exceptions indicating other library errors - -@since version 3.0.0 +@since version 1.0.0 */ -class parse_error : public exception +inline bool operator<(const value_t lhs, const value_t rhs) noexcept { - public: - /*! - @brief create a parse error exception - @param[in] id_ the id of the exception - @param[in] pos the position where the error occurred (or with - chars_read_total=0 if the position cannot be - determined) - @param[in] what_arg the explanatory string - @return parse_error object - */ - static parse_error create(int id_, const position_t& pos, const std::string& what_arg) - { - std::string w = exception::name("parse_error", id_) + "parse error" + - position_string(pos) + ": " + what_arg; - return parse_error(id_, pos.chars_read_total, w.c_str()); - } + static constexpr std::array order = {{ + 0 /* null */, 3 /* object */, 4 /* array */, 5 /* string */, + 1 /* boolean */, 2 /* integer */, 2 /* unsigned */, 2 /* float */, + 6 /* binary */ + } + }; - static parse_error create(int id_, std::size_t byte_, const std::string& what_arg) - { - std::string w = exception::name("parse_error", id_) + "parse error" + - (byte_ != 0 ? (" at byte " + std::to_string(byte_)) : "") + - ": " + what_arg; - return parse_error(id_, byte_, w.c_str()); - } - - /*! - @brief byte index of the parse error - - The byte index of the last read character in the input file. - - @note For an input with n bytes, 1 is the index of the first character and - n+1 is the index of the terminating null byte or the end of file. - This also holds true when reading a byte vector (CBOR or MessagePack). - */ - const std::size_t byte; - - private: - parse_error(int id_, std::size_t byte_, const char* what_arg) - : exception(id_, what_arg), byte(byte_) {} - - static std::string position_string(const position_t& pos) - { - return " at line " + std::to_string(pos.lines_read + 1) + - ", column " + std::to_string(pos.chars_read_current_line); - } -}; - -/*! -@brief exception indicating errors with iterators - -This exception is thrown if iterators passed to a library function do not match -the expected semantics. - -Exceptions have ids 2xx. - -name / id | example message | description ------------------------------------ | --------------- | ------------------------- -json.exception.invalid_iterator.201 | iterators are not compatible | The iterators passed to constructor @ref basic_json(InputIT first, InputIT last) are not compatible, meaning they do not belong to the same container. Therefore, the range (@a first, @a last) is invalid. -json.exception.invalid_iterator.202 | iterator does not fit current value | In an erase or insert function, the passed iterator @a pos does not belong to the JSON value for which the function was called. It hence does not define a valid position for the deletion/insertion. -json.exception.invalid_iterator.203 | iterators do not fit current value | Either iterator passed to function @ref erase(IteratorType first, IteratorType last) does not belong to the JSON value from which values shall be erased. It hence does not define a valid range to delete values from. -json.exception.invalid_iterator.204 | iterators out of range | When an iterator range for a primitive type (number, boolean, or string) is passed to a constructor or an erase function, this range has to be exactly (@ref begin(), @ref end()), because this is the only way the single stored value is expressed. All other ranges are invalid. -json.exception.invalid_iterator.205 | iterator out of range | When an iterator for a primitive type (number, boolean, or string) is passed to an erase function, the iterator has to be the @ref begin() iterator, because it is the only way to address the stored value. All other iterators are invalid. -json.exception.invalid_iterator.206 | cannot construct with iterators from null | The iterators passed to constructor @ref basic_json(InputIT first, InputIT last) belong to a JSON null value and hence to not define a valid range. -json.exception.invalid_iterator.207 | cannot use key() for non-object iterators | The key() member function can only be used on iterators belonging to a JSON object, because other types do not have a concept of a key. -json.exception.invalid_iterator.208 | cannot use operator[] for object iterators | The operator[] to specify a concrete offset cannot be used on iterators belonging to a JSON object, because JSON objects are unordered. -json.exception.invalid_iterator.209 | cannot use offsets with object iterators | The offset operators (+, -, +=, -=) cannot be used on iterators belonging to a JSON object, because JSON objects are unordered. -json.exception.invalid_iterator.210 | iterators do not fit | The iterator range passed to the insert function are not compatible, meaning they do not belong to the same container. Therefore, the range (@a first, @a last) is invalid. -json.exception.invalid_iterator.211 | passed iterators may not belong to container | The iterator range passed to the insert function must not be a subrange of the container to insert to. -json.exception.invalid_iterator.212 | cannot compare iterators of different containers | When two iterators are compared, they must belong to the same container. -json.exception.invalid_iterator.213 | cannot compare order of object iterators | The order of object iterators cannot be compared, because JSON objects are unordered. -json.exception.invalid_iterator.214 | cannot get value | Cannot get value for iterator: Either the iterator belongs to a null value or it is an iterator to a primitive type (number, boolean, or string), but the iterator is different to @ref begin(). - -@liveexample{The following code shows how an `invalid_iterator` exception can be -caught.,invalid_iterator} - -@sa - @ref exception for the base class of the library exceptions -@sa - @ref parse_error for exceptions indicating a parse error -@sa - @ref type_error for exceptions indicating executing a member function with - a wrong type -@sa - @ref out_of_range for exceptions indicating access out of the defined range -@sa - @ref other_error for exceptions indicating other library errors - -@since version 3.0.0 -*/ -class invalid_iterator : public exception -{ - public: - static invalid_iterator create(int id_, const std::string& what_arg) - { - std::string w = exception::name("invalid_iterator", id_) + what_arg; - return invalid_iterator(id_, w.c_str()); - } - - private: - invalid_iterator(int id_, const char* what_arg) - : exception(id_, what_arg) {} -}; - -/*! -@brief exception indicating executing a member function with a wrong type - -This exception is thrown in case of a type error; that is, a library function is -executed on a JSON value whose type does not match the expected semantics. - -Exceptions have ids 3xx. - -name / id | example message | description ------------------------------ | --------------- | ------------------------- -json.exception.type_error.301 | cannot create object from initializer list | To create an object from an initializer list, the initializer list must consist only of a list of pairs whose first element is a string. When this constraint is violated, an array is created instead. -json.exception.type_error.302 | type must be object, but is array | During implicit or explicit value conversion, the JSON type must be compatible to the target type. For instance, a JSON string can only be converted into string types, but not into numbers or boolean types. -json.exception.type_error.303 | incompatible ReferenceType for get_ref, actual type is object | To retrieve a reference to a value stored in a @ref basic_json object with @ref get_ref, the type of the reference must match the value type. For instance, for a JSON array, the @a ReferenceType must be @ref array_t &. -json.exception.type_error.304 | cannot use at() with string | The @ref at() member functions can only be executed for certain JSON types. -json.exception.type_error.305 | cannot use operator[] with string | The @ref operator[] member functions can only be executed for certain JSON types. -json.exception.type_error.306 | cannot use value() with string | The @ref value() member functions can only be executed for certain JSON types. -json.exception.type_error.307 | cannot use erase() with string | The @ref erase() member functions can only be executed for certain JSON types. -json.exception.type_error.308 | cannot use push_back() with string | The @ref push_back() and @ref operator+= member functions can only be executed for certain JSON types. -json.exception.type_error.309 | cannot use insert() with | The @ref insert() member functions can only be executed for certain JSON types. -json.exception.type_error.310 | cannot use swap() with number | The @ref swap() member functions can only be executed for certain JSON types. -json.exception.type_error.311 | cannot use emplace_back() with string | The @ref emplace_back() member function can only be executed for certain JSON types. -json.exception.type_error.312 | cannot use update() with string | The @ref update() member functions can only be executed for certain JSON types. -json.exception.type_error.313 | invalid value to unflatten | The @ref unflatten function converts an object whose keys are JSON Pointers back into an arbitrary nested JSON value. The JSON Pointers must not overlap, because then the resulting value would not be well defined. -json.exception.type_error.314 | only objects can be unflattened | The @ref unflatten function only works for an object whose keys are JSON Pointers. -json.exception.type_error.315 | values in object must be primitive | The @ref unflatten function only works for an object whose keys are JSON Pointers and whose values are primitive. -json.exception.type_error.316 | invalid UTF-8 byte at index 10: 0x7E | The @ref dump function only works with UTF-8 encoded strings; that is, if you assign a `std::string` to a JSON value, make sure it is UTF-8 encoded. | -json.exception.type_error.317 | JSON value cannot be serialized to requested format | The dynamic type of the object cannot be represented in the requested serialization format (e.g. a raw `true` or `null` JSON object cannot be serialized to BSON) | - -@liveexample{The following code shows how a `type_error` exception can be -caught.,type_error} - -@sa - @ref exception for the base class of the library exceptions -@sa - @ref parse_error for exceptions indicating a parse error -@sa - @ref invalid_iterator for exceptions indicating errors with iterators -@sa - @ref out_of_range for exceptions indicating access out of the defined range -@sa - @ref other_error for exceptions indicating other library errors - -@since version 3.0.0 -*/ -class type_error : public exception -{ - public: - static type_error create(int id_, const std::string& what_arg) - { - std::string w = exception::name("type_error", id_) + what_arg; - return type_error(id_, w.c_str()); - } - - private: - type_error(int id_, const char* what_arg) : exception(id_, what_arg) {} -}; - -/*! -@brief exception indicating access out of the defined range - -This exception is thrown in case a library function is called on an input -parameter that exceeds the expected range, for instance in case of array -indices or nonexisting object keys. - -Exceptions have ids 4xx. - -name / id | example message | description -------------------------------- | --------------- | ------------------------- -json.exception.out_of_range.401 | array index 3 is out of range | The provided array index @a i is larger than @a size-1. -json.exception.out_of_range.402 | array index '-' (3) is out of range | The special array index `-` in a JSON Pointer never describes a valid element of the array, but the index past the end. That is, it can only be used to add elements at this position, but not to read it. -json.exception.out_of_range.403 | key 'foo' not found | The provided key was not found in the JSON object. -json.exception.out_of_range.404 | unresolved reference token 'foo' | A reference token in a JSON Pointer could not be resolved. -json.exception.out_of_range.405 | JSON pointer has no parent | The JSON Patch operations 'remove' and 'add' can not be applied to the root element of the JSON value. -json.exception.out_of_range.406 | number overflow parsing '10E1000' | A parsed number could not be stored as without changing it to NaN or INF. -json.exception.out_of_range.407 | number overflow serializing '9223372036854775808' | UBJSON and BSON only support integer numbers up to 9223372036854775807. | -json.exception.out_of_range.408 | excessive array size: 8658170730974374167 | The size (following `#`) of an UBJSON array or object exceeds the maximal capacity. | -json.exception.out_of_range.409 | BSON key cannot contain code point U+0000 (at byte 2) | Key identifiers to be serialized to BSON cannot contain code point U+0000, since the key is stored as zero-terminated c-string | - -@liveexample{The following code shows how an `out_of_range` exception can be -caught.,out_of_range} - -@sa - @ref exception for the base class of the library exceptions -@sa - @ref parse_error for exceptions indicating a parse error -@sa - @ref invalid_iterator for exceptions indicating errors with iterators -@sa - @ref type_error for exceptions indicating executing a member function with - a wrong type -@sa - @ref other_error for exceptions indicating other library errors - -@since version 3.0.0 -*/ -class out_of_range : public exception -{ - public: - static out_of_range create(int id_, const std::string& what_arg) - { - std::string w = exception::name("out_of_range", id_) + what_arg; - return out_of_range(id_, w.c_str()); - } - - private: - out_of_range(int id_, const char* what_arg) : exception(id_, what_arg) {} -}; - -/*! -@brief exception indicating other library errors - -This exception is thrown in case of errors that cannot be classified with the -other exception types. - -Exceptions have ids 5xx. - -name / id | example message | description ------------------------------- | --------------- | ------------------------- -json.exception.other_error.501 | unsuccessful: {"op":"test","path":"/baz", "value":"bar"} | A JSON Patch operation 'test' failed. The unsuccessful operation is also printed. - -@sa - @ref exception for the base class of the library exceptions -@sa - @ref parse_error for exceptions indicating a parse error -@sa - @ref invalid_iterator for exceptions indicating errors with iterators -@sa - @ref type_error for exceptions indicating executing a member function with - a wrong type -@sa - @ref out_of_range for exceptions indicating access out of the defined range - -@liveexample{The following code shows how an `other_error` exception can be -caught.,other_error} - -@since version 3.0.0 -*/ -class other_error : public exception -{ - public: - static other_error create(int id_, const std::string& what_arg) - { - std::string w = exception::name("other_error", id_) + what_arg; - return other_error(id_, w.c_str()); - } - - private: - other_error(int id_, const char* what_arg) : exception(id_, what_arg) {} -}; + const auto l_index = static_cast(lhs); + const auto r_index = static_cast(rhs); + return l_index < order.size() && r_index < order.size() && order[l_index] < order[r_index]; +} } // namespace detail } // namespace nlohmann +// #include + + +#include // #include -#include // pair +#include // declval, pair +// #include + + +/* Hedley - https://nemequ.github.io/hedley + * Created by Evan Nemerson + * + * To the extent possible under law, the author(s) have dedicated all + * copyright and related and neighboring rights to this software to + * the public domain worldwide. This software is distributed without + * any warranty. + * + * For details, see . + * SPDX-License-Identifier: CC0-1.0 + */ + +#if !defined(JSON_HEDLEY_VERSION) || (JSON_HEDLEY_VERSION < 15) +#if defined(JSON_HEDLEY_VERSION) + #undef JSON_HEDLEY_VERSION +#endif +#define JSON_HEDLEY_VERSION 15 + +#if defined(JSON_HEDLEY_STRINGIFY_EX) + #undef JSON_HEDLEY_STRINGIFY_EX +#endif +#define JSON_HEDLEY_STRINGIFY_EX(x) #x + +#if defined(JSON_HEDLEY_STRINGIFY) + #undef JSON_HEDLEY_STRINGIFY +#endif +#define JSON_HEDLEY_STRINGIFY(x) JSON_HEDLEY_STRINGIFY_EX(x) + +#if defined(JSON_HEDLEY_CONCAT_EX) + #undef JSON_HEDLEY_CONCAT_EX +#endif +#define JSON_HEDLEY_CONCAT_EX(a,b) a##b + +#if defined(JSON_HEDLEY_CONCAT) + #undef JSON_HEDLEY_CONCAT +#endif +#define JSON_HEDLEY_CONCAT(a,b) JSON_HEDLEY_CONCAT_EX(a,b) + +#if defined(JSON_HEDLEY_CONCAT3_EX) + #undef JSON_HEDLEY_CONCAT3_EX +#endif +#define JSON_HEDLEY_CONCAT3_EX(a,b,c) a##b##c + +#if defined(JSON_HEDLEY_CONCAT3) + #undef JSON_HEDLEY_CONCAT3 +#endif +#define JSON_HEDLEY_CONCAT3(a,b,c) JSON_HEDLEY_CONCAT3_EX(a,b,c) + +#if defined(JSON_HEDLEY_VERSION_ENCODE) + #undef JSON_HEDLEY_VERSION_ENCODE +#endif +#define JSON_HEDLEY_VERSION_ENCODE(major,minor,revision) (((major) * 1000000) + ((minor) * 1000) + (revision)) + +#if defined(JSON_HEDLEY_VERSION_DECODE_MAJOR) + #undef JSON_HEDLEY_VERSION_DECODE_MAJOR +#endif +#define JSON_HEDLEY_VERSION_DECODE_MAJOR(version) ((version) / 1000000) + +#if defined(JSON_HEDLEY_VERSION_DECODE_MINOR) + #undef JSON_HEDLEY_VERSION_DECODE_MINOR +#endif +#define JSON_HEDLEY_VERSION_DECODE_MINOR(version) (((version) % 1000000) / 1000) + +#if defined(JSON_HEDLEY_VERSION_DECODE_REVISION) + #undef JSON_HEDLEY_VERSION_DECODE_REVISION +#endif +#define JSON_HEDLEY_VERSION_DECODE_REVISION(version) ((version) % 1000) + +#if defined(JSON_HEDLEY_GNUC_VERSION) + #undef JSON_HEDLEY_GNUC_VERSION +#endif +#if defined(__GNUC__) && defined(__GNUC_PATCHLEVEL__) + #define JSON_HEDLEY_GNUC_VERSION JSON_HEDLEY_VERSION_ENCODE(__GNUC__, __GNUC_MINOR__, __GNUC_PATCHLEVEL__) +#elif defined(__GNUC__) + #define JSON_HEDLEY_GNUC_VERSION JSON_HEDLEY_VERSION_ENCODE(__GNUC__, __GNUC_MINOR__, 0) +#endif + +#if defined(JSON_HEDLEY_GNUC_VERSION_CHECK) + #undef JSON_HEDLEY_GNUC_VERSION_CHECK +#endif +#if defined(JSON_HEDLEY_GNUC_VERSION) + #define JSON_HEDLEY_GNUC_VERSION_CHECK(major,minor,patch) (JSON_HEDLEY_GNUC_VERSION >= JSON_HEDLEY_VERSION_ENCODE(major, minor, patch)) +#else + #define JSON_HEDLEY_GNUC_VERSION_CHECK(major,minor,patch) (0) +#endif + +#if defined(JSON_HEDLEY_MSVC_VERSION) + #undef JSON_HEDLEY_MSVC_VERSION +#endif +#if defined(_MSC_FULL_VER) && (_MSC_FULL_VER >= 140000000) && !defined(__ICL) + #define JSON_HEDLEY_MSVC_VERSION JSON_HEDLEY_VERSION_ENCODE(_MSC_FULL_VER / 10000000, (_MSC_FULL_VER % 10000000) / 100000, (_MSC_FULL_VER % 100000) / 100) +#elif defined(_MSC_FULL_VER) && !defined(__ICL) + #define JSON_HEDLEY_MSVC_VERSION JSON_HEDLEY_VERSION_ENCODE(_MSC_FULL_VER / 1000000, (_MSC_FULL_VER % 1000000) / 10000, (_MSC_FULL_VER % 10000) / 10) +#elif defined(_MSC_VER) && !defined(__ICL) + #define JSON_HEDLEY_MSVC_VERSION JSON_HEDLEY_VERSION_ENCODE(_MSC_VER / 100, _MSC_VER % 100, 0) +#endif + +#if defined(JSON_HEDLEY_MSVC_VERSION_CHECK) + #undef JSON_HEDLEY_MSVC_VERSION_CHECK +#endif +#if !defined(JSON_HEDLEY_MSVC_VERSION) + #define JSON_HEDLEY_MSVC_VERSION_CHECK(major,minor,patch) (0) +#elif defined(_MSC_VER) && (_MSC_VER >= 1400) + #define JSON_HEDLEY_MSVC_VERSION_CHECK(major,minor,patch) (_MSC_FULL_VER >= ((major * 10000000) + (minor * 100000) + (patch))) +#elif defined(_MSC_VER) && (_MSC_VER >= 1200) + #define JSON_HEDLEY_MSVC_VERSION_CHECK(major,minor,patch) (_MSC_FULL_VER >= ((major * 1000000) + (minor * 10000) + (patch))) +#else + #define JSON_HEDLEY_MSVC_VERSION_CHECK(major,minor,patch) (_MSC_VER >= ((major * 100) + (minor))) +#endif + +#if defined(JSON_HEDLEY_INTEL_VERSION) + #undef JSON_HEDLEY_INTEL_VERSION +#endif +#if defined(__INTEL_COMPILER) && defined(__INTEL_COMPILER_UPDATE) && !defined(__ICL) + #define JSON_HEDLEY_INTEL_VERSION JSON_HEDLEY_VERSION_ENCODE(__INTEL_COMPILER / 100, __INTEL_COMPILER % 100, __INTEL_COMPILER_UPDATE) +#elif defined(__INTEL_COMPILER) && !defined(__ICL) + #define JSON_HEDLEY_INTEL_VERSION JSON_HEDLEY_VERSION_ENCODE(__INTEL_COMPILER / 100, __INTEL_COMPILER % 100, 0) +#endif + +#if defined(JSON_HEDLEY_INTEL_VERSION_CHECK) + #undef JSON_HEDLEY_INTEL_VERSION_CHECK +#endif +#if defined(JSON_HEDLEY_INTEL_VERSION) + #define JSON_HEDLEY_INTEL_VERSION_CHECK(major,minor,patch) (JSON_HEDLEY_INTEL_VERSION >= JSON_HEDLEY_VERSION_ENCODE(major, minor, patch)) +#else + #define JSON_HEDLEY_INTEL_VERSION_CHECK(major,minor,patch) (0) +#endif + +#if defined(JSON_HEDLEY_INTEL_CL_VERSION) + #undef JSON_HEDLEY_INTEL_CL_VERSION +#endif +#if defined(__INTEL_COMPILER) && defined(__INTEL_COMPILER_UPDATE) && defined(__ICL) + #define JSON_HEDLEY_INTEL_CL_VERSION JSON_HEDLEY_VERSION_ENCODE(__INTEL_COMPILER, __INTEL_COMPILER_UPDATE, 0) +#endif + +#if defined(JSON_HEDLEY_INTEL_CL_VERSION_CHECK) + #undef JSON_HEDLEY_INTEL_CL_VERSION_CHECK +#endif +#if defined(JSON_HEDLEY_INTEL_CL_VERSION) + #define JSON_HEDLEY_INTEL_CL_VERSION_CHECK(major,minor,patch) (JSON_HEDLEY_INTEL_CL_VERSION >= JSON_HEDLEY_VERSION_ENCODE(major, minor, patch)) +#else + #define JSON_HEDLEY_INTEL_CL_VERSION_CHECK(major,minor,patch) (0) +#endif + +#if defined(JSON_HEDLEY_PGI_VERSION) + #undef JSON_HEDLEY_PGI_VERSION +#endif +#if defined(__PGI) && defined(__PGIC__) && defined(__PGIC_MINOR__) && defined(__PGIC_PATCHLEVEL__) + #define JSON_HEDLEY_PGI_VERSION JSON_HEDLEY_VERSION_ENCODE(__PGIC__, __PGIC_MINOR__, __PGIC_PATCHLEVEL__) +#endif + +#if defined(JSON_HEDLEY_PGI_VERSION_CHECK) + #undef JSON_HEDLEY_PGI_VERSION_CHECK +#endif +#if defined(JSON_HEDLEY_PGI_VERSION) + #define JSON_HEDLEY_PGI_VERSION_CHECK(major,minor,patch) (JSON_HEDLEY_PGI_VERSION >= JSON_HEDLEY_VERSION_ENCODE(major, minor, patch)) +#else + #define JSON_HEDLEY_PGI_VERSION_CHECK(major,minor,patch) (0) +#endif + +#if defined(JSON_HEDLEY_SUNPRO_VERSION) + #undef JSON_HEDLEY_SUNPRO_VERSION +#endif +#if defined(__SUNPRO_C) && (__SUNPRO_C > 0x1000) + #define JSON_HEDLEY_SUNPRO_VERSION JSON_HEDLEY_VERSION_ENCODE((((__SUNPRO_C >> 16) & 0xf) * 10) + ((__SUNPRO_C >> 12) & 0xf), (((__SUNPRO_C >> 8) & 0xf) * 10) + ((__SUNPRO_C >> 4) & 0xf), (__SUNPRO_C & 0xf) * 10) +#elif defined(__SUNPRO_C) + #define JSON_HEDLEY_SUNPRO_VERSION JSON_HEDLEY_VERSION_ENCODE((__SUNPRO_C >> 8) & 0xf, (__SUNPRO_C >> 4) & 0xf, (__SUNPRO_C) & 0xf) +#elif defined(__SUNPRO_CC) && (__SUNPRO_CC > 0x1000) + #define JSON_HEDLEY_SUNPRO_VERSION JSON_HEDLEY_VERSION_ENCODE((((__SUNPRO_CC >> 16) & 0xf) * 10) + ((__SUNPRO_CC >> 12) & 0xf), (((__SUNPRO_CC >> 8) & 0xf) * 10) + ((__SUNPRO_CC >> 4) & 0xf), (__SUNPRO_CC & 0xf) * 10) +#elif defined(__SUNPRO_CC) + #define JSON_HEDLEY_SUNPRO_VERSION JSON_HEDLEY_VERSION_ENCODE((__SUNPRO_CC >> 8) & 0xf, (__SUNPRO_CC >> 4) & 0xf, (__SUNPRO_CC) & 0xf) +#endif + +#if defined(JSON_HEDLEY_SUNPRO_VERSION_CHECK) + #undef JSON_HEDLEY_SUNPRO_VERSION_CHECK +#endif +#if defined(JSON_HEDLEY_SUNPRO_VERSION) + #define JSON_HEDLEY_SUNPRO_VERSION_CHECK(major,minor,patch) (JSON_HEDLEY_SUNPRO_VERSION >= JSON_HEDLEY_VERSION_ENCODE(major, minor, patch)) +#else + #define JSON_HEDLEY_SUNPRO_VERSION_CHECK(major,minor,patch) (0) +#endif + +#if defined(JSON_HEDLEY_EMSCRIPTEN_VERSION) + #undef JSON_HEDLEY_EMSCRIPTEN_VERSION +#endif +#if defined(__EMSCRIPTEN__) + #define JSON_HEDLEY_EMSCRIPTEN_VERSION JSON_HEDLEY_VERSION_ENCODE(__EMSCRIPTEN_major__, __EMSCRIPTEN_minor__, __EMSCRIPTEN_tiny__) +#endif + +#if defined(JSON_HEDLEY_EMSCRIPTEN_VERSION_CHECK) + #undef JSON_HEDLEY_EMSCRIPTEN_VERSION_CHECK +#endif +#if defined(JSON_HEDLEY_EMSCRIPTEN_VERSION) + #define JSON_HEDLEY_EMSCRIPTEN_VERSION_CHECK(major,minor,patch) (JSON_HEDLEY_EMSCRIPTEN_VERSION >= JSON_HEDLEY_VERSION_ENCODE(major, minor, patch)) +#else + #define JSON_HEDLEY_EMSCRIPTEN_VERSION_CHECK(major,minor,patch) (0) +#endif + +#if defined(JSON_HEDLEY_ARM_VERSION) + #undef JSON_HEDLEY_ARM_VERSION +#endif +#if defined(__CC_ARM) && defined(__ARMCOMPILER_VERSION) + #define JSON_HEDLEY_ARM_VERSION JSON_HEDLEY_VERSION_ENCODE(__ARMCOMPILER_VERSION / 1000000, (__ARMCOMPILER_VERSION % 1000000) / 10000, (__ARMCOMPILER_VERSION % 10000) / 100) +#elif defined(__CC_ARM) && defined(__ARMCC_VERSION) + #define JSON_HEDLEY_ARM_VERSION JSON_HEDLEY_VERSION_ENCODE(__ARMCC_VERSION / 1000000, (__ARMCC_VERSION % 1000000) / 10000, (__ARMCC_VERSION % 10000) / 100) +#endif + +#if defined(JSON_HEDLEY_ARM_VERSION_CHECK) + #undef JSON_HEDLEY_ARM_VERSION_CHECK +#endif +#if defined(JSON_HEDLEY_ARM_VERSION) + #define JSON_HEDLEY_ARM_VERSION_CHECK(major,minor,patch) (JSON_HEDLEY_ARM_VERSION >= JSON_HEDLEY_VERSION_ENCODE(major, minor, patch)) +#else + #define JSON_HEDLEY_ARM_VERSION_CHECK(major,minor,patch) (0) +#endif + +#if defined(JSON_HEDLEY_IBM_VERSION) + #undef JSON_HEDLEY_IBM_VERSION +#endif +#if defined(__ibmxl__) + #define JSON_HEDLEY_IBM_VERSION JSON_HEDLEY_VERSION_ENCODE(__ibmxl_version__, __ibmxl_release__, __ibmxl_modification__) +#elif defined(__xlC__) && defined(__xlC_ver__) + #define JSON_HEDLEY_IBM_VERSION JSON_HEDLEY_VERSION_ENCODE(__xlC__ >> 8, __xlC__ & 0xff, (__xlC_ver__ >> 8) & 0xff) +#elif defined(__xlC__) + #define JSON_HEDLEY_IBM_VERSION JSON_HEDLEY_VERSION_ENCODE(__xlC__ >> 8, __xlC__ & 0xff, 0) +#endif + +#if defined(JSON_HEDLEY_IBM_VERSION_CHECK) + #undef JSON_HEDLEY_IBM_VERSION_CHECK +#endif +#if defined(JSON_HEDLEY_IBM_VERSION) + #define JSON_HEDLEY_IBM_VERSION_CHECK(major,minor,patch) (JSON_HEDLEY_IBM_VERSION >= JSON_HEDLEY_VERSION_ENCODE(major, minor, patch)) +#else + #define JSON_HEDLEY_IBM_VERSION_CHECK(major,minor,patch) (0) +#endif + +#if defined(JSON_HEDLEY_TI_VERSION) + #undef JSON_HEDLEY_TI_VERSION +#endif +#if \ + defined(__TI_COMPILER_VERSION__) && \ + ( \ + defined(__TMS470__) || defined(__TI_ARM__) || \ + defined(__MSP430__) || \ + defined(__TMS320C2000__) \ + ) +#if (__TI_COMPILER_VERSION__ >= 16000000) + #define JSON_HEDLEY_TI_VERSION JSON_HEDLEY_VERSION_ENCODE(__TI_COMPILER_VERSION__ / 1000000, (__TI_COMPILER_VERSION__ % 1000000) / 1000, (__TI_COMPILER_VERSION__ % 1000)) +#endif +#endif + +#if defined(JSON_HEDLEY_TI_VERSION_CHECK) + #undef JSON_HEDLEY_TI_VERSION_CHECK +#endif +#if defined(JSON_HEDLEY_TI_VERSION) + #define JSON_HEDLEY_TI_VERSION_CHECK(major,minor,patch) (JSON_HEDLEY_TI_VERSION >= JSON_HEDLEY_VERSION_ENCODE(major, minor, patch)) +#else + #define JSON_HEDLEY_TI_VERSION_CHECK(major,minor,patch) (0) +#endif + +#if defined(JSON_HEDLEY_TI_CL2000_VERSION) + #undef JSON_HEDLEY_TI_CL2000_VERSION +#endif +#if defined(__TI_COMPILER_VERSION__) && defined(__TMS320C2000__) + #define JSON_HEDLEY_TI_CL2000_VERSION JSON_HEDLEY_VERSION_ENCODE(__TI_COMPILER_VERSION__ / 1000000, (__TI_COMPILER_VERSION__ % 1000000) / 1000, (__TI_COMPILER_VERSION__ % 1000)) +#endif + +#if defined(JSON_HEDLEY_TI_CL2000_VERSION_CHECK) + #undef JSON_HEDLEY_TI_CL2000_VERSION_CHECK +#endif +#if defined(JSON_HEDLEY_TI_CL2000_VERSION) + #define JSON_HEDLEY_TI_CL2000_VERSION_CHECK(major,minor,patch) (JSON_HEDLEY_TI_CL2000_VERSION >= JSON_HEDLEY_VERSION_ENCODE(major, minor, patch)) +#else + #define JSON_HEDLEY_TI_CL2000_VERSION_CHECK(major,minor,patch) (0) +#endif + +#if defined(JSON_HEDLEY_TI_CL430_VERSION) + #undef JSON_HEDLEY_TI_CL430_VERSION +#endif +#if defined(__TI_COMPILER_VERSION__) && defined(__MSP430__) + #define JSON_HEDLEY_TI_CL430_VERSION JSON_HEDLEY_VERSION_ENCODE(__TI_COMPILER_VERSION__ / 1000000, (__TI_COMPILER_VERSION__ % 1000000) / 1000, (__TI_COMPILER_VERSION__ % 1000)) +#endif + +#if defined(JSON_HEDLEY_TI_CL430_VERSION_CHECK) + #undef JSON_HEDLEY_TI_CL430_VERSION_CHECK +#endif +#if defined(JSON_HEDLEY_TI_CL430_VERSION) + #define JSON_HEDLEY_TI_CL430_VERSION_CHECK(major,minor,patch) (JSON_HEDLEY_TI_CL430_VERSION >= JSON_HEDLEY_VERSION_ENCODE(major, minor, patch)) +#else + #define JSON_HEDLEY_TI_CL430_VERSION_CHECK(major,minor,patch) (0) +#endif + +#if defined(JSON_HEDLEY_TI_ARMCL_VERSION) + #undef JSON_HEDLEY_TI_ARMCL_VERSION +#endif +#if defined(__TI_COMPILER_VERSION__) && (defined(__TMS470__) || defined(__TI_ARM__)) + #define JSON_HEDLEY_TI_ARMCL_VERSION JSON_HEDLEY_VERSION_ENCODE(__TI_COMPILER_VERSION__ / 1000000, (__TI_COMPILER_VERSION__ % 1000000) / 1000, (__TI_COMPILER_VERSION__ % 1000)) +#endif + +#if defined(JSON_HEDLEY_TI_ARMCL_VERSION_CHECK) + #undef JSON_HEDLEY_TI_ARMCL_VERSION_CHECK +#endif +#if defined(JSON_HEDLEY_TI_ARMCL_VERSION) + #define JSON_HEDLEY_TI_ARMCL_VERSION_CHECK(major,minor,patch) (JSON_HEDLEY_TI_ARMCL_VERSION >= JSON_HEDLEY_VERSION_ENCODE(major, minor, patch)) +#else + #define JSON_HEDLEY_TI_ARMCL_VERSION_CHECK(major,minor,patch) (0) +#endif + +#if defined(JSON_HEDLEY_TI_CL6X_VERSION) + #undef JSON_HEDLEY_TI_CL6X_VERSION +#endif +#if defined(__TI_COMPILER_VERSION__) && defined(__TMS320C6X__) + #define JSON_HEDLEY_TI_CL6X_VERSION JSON_HEDLEY_VERSION_ENCODE(__TI_COMPILER_VERSION__ / 1000000, (__TI_COMPILER_VERSION__ % 1000000) / 1000, (__TI_COMPILER_VERSION__ % 1000)) +#endif + +#if defined(JSON_HEDLEY_TI_CL6X_VERSION_CHECK) + #undef JSON_HEDLEY_TI_CL6X_VERSION_CHECK +#endif +#if defined(JSON_HEDLEY_TI_CL6X_VERSION) + #define JSON_HEDLEY_TI_CL6X_VERSION_CHECK(major,minor,patch) (JSON_HEDLEY_TI_CL6X_VERSION >= JSON_HEDLEY_VERSION_ENCODE(major, minor, patch)) +#else + #define JSON_HEDLEY_TI_CL6X_VERSION_CHECK(major,minor,patch) (0) +#endif + +#if defined(JSON_HEDLEY_TI_CL7X_VERSION) + #undef JSON_HEDLEY_TI_CL7X_VERSION +#endif +#if defined(__TI_COMPILER_VERSION__) && defined(__C7000__) + #define JSON_HEDLEY_TI_CL7X_VERSION JSON_HEDLEY_VERSION_ENCODE(__TI_COMPILER_VERSION__ / 1000000, (__TI_COMPILER_VERSION__ % 1000000) / 1000, (__TI_COMPILER_VERSION__ % 1000)) +#endif + +#if defined(JSON_HEDLEY_TI_CL7X_VERSION_CHECK) + #undef JSON_HEDLEY_TI_CL7X_VERSION_CHECK +#endif +#if defined(JSON_HEDLEY_TI_CL7X_VERSION) + #define JSON_HEDLEY_TI_CL7X_VERSION_CHECK(major,minor,patch) (JSON_HEDLEY_TI_CL7X_VERSION >= JSON_HEDLEY_VERSION_ENCODE(major, minor, patch)) +#else + #define JSON_HEDLEY_TI_CL7X_VERSION_CHECK(major,minor,patch) (0) +#endif + +#if defined(JSON_HEDLEY_TI_CLPRU_VERSION) + #undef JSON_HEDLEY_TI_CLPRU_VERSION +#endif +#if defined(__TI_COMPILER_VERSION__) && defined(__PRU__) + #define JSON_HEDLEY_TI_CLPRU_VERSION JSON_HEDLEY_VERSION_ENCODE(__TI_COMPILER_VERSION__ / 1000000, (__TI_COMPILER_VERSION__ % 1000000) / 1000, (__TI_COMPILER_VERSION__ % 1000)) +#endif + +#if defined(JSON_HEDLEY_TI_CLPRU_VERSION_CHECK) + #undef JSON_HEDLEY_TI_CLPRU_VERSION_CHECK +#endif +#if defined(JSON_HEDLEY_TI_CLPRU_VERSION) + #define JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(major,minor,patch) (JSON_HEDLEY_TI_CLPRU_VERSION >= JSON_HEDLEY_VERSION_ENCODE(major, minor, patch)) +#else + #define JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(major,minor,patch) (0) +#endif + +#if defined(JSON_HEDLEY_CRAY_VERSION) + #undef JSON_HEDLEY_CRAY_VERSION +#endif +#if defined(_CRAYC) + #if defined(_RELEASE_PATCHLEVEL) + #define JSON_HEDLEY_CRAY_VERSION JSON_HEDLEY_VERSION_ENCODE(_RELEASE_MAJOR, _RELEASE_MINOR, _RELEASE_PATCHLEVEL) + #else + #define JSON_HEDLEY_CRAY_VERSION JSON_HEDLEY_VERSION_ENCODE(_RELEASE_MAJOR, _RELEASE_MINOR, 0) + #endif +#endif + +#if defined(JSON_HEDLEY_CRAY_VERSION_CHECK) + #undef JSON_HEDLEY_CRAY_VERSION_CHECK +#endif +#if defined(JSON_HEDLEY_CRAY_VERSION) + #define JSON_HEDLEY_CRAY_VERSION_CHECK(major,minor,patch) (JSON_HEDLEY_CRAY_VERSION >= JSON_HEDLEY_VERSION_ENCODE(major, minor, patch)) +#else + #define JSON_HEDLEY_CRAY_VERSION_CHECK(major,minor,patch) (0) +#endif + +#if defined(JSON_HEDLEY_IAR_VERSION) + #undef JSON_HEDLEY_IAR_VERSION +#endif +#if defined(__IAR_SYSTEMS_ICC__) + #if __VER__ > 1000 + #define JSON_HEDLEY_IAR_VERSION JSON_HEDLEY_VERSION_ENCODE((__VER__ / 1000000), ((__VER__ / 1000) % 1000), (__VER__ % 1000)) + #else + #define JSON_HEDLEY_IAR_VERSION JSON_HEDLEY_VERSION_ENCODE(__VER__ / 100, __VER__ % 100, 0) + #endif +#endif + +#if defined(JSON_HEDLEY_IAR_VERSION_CHECK) + #undef JSON_HEDLEY_IAR_VERSION_CHECK +#endif +#if defined(JSON_HEDLEY_IAR_VERSION) + #define JSON_HEDLEY_IAR_VERSION_CHECK(major,minor,patch) (JSON_HEDLEY_IAR_VERSION >= JSON_HEDLEY_VERSION_ENCODE(major, minor, patch)) +#else + #define JSON_HEDLEY_IAR_VERSION_CHECK(major,minor,patch) (0) +#endif + +#if defined(JSON_HEDLEY_TINYC_VERSION) + #undef JSON_HEDLEY_TINYC_VERSION +#endif +#if defined(__TINYC__) + #define JSON_HEDLEY_TINYC_VERSION JSON_HEDLEY_VERSION_ENCODE(__TINYC__ / 1000, (__TINYC__ / 100) % 10, __TINYC__ % 100) +#endif + +#if defined(JSON_HEDLEY_TINYC_VERSION_CHECK) + #undef JSON_HEDLEY_TINYC_VERSION_CHECK +#endif +#if defined(JSON_HEDLEY_TINYC_VERSION) + #define JSON_HEDLEY_TINYC_VERSION_CHECK(major,minor,patch) (JSON_HEDLEY_TINYC_VERSION >= JSON_HEDLEY_VERSION_ENCODE(major, minor, patch)) +#else + #define JSON_HEDLEY_TINYC_VERSION_CHECK(major,minor,patch) (0) +#endif + +#if defined(JSON_HEDLEY_DMC_VERSION) + #undef JSON_HEDLEY_DMC_VERSION +#endif +#if defined(__DMC__) + #define JSON_HEDLEY_DMC_VERSION JSON_HEDLEY_VERSION_ENCODE(__DMC__ >> 8, (__DMC__ >> 4) & 0xf, __DMC__ & 0xf) +#endif + +#if defined(JSON_HEDLEY_DMC_VERSION_CHECK) + #undef JSON_HEDLEY_DMC_VERSION_CHECK +#endif +#if defined(JSON_HEDLEY_DMC_VERSION) + #define JSON_HEDLEY_DMC_VERSION_CHECK(major,minor,patch) (JSON_HEDLEY_DMC_VERSION >= JSON_HEDLEY_VERSION_ENCODE(major, minor, patch)) +#else + #define JSON_HEDLEY_DMC_VERSION_CHECK(major,minor,patch) (0) +#endif + +#if defined(JSON_HEDLEY_COMPCERT_VERSION) + #undef JSON_HEDLEY_COMPCERT_VERSION +#endif +#if defined(__COMPCERT_VERSION__) + #define JSON_HEDLEY_COMPCERT_VERSION JSON_HEDLEY_VERSION_ENCODE(__COMPCERT_VERSION__ / 10000, (__COMPCERT_VERSION__ / 100) % 100, __COMPCERT_VERSION__ % 100) +#endif + +#if defined(JSON_HEDLEY_COMPCERT_VERSION_CHECK) + #undef JSON_HEDLEY_COMPCERT_VERSION_CHECK +#endif +#if defined(JSON_HEDLEY_COMPCERT_VERSION) + #define JSON_HEDLEY_COMPCERT_VERSION_CHECK(major,minor,patch) (JSON_HEDLEY_COMPCERT_VERSION >= JSON_HEDLEY_VERSION_ENCODE(major, minor, patch)) +#else + #define JSON_HEDLEY_COMPCERT_VERSION_CHECK(major,minor,patch) (0) +#endif + +#if defined(JSON_HEDLEY_PELLES_VERSION) + #undef JSON_HEDLEY_PELLES_VERSION +#endif +#if defined(__POCC__) + #define JSON_HEDLEY_PELLES_VERSION JSON_HEDLEY_VERSION_ENCODE(__POCC__ / 100, __POCC__ % 100, 0) +#endif + +#if defined(JSON_HEDLEY_PELLES_VERSION_CHECK) + #undef JSON_HEDLEY_PELLES_VERSION_CHECK +#endif +#if defined(JSON_HEDLEY_PELLES_VERSION) + #define JSON_HEDLEY_PELLES_VERSION_CHECK(major,minor,patch) (JSON_HEDLEY_PELLES_VERSION >= JSON_HEDLEY_VERSION_ENCODE(major, minor, patch)) +#else + #define JSON_HEDLEY_PELLES_VERSION_CHECK(major,minor,patch) (0) +#endif + +#if defined(JSON_HEDLEY_MCST_LCC_VERSION) + #undef JSON_HEDLEY_MCST_LCC_VERSION +#endif +#if defined(__LCC__) && defined(__LCC_MINOR__) + #define JSON_HEDLEY_MCST_LCC_VERSION JSON_HEDLEY_VERSION_ENCODE(__LCC__ / 100, __LCC__ % 100, __LCC_MINOR__) +#endif + +#if defined(JSON_HEDLEY_MCST_LCC_VERSION_CHECK) + #undef JSON_HEDLEY_MCST_LCC_VERSION_CHECK +#endif +#if defined(JSON_HEDLEY_MCST_LCC_VERSION) + #define JSON_HEDLEY_MCST_LCC_VERSION_CHECK(major,minor,patch) (JSON_HEDLEY_MCST_LCC_VERSION >= JSON_HEDLEY_VERSION_ENCODE(major, minor, patch)) +#else + #define JSON_HEDLEY_MCST_LCC_VERSION_CHECK(major,minor,patch) (0) +#endif + +#if defined(JSON_HEDLEY_GCC_VERSION) + #undef JSON_HEDLEY_GCC_VERSION +#endif +#if \ + defined(JSON_HEDLEY_GNUC_VERSION) && \ + !defined(__clang__) && \ + !defined(JSON_HEDLEY_INTEL_VERSION) && \ + !defined(JSON_HEDLEY_PGI_VERSION) && \ + !defined(JSON_HEDLEY_ARM_VERSION) && \ + !defined(JSON_HEDLEY_CRAY_VERSION) && \ + !defined(JSON_HEDLEY_TI_VERSION) && \ + !defined(JSON_HEDLEY_TI_ARMCL_VERSION) && \ + !defined(JSON_HEDLEY_TI_CL430_VERSION) && \ + !defined(JSON_HEDLEY_TI_CL2000_VERSION) && \ + !defined(JSON_HEDLEY_TI_CL6X_VERSION) && \ + !defined(JSON_HEDLEY_TI_CL7X_VERSION) && \ + !defined(JSON_HEDLEY_TI_CLPRU_VERSION) && \ + !defined(__COMPCERT__) && \ + !defined(JSON_HEDLEY_MCST_LCC_VERSION) + #define JSON_HEDLEY_GCC_VERSION JSON_HEDLEY_GNUC_VERSION +#endif + +#if defined(JSON_HEDLEY_GCC_VERSION_CHECK) + #undef JSON_HEDLEY_GCC_VERSION_CHECK +#endif +#if defined(JSON_HEDLEY_GCC_VERSION) + #define JSON_HEDLEY_GCC_VERSION_CHECK(major,minor,patch) (JSON_HEDLEY_GCC_VERSION >= JSON_HEDLEY_VERSION_ENCODE(major, minor, patch)) +#else + #define JSON_HEDLEY_GCC_VERSION_CHECK(major,minor,patch) (0) +#endif + +#if defined(JSON_HEDLEY_HAS_ATTRIBUTE) + #undef JSON_HEDLEY_HAS_ATTRIBUTE +#endif +#if \ + defined(__has_attribute) && \ + ( \ + (!defined(JSON_HEDLEY_IAR_VERSION) || JSON_HEDLEY_IAR_VERSION_CHECK(8,5,9)) \ + ) +# define JSON_HEDLEY_HAS_ATTRIBUTE(attribute) __has_attribute(attribute) +#else +# define JSON_HEDLEY_HAS_ATTRIBUTE(attribute) (0) +#endif + +#if defined(JSON_HEDLEY_GNUC_HAS_ATTRIBUTE) + #undef JSON_HEDLEY_GNUC_HAS_ATTRIBUTE +#endif +#if defined(__has_attribute) + #define JSON_HEDLEY_GNUC_HAS_ATTRIBUTE(attribute,major,minor,patch) JSON_HEDLEY_HAS_ATTRIBUTE(attribute) +#else + #define JSON_HEDLEY_GNUC_HAS_ATTRIBUTE(attribute,major,minor,patch) JSON_HEDLEY_GNUC_VERSION_CHECK(major,minor,patch) +#endif + +#if defined(JSON_HEDLEY_GCC_HAS_ATTRIBUTE) + #undef JSON_HEDLEY_GCC_HAS_ATTRIBUTE +#endif +#if defined(__has_attribute) + #define JSON_HEDLEY_GCC_HAS_ATTRIBUTE(attribute,major,minor,patch) JSON_HEDLEY_HAS_ATTRIBUTE(attribute) +#else + #define JSON_HEDLEY_GCC_HAS_ATTRIBUTE(attribute,major,minor,patch) JSON_HEDLEY_GCC_VERSION_CHECK(major,minor,patch) +#endif + +#if defined(JSON_HEDLEY_HAS_CPP_ATTRIBUTE) + #undef JSON_HEDLEY_HAS_CPP_ATTRIBUTE +#endif +#if \ + defined(__has_cpp_attribute) && \ + defined(__cplusplus) && \ + (!defined(JSON_HEDLEY_SUNPRO_VERSION) || JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,15,0)) + #define JSON_HEDLEY_HAS_CPP_ATTRIBUTE(attribute) __has_cpp_attribute(attribute) +#else + #define JSON_HEDLEY_HAS_CPP_ATTRIBUTE(attribute) (0) +#endif + +#if defined(JSON_HEDLEY_HAS_CPP_ATTRIBUTE_NS) + #undef JSON_HEDLEY_HAS_CPP_ATTRIBUTE_NS +#endif +#if !defined(__cplusplus) || !defined(__has_cpp_attribute) + #define JSON_HEDLEY_HAS_CPP_ATTRIBUTE_NS(ns,attribute) (0) +#elif \ + !defined(JSON_HEDLEY_PGI_VERSION) && \ + !defined(JSON_HEDLEY_IAR_VERSION) && \ + (!defined(JSON_HEDLEY_SUNPRO_VERSION) || JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,15,0)) && \ + (!defined(JSON_HEDLEY_MSVC_VERSION) || JSON_HEDLEY_MSVC_VERSION_CHECK(19,20,0)) + #define JSON_HEDLEY_HAS_CPP_ATTRIBUTE_NS(ns,attribute) JSON_HEDLEY_HAS_CPP_ATTRIBUTE(ns::attribute) +#else + #define JSON_HEDLEY_HAS_CPP_ATTRIBUTE_NS(ns,attribute) (0) +#endif + +#if defined(JSON_HEDLEY_GNUC_HAS_CPP_ATTRIBUTE) + #undef JSON_HEDLEY_GNUC_HAS_CPP_ATTRIBUTE +#endif +#if defined(__has_cpp_attribute) && defined(__cplusplus) + #define JSON_HEDLEY_GNUC_HAS_CPP_ATTRIBUTE(attribute,major,minor,patch) __has_cpp_attribute(attribute) +#else + #define JSON_HEDLEY_GNUC_HAS_CPP_ATTRIBUTE(attribute,major,minor,patch) JSON_HEDLEY_GNUC_VERSION_CHECK(major,minor,patch) +#endif + +#if defined(JSON_HEDLEY_GCC_HAS_CPP_ATTRIBUTE) + #undef JSON_HEDLEY_GCC_HAS_CPP_ATTRIBUTE +#endif +#if defined(__has_cpp_attribute) && defined(__cplusplus) + #define JSON_HEDLEY_GCC_HAS_CPP_ATTRIBUTE(attribute,major,minor,patch) __has_cpp_attribute(attribute) +#else + #define JSON_HEDLEY_GCC_HAS_CPP_ATTRIBUTE(attribute,major,minor,patch) JSON_HEDLEY_GCC_VERSION_CHECK(major,minor,patch) +#endif + +#if defined(JSON_HEDLEY_HAS_BUILTIN) + #undef JSON_HEDLEY_HAS_BUILTIN +#endif +#if defined(__has_builtin) + #define JSON_HEDLEY_HAS_BUILTIN(builtin) __has_builtin(builtin) +#else + #define JSON_HEDLEY_HAS_BUILTIN(builtin) (0) +#endif + +#if defined(JSON_HEDLEY_GNUC_HAS_BUILTIN) + #undef JSON_HEDLEY_GNUC_HAS_BUILTIN +#endif +#if defined(__has_builtin) + #define JSON_HEDLEY_GNUC_HAS_BUILTIN(builtin,major,minor,patch) __has_builtin(builtin) +#else + #define JSON_HEDLEY_GNUC_HAS_BUILTIN(builtin,major,minor,patch) JSON_HEDLEY_GNUC_VERSION_CHECK(major,minor,patch) +#endif + +#if defined(JSON_HEDLEY_GCC_HAS_BUILTIN) + #undef JSON_HEDLEY_GCC_HAS_BUILTIN +#endif +#if defined(__has_builtin) + #define JSON_HEDLEY_GCC_HAS_BUILTIN(builtin,major,minor,patch) __has_builtin(builtin) +#else + #define JSON_HEDLEY_GCC_HAS_BUILTIN(builtin,major,minor,patch) JSON_HEDLEY_GCC_VERSION_CHECK(major,minor,patch) +#endif + +#if defined(JSON_HEDLEY_HAS_FEATURE) + #undef JSON_HEDLEY_HAS_FEATURE +#endif +#if defined(__has_feature) + #define JSON_HEDLEY_HAS_FEATURE(feature) __has_feature(feature) +#else + #define JSON_HEDLEY_HAS_FEATURE(feature) (0) +#endif + +#if defined(JSON_HEDLEY_GNUC_HAS_FEATURE) + #undef JSON_HEDLEY_GNUC_HAS_FEATURE +#endif +#if defined(__has_feature) + #define JSON_HEDLEY_GNUC_HAS_FEATURE(feature,major,minor,patch) __has_feature(feature) +#else + #define JSON_HEDLEY_GNUC_HAS_FEATURE(feature,major,minor,patch) JSON_HEDLEY_GNUC_VERSION_CHECK(major,minor,patch) +#endif + +#if defined(JSON_HEDLEY_GCC_HAS_FEATURE) + #undef JSON_HEDLEY_GCC_HAS_FEATURE +#endif +#if defined(__has_feature) + #define JSON_HEDLEY_GCC_HAS_FEATURE(feature,major,minor,patch) __has_feature(feature) +#else + #define JSON_HEDLEY_GCC_HAS_FEATURE(feature,major,minor,patch) JSON_HEDLEY_GCC_VERSION_CHECK(major,minor,patch) +#endif + +#if defined(JSON_HEDLEY_HAS_EXTENSION) + #undef JSON_HEDLEY_HAS_EXTENSION +#endif +#if defined(__has_extension) + #define JSON_HEDLEY_HAS_EXTENSION(extension) __has_extension(extension) +#else + #define JSON_HEDLEY_HAS_EXTENSION(extension) (0) +#endif + +#if defined(JSON_HEDLEY_GNUC_HAS_EXTENSION) + #undef JSON_HEDLEY_GNUC_HAS_EXTENSION +#endif +#if defined(__has_extension) + #define JSON_HEDLEY_GNUC_HAS_EXTENSION(extension,major,minor,patch) __has_extension(extension) +#else + #define JSON_HEDLEY_GNUC_HAS_EXTENSION(extension,major,minor,patch) JSON_HEDLEY_GNUC_VERSION_CHECK(major,minor,patch) +#endif + +#if defined(JSON_HEDLEY_GCC_HAS_EXTENSION) + #undef JSON_HEDLEY_GCC_HAS_EXTENSION +#endif +#if defined(__has_extension) + #define JSON_HEDLEY_GCC_HAS_EXTENSION(extension,major,minor,patch) __has_extension(extension) +#else + #define JSON_HEDLEY_GCC_HAS_EXTENSION(extension,major,minor,patch) JSON_HEDLEY_GCC_VERSION_CHECK(major,minor,patch) +#endif + +#if defined(JSON_HEDLEY_HAS_DECLSPEC_ATTRIBUTE) + #undef JSON_HEDLEY_HAS_DECLSPEC_ATTRIBUTE +#endif +#if defined(__has_declspec_attribute) + #define JSON_HEDLEY_HAS_DECLSPEC_ATTRIBUTE(attribute) __has_declspec_attribute(attribute) +#else + #define JSON_HEDLEY_HAS_DECLSPEC_ATTRIBUTE(attribute) (0) +#endif + +#if defined(JSON_HEDLEY_GNUC_HAS_DECLSPEC_ATTRIBUTE) + #undef JSON_HEDLEY_GNUC_HAS_DECLSPEC_ATTRIBUTE +#endif +#if defined(__has_declspec_attribute) + #define JSON_HEDLEY_GNUC_HAS_DECLSPEC_ATTRIBUTE(attribute,major,minor,patch) __has_declspec_attribute(attribute) +#else + #define JSON_HEDLEY_GNUC_HAS_DECLSPEC_ATTRIBUTE(attribute,major,minor,patch) JSON_HEDLEY_GNUC_VERSION_CHECK(major,minor,patch) +#endif + +#if defined(JSON_HEDLEY_GCC_HAS_DECLSPEC_ATTRIBUTE) + #undef JSON_HEDLEY_GCC_HAS_DECLSPEC_ATTRIBUTE +#endif +#if defined(__has_declspec_attribute) + #define JSON_HEDLEY_GCC_HAS_DECLSPEC_ATTRIBUTE(attribute,major,minor,patch) __has_declspec_attribute(attribute) +#else + #define JSON_HEDLEY_GCC_HAS_DECLSPEC_ATTRIBUTE(attribute,major,minor,patch) JSON_HEDLEY_GCC_VERSION_CHECK(major,minor,patch) +#endif + +#if defined(JSON_HEDLEY_HAS_WARNING) + #undef JSON_HEDLEY_HAS_WARNING +#endif +#if defined(__has_warning) + #define JSON_HEDLEY_HAS_WARNING(warning) __has_warning(warning) +#else + #define JSON_HEDLEY_HAS_WARNING(warning) (0) +#endif + +#if defined(JSON_HEDLEY_GNUC_HAS_WARNING) + #undef JSON_HEDLEY_GNUC_HAS_WARNING +#endif +#if defined(__has_warning) + #define JSON_HEDLEY_GNUC_HAS_WARNING(warning,major,minor,patch) __has_warning(warning) +#else + #define JSON_HEDLEY_GNUC_HAS_WARNING(warning,major,minor,patch) JSON_HEDLEY_GNUC_VERSION_CHECK(major,minor,patch) +#endif + +#if defined(JSON_HEDLEY_GCC_HAS_WARNING) + #undef JSON_HEDLEY_GCC_HAS_WARNING +#endif +#if defined(__has_warning) + #define JSON_HEDLEY_GCC_HAS_WARNING(warning,major,minor,patch) __has_warning(warning) +#else + #define JSON_HEDLEY_GCC_HAS_WARNING(warning,major,minor,patch) JSON_HEDLEY_GCC_VERSION_CHECK(major,minor,patch) +#endif + +#if \ + (defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L)) || \ + defined(__clang__) || \ + JSON_HEDLEY_GCC_VERSION_CHECK(3,0,0) || \ + JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) || \ + JSON_HEDLEY_IAR_VERSION_CHECK(8,0,0) || \ + JSON_HEDLEY_PGI_VERSION_CHECK(18,4,0) || \ + JSON_HEDLEY_ARM_VERSION_CHECK(4,1,0) || \ + JSON_HEDLEY_TI_VERSION_CHECK(15,12,0) || \ + JSON_HEDLEY_TI_ARMCL_VERSION_CHECK(4,7,0) || \ + JSON_HEDLEY_TI_CL430_VERSION_CHECK(2,0,1) || \ + JSON_HEDLEY_TI_CL2000_VERSION_CHECK(6,1,0) || \ + JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,0,0) || \ + JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \ + JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) || \ + JSON_HEDLEY_CRAY_VERSION_CHECK(5,0,0) || \ + JSON_HEDLEY_TINYC_VERSION_CHECK(0,9,17) || \ + JSON_HEDLEY_SUNPRO_VERSION_CHECK(8,0,0) || \ + (JSON_HEDLEY_IBM_VERSION_CHECK(10,1,0) && defined(__C99_PRAGMA_OPERATOR)) + #define JSON_HEDLEY_PRAGMA(value) _Pragma(#value) +#elif JSON_HEDLEY_MSVC_VERSION_CHECK(15,0,0) + #define JSON_HEDLEY_PRAGMA(value) __pragma(value) +#else + #define JSON_HEDLEY_PRAGMA(value) +#endif + +#if defined(JSON_HEDLEY_DIAGNOSTIC_PUSH) + #undef JSON_HEDLEY_DIAGNOSTIC_PUSH +#endif +#if defined(JSON_HEDLEY_DIAGNOSTIC_POP) + #undef JSON_HEDLEY_DIAGNOSTIC_POP +#endif +#if defined(__clang__) + #define JSON_HEDLEY_DIAGNOSTIC_PUSH _Pragma("clang diagnostic push") + #define JSON_HEDLEY_DIAGNOSTIC_POP _Pragma("clang diagnostic pop") +#elif JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) + #define JSON_HEDLEY_DIAGNOSTIC_PUSH _Pragma("warning(push)") + #define JSON_HEDLEY_DIAGNOSTIC_POP _Pragma("warning(pop)") +#elif JSON_HEDLEY_GCC_VERSION_CHECK(4,6,0) + #define JSON_HEDLEY_DIAGNOSTIC_PUSH _Pragma("GCC diagnostic push") + #define JSON_HEDLEY_DIAGNOSTIC_POP _Pragma("GCC diagnostic pop") +#elif \ + JSON_HEDLEY_MSVC_VERSION_CHECK(15,0,0) || \ + JSON_HEDLEY_INTEL_CL_VERSION_CHECK(2021,1,0) + #define JSON_HEDLEY_DIAGNOSTIC_PUSH __pragma(warning(push)) + #define JSON_HEDLEY_DIAGNOSTIC_POP __pragma(warning(pop)) +#elif JSON_HEDLEY_ARM_VERSION_CHECK(5,6,0) + #define JSON_HEDLEY_DIAGNOSTIC_PUSH _Pragma("push") + #define JSON_HEDLEY_DIAGNOSTIC_POP _Pragma("pop") +#elif \ + JSON_HEDLEY_TI_VERSION_CHECK(15,12,0) || \ + JSON_HEDLEY_TI_ARMCL_VERSION_CHECK(5,2,0) || \ + JSON_HEDLEY_TI_CL430_VERSION_CHECK(4,4,0) || \ + JSON_HEDLEY_TI_CL6X_VERSION_CHECK(8,1,0) || \ + JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \ + JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) + #define JSON_HEDLEY_DIAGNOSTIC_PUSH _Pragma("diag_push") + #define JSON_HEDLEY_DIAGNOSTIC_POP _Pragma("diag_pop") +#elif JSON_HEDLEY_PELLES_VERSION_CHECK(2,90,0) + #define JSON_HEDLEY_DIAGNOSTIC_PUSH _Pragma("warning(push)") + #define JSON_HEDLEY_DIAGNOSTIC_POP _Pragma("warning(pop)") +#else + #define JSON_HEDLEY_DIAGNOSTIC_PUSH + #define JSON_HEDLEY_DIAGNOSTIC_POP +#endif + +/* JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_ is for + HEDLEY INTERNAL USE ONLY. API subject to change without notice. */ +#if defined(JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_) + #undef JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_ +#endif +#if defined(__cplusplus) +# if JSON_HEDLEY_HAS_WARNING("-Wc++98-compat") +# if JSON_HEDLEY_HAS_WARNING("-Wc++17-extensions") +# if JSON_HEDLEY_HAS_WARNING("-Wc++1z-extensions") +# define JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_(xpr) \ + JSON_HEDLEY_DIAGNOSTIC_PUSH \ + _Pragma("clang diagnostic ignored \"-Wc++98-compat\"") \ + _Pragma("clang diagnostic ignored \"-Wc++17-extensions\"") \ + _Pragma("clang diagnostic ignored \"-Wc++1z-extensions\"") \ + xpr \ + JSON_HEDLEY_DIAGNOSTIC_POP +# else +# define JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_(xpr) \ + JSON_HEDLEY_DIAGNOSTIC_PUSH \ + _Pragma("clang diagnostic ignored \"-Wc++98-compat\"") \ + _Pragma("clang diagnostic ignored \"-Wc++17-extensions\"") \ + xpr \ + JSON_HEDLEY_DIAGNOSTIC_POP +# endif +# else +# define JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_(xpr) \ + JSON_HEDLEY_DIAGNOSTIC_PUSH \ + _Pragma("clang diagnostic ignored \"-Wc++98-compat\"") \ + xpr \ + JSON_HEDLEY_DIAGNOSTIC_POP +# endif +# endif +#endif +#if !defined(JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_(x) x +#endif + +#if defined(JSON_HEDLEY_CONST_CAST) + #undef JSON_HEDLEY_CONST_CAST +#endif +#if defined(__cplusplus) +# define JSON_HEDLEY_CONST_CAST(T, expr) (const_cast(expr)) +#elif \ + JSON_HEDLEY_HAS_WARNING("-Wcast-qual") || \ + JSON_HEDLEY_GCC_VERSION_CHECK(4,6,0) || \ + JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) +# define JSON_HEDLEY_CONST_CAST(T, expr) (__extension__ ({ \ + JSON_HEDLEY_DIAGNOSTIC_PUSH \ + JSON_HEDLEY_DIAGNOSTIC_DISABLE_CAST_QUAL \ + ((T) (expr)); \ + JSON_HEDLEY_DIAGNOSTIC_POP \ + })) +#else +# define JSON_HEDLEY_CONST_CAST(T, expr) ((T) (expr)) +#endif + +#if defined(JSON_HEDLEY_REINTERPRET_CAST) + #undef JSON_HEDLEY_REINTERPRET_CAST +#endif +#if defined(__cplusplus) + #define JSON_HEDLEY_REINTERPRET_CAST(T, expr) (reinterpret_cast(expr)) +#else + #define JSON_HEDLEY_REINTERPRET_CAST(T, expr) ((T) (expr)) +#endif + +#if defined(JSON_HEDLEY_STATIC_CAST) + #undef JSON_HEDLEY_STATIC_CAST +#endif +#if defined(__cplusplus) + #define JSON_HEDLEY_STATIC_CAST(T, expr) (static_cast(expr)) +#else + #define JSON_HEDLEY_STATIC_CAST(T, expr) ((T) (expr)) +#endif + +#if defined(JSON_HEDLEY_CPP_CAST) + #undef JSON_HEDLEY_CPP_CAST +#endif +#if defined(__cplusplus) +# if JSON_HEDLEY_HAS_WARNING("-Wold-style-cast") +# define JSON_HEDLEY_CPP_CAST(T, expr) \ + JSON_HEDLEY_DIAGNOSTIC_PUSH \ + _Pragma("clang diagnostic ignored \"-Wold-style-cast\"") \ + ((T) (expr)) \ + JSON_HEDLEY_DIAGNOSTIC_POP +# elif JSON_HEDLEY_IAR_VERSION_CHECK(8,3,0) +# define JSON_HEDLEY_CPP_CAST(T, expr) \ + JSON_HEDLEY_DIAGNOSTIC_PUSH \ + _Pragma("diag_suppress=Pe137") \ + JSON_HEDLEY_DIAGNOSTIC_POP +# else +# define JSON_HEDLEY_CPP_CAST(T, expr) ((T) (expr)) +# endif +#else +# define JSON_HEDLEY_CPP_CAST(T, expr) (expr) +#endif + +#if defined(JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED) + #undef JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED +#endif +#if JSON_HEDLEY_HAS_WARNING("-Wdeprecated-declarations") + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED _Pragma("clang diagnostic ignored \"-Wdeprecated-declarations\"") +#elif JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED _Pragma("warning(disable:1478 1786)") +#elif JSON_HEDLEY_INTEL_CL_VERSION_CHECK(2021,1,0) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED __pragma(warning(disable:1478 1786)) +#elif JSON_HEDLEY_PGI_VERSION_CHECK(20,7,0) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED _Pragma("diag_suppress 1215,1216,1444,1445") +#elif JSON_HEDLEY_PGI_VERSION_CHECK(17,10,0) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED _Pragma("diag_suppress 1215,1444") +#elif JSON_HEDLEY_GCC_VERSION_CHECK(4,3,0) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"") +#elif JSON_HEDLEY_MSVC_VERSION_CHECK(15,0,0) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED __pragma(warning(disable:4996)) +#elif JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED _Pragma("diag_suppress 1215,1444") +#elif \ + JSON_HEDLEY_TI_VERSION_CHECK(15,12,0) || \ + (JSON_HEDLEY_TI_ARMCL_VERSION_CHECK(4,8,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_ARMCL_VERSION_CHECK(5,2,0) || \ + (JSON_HEDLEY_TI_CL2000_VERSION_CHECK(6,0,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_CL2000_VERSION_CHECK(6,4,0) || \ + (JSON_HEDLEY_TI_CL430_VERSION_CHECK(4,0,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_CL430_VERSION_CHECK(4,3,0) || \ + (JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,2,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,5,0) || \ + JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \ + JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED _Pragma("diag_suppress 1291,1718") +#elif JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,13,0) && !defined(__cplusplus) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED _Pragma("error_messages(off,E_DEPRECATED_ATT,E_DEPRECATED_ATT_MESS)") +#elif JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,13,0) && defined(__cplusplus) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED _Pragma("error_messages(off,symdeprecated,symdeprecated2)") +#elif JSON_HEDLEY_IAR_VERSION_CHECK(8,0,0) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED _Pragma("diag_suppress=Pe1444,Pe1215") +#elif JSON_HEDLEY_PELLES_VERSION_CHECK(2,90,0) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED _Pragma("warn(disable:2241)") +#else + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED +#endif + +#if defined(JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS) + #undef JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS +#endif +#if JSON_HEDLEY_HAS_WARNING("-Wunknown-pragmas") + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS _Pragma("clang diagnostic ignored \"-Wunknown-pragmas\"") +#elif JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS _Pragma("warning(disable:161)") +#elif JSON_HEDLEY_INTEL_CL_VERSION_CHECK(2021,1,0) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS __pragma(warning(disable:161)) +#elif JSON_HEDLEY_PGI_VERSION_CHECK(17,10,0) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS _Pragma("diag_suppress 1675") +#elif JSON_HEDLEY_GCC_VERSION_CHECK(4,3,0) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS _Pragma("GCC diagnostic ignored \"-Wunknown-pragmas\"") +#elif JSON_HEDLEY_MSVC_VERSION_CHECK(15,0,0) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS __pragma(warning(disable:4068)) +#elif \ + JSON_HEDLEY_TI_VERSION_CHECK(16,9,0) || \ + JSON_HEDLEY_TI_CL6X_VERSION_CHECK(8,0,0) || \ + JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \ + JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,3,0) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS _Pragma("diag_suppress 163") +#elif JSON_HEDLEY_TI_CL6X_VERSION_CHECK(8,0,0) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS _Pragma("diag_suppress 163") +#elif JSON_HEDLEY_IAR_VERSION_CHECK(8,0,0) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS _Pragma("diag_suppress=Pe161") +#elif JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS _Pragma("diag_suppress 161") +#else + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS +#endif + +#if defined(JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES) + #undef JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES +#endif +#if JSON_HEDLEY_HAS_WARNING("-Wunknown-attributes") + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES _Pragma("clang diagnostic ignored \"-Wunknown-attributes\"") +#elif JSON_HEDLEY_GCC_VERSION_CHECK(4,6,0) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"") +#elif JSON_HEDLEY_INTEL_VERSION_CHECK(17,0,0) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES _Pragma("warning(disable:1292)") +#elif JSON_HEDLEY_INTEL_CL_VERSION_CHECK(2021,1,0) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES __pragma(warning(disable:1292)) +#elif JSON_HEDLEY_MSVC_VERSION_CHECK(19,0,0) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES __pragma(warning(disable:5030)) +#elif JSON_HEDLEY_PGI_VERSION_CHECK(20,7,0) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES _Pragma("diag_suppress 1097,1098") +#elif JSON_HEDLEY_PGI_VERSION_CHECK(17,10,0) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES _Pragma("diag_suppress 1097") +#elif JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,14,0) && defined(__cplusplus) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES _Pragma("error_messages(off,attrskipunsup)") +#elif \ + JSON_HEDLEY_TI_VERSION_CHECK(18,1,0) || \ + JSON_HEDLEY_TI_CL6X_VERSION_CHECK(8,3,0) || \ + JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES _Pragma("diag_suppress 1173") +#elif JSON_HEDLEY_IAR_VERSION_CHECK(8,0,0) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES _Pragma("diag_suppress=Pe1097") +#elif JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES _Pragma("diag_suppress 1097") +#else + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES +#endif + +#if defined(JSON_HEDLEY_DIAGNOSTIC_DISABLE_CAST_QUAL) + #undef JSON_HEDLEY_DIAGNOSTIC_DISABLE_CAST_QUAL +#endif +#if JSON_HEDLEY_HAS_WARNING("-Wcast-qual") + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_CAST_QUAL _Pragma("clang diagnostic ignored \"-Wcast-qual\"") +#elif JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_CAST_QUAL _Pragma("warning(disable:2203 2331)") +#elif JSON_HEDLEY_GCC_VERSION_CHECK(3,0,0) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_CAST_QUAL _Pragma("GCC diagnostic ignored \"-Wcast-qual\"") +#else + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_CAST_QUAL +#endif + +#if defined(JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNUSED_FUNCTION) + #undef JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNUSED_FUNCTION +#endif +#if JSON_HEDLEY_HAS_WARNING("-Wunused-function") + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNUSED_FUNCTION _Pragma("clang diagnostic ignored \"-Wunused-function\"") +#elif JSON_HEDLEY_GCC_VERSION_CHECK(3,4,0) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNUSED_FUNCTION _Pragma("GCC diagnostic ignored \"-Wunused-function\"") +#elif JSON_HEDLEY_MSVC_VERSION_CHECK(1,0,0) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNUSED_FUNCTION __pragma(warning(disable:4505)) +#elif JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10) + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNUSED_FUNCTION _Pragma("diag_suppress 3142") +#else + #define JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNUSED_FUNCTION +#endif + +#if defined(JSON_HEDLEY_DEPRECATED) + #undef JSON_HEDLEY_DEPRECATED +#endif +#if defined(JSON_HEDLEY_DEPRECATED_FOR) + #undef JSON_HEDLEY_DEPRECATED_FOR +#endif +#if \ + JSON_HEDLEY_MSVC_VERSION_CHECK(14,0,0) || \ + JSON_HEDLEY_INTEL_CL_VERSION_CHECK(2021,1,0) + #define JSON_HEDLEY_DEPRECATED(since) __declspec(deprecated("Since " # since)) + #define JSON_HEDLEY_DEPRECATED_FOR(since, replacement) __declspec(deprecated("Since " #since "; use " #replacement)) +#elif \ + (JSON_HEDLEY_HAS_EXTENSION(attribute_deprecated_with_message) && !defined(JSON_HEDLEY_IAR_VERSION)) || \ + JSON_HEDLEY_GCC_VERSION_CHECK(4,5,0) || \ + JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) || \ + JSON_HEDLEY_ARM_VERSION_CHECK(5,6,0) || \ + JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,13,0) || \ + JSON_HEDLEY_PGI_VERSION_CHECK(17,10,0) || \ + JSON_HEDLEY_TI_VERSION_CHECK(18,1,0) || \ + JSON_HEDLEY_TI_ARMCL_VERSION_CHECK(18,1,0) || \ + JSON_HEDLEY_TI_CL6X_VERSION_CHECK(8,3,0) || \ + JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \ + JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,3,0) || \ + JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10) + #define JSON_HEDLEY_DEPRECATED(since) __attribute__((__deprecated__("Since " #since))) + #define JSON_HEDLEY_DEPRECATED_FOR(since, replacement) __attribute__((__deprecated__("Since " #since "; use " #replacement))) +#elif defined(__cplusplus) && (__cplusplus >= 201402L) + #define JSON_HEDLEY_DEPRECATED(since) JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_([[deprecated("Since " #since)]]) + #define JSON_HEDLEY_DEPRECATED_FOR(since, replacement) JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_([[deprecated("Since " #since "; use " #replacement)]]) +#elif \ + JSON_HEDLEY_HAS_ATTRIBUTE(deprecated) || \ + JSON_HEDLEY_GCC_VERSION_CHECK(3,1,0) || \ + JSON_HEDLEY_ARM_VERSION_CHECK(4,1,0) || \ + JSON_HEDLEY_TI_VERSION_CHECK(15,12,0) || \ + (JSON_HEDLEY_TI_ARMCL_VERSION_CHECK(4,8,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_ARMCL_VERSION_CHECK(5,2,0) || \ + (JSON_HEDLEY_TI_CL2000_VERSION_CHECK(6,0,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_CL2000_VERSION_CHECK(6,4,0) || \ + (JSON_HEDLEY_TI_CL430_VERSION_CHECK(4,0,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_CL430_VERSION_CHECK(4,3,0) || \ + (JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,2,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,5,0) || \ + JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \ + JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) || \ + JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10) || \ + JSON_HEDLEY_IAR_VERSION_CHECK(8,10,0) + #define JSON_HEDLEY_DEPRECATED(since) __attribute__((__deprecated__)) + #define JSON_HEDLEY_DEPRECATED_FOR(since, replacement) __attribute__((__deprecated__)) +#elif \ + JSON_HEDLEY_MSVC_VERSION_CHECK(13,10,0) || \ + JSON_HEDLEY_PELLES_VERSION_CHECK(6,50,0) || \ + JSON_HEDLEY_INTEL_CL_VERSION_CHECK(2021,1,0) + #define JSON_HEDLEY_DEPRECATED(since) __declspec(deprecated) + #define JSON_HEDLEY_DEPRECATED_FOR(since, replacement) __declspec(deprecated) +#elif JSON_HEDLEY_IAR_VERSION_CHECK(8,0,0) + #define JSON_HEDLEY_DEPRECATED(since) _Pragma("deprecated") + #define JSON_HEDLEY_DEPRECATED_FOR(since, replacement) _Pragma("deprecated") +#else + #define JSON_HEDLEY_DEPRECATED(since) + #define JSON_HEDLEY_DEPRECATED_FOR(since, replacement) +#endif + +#if defined(JSON_HEDLEY_UNAVAILABLE) + #undef JSON_HEDLEY_UNAVAILABLE +#endif +#if \ + JSON_HEDLEY_HAS_ATTRIBUTE(warning) || \ + JSON_HEDLEY_GCC_VERSION_CHECK(4,3,0) || \ + JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) || \ + JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10) + #define JSON_HEDLEY_UNAVAILABLE(available_since) __attribute__((__warning__("Not available until " #available_since))) +#else + #define JSON_HEDLEY_UNAVAILABLE(available_since) +#endif + +#if defined(JSON_HEDLEY_WARN_UNUSED_RESULT) + #undef JSON_HEDLEY_WARN_UNUSED_RESULT +#endif +#if defined(JSON_HEDLEY_WARN_UNUSED_RESULT_MSG) + #undef JSON_HEDLEY_WARN_UNUSED_RESULT_MSG +#endif +#if \ + JSON_HEDLEY_HAS_ATTRIBUTE(warn_unused_result) || \ + JSON_HEDLEY_GCC_VERSION_CHECK(3,4,0) || \ + JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) || \ + JSON_HEDLEY_TI_VERSION_CHECK(15,12,0) || \ + (JSON_HEDLEY_TI_ARMCL_VERSION_CHECK(4,8,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_ARMCL_VERSION_CHECK(5,2,0) || \ + (JSON_HEDLEY_TI_CL2000_VERSION_CHECK(6,0,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_CL2000_VERSION_CHECK(6,4,0) || \ + (JSON_HEDLEY_TI_CL430_VERSION_CHECK(4,0,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_CL430_VERSION_CHECK(4,3,0) || \ + (JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,2,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,5,0) || \ + JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \ + JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) || \ + (JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,15,0) && defined(__cplusplus)) || \ + JSON_HEDLEY_PGI_VERSION_CHECK(17,10,0) || \ + JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10) + #define JSON_HEDLEY_WARN_UNUSED_RESULT __attribute__((__warn_unused_result__)) + #define JSON_HEDLEY_WARN_UNUSED_RESULT_MSG(msg) __attribute__((__warn_unused_result__)) +#elif (JSON_HEDLEY_HAS_CPP_ATTRIBUTE(nodiscard) >= 201907L) + #define JSON_HEDLEY_WARN_UNUSED_RESULT JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_([[nodiscard]]) + #define JSON_HEDLEY_WARN_UNUSED_RESULT_MSG(msg) JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_([[nodiscard(msg)]]) +#elif JSON_HEDLEY_HAS_CPP_ATTRIBUTE(nodiscard) + #define JSON_HEDLEY_WARN_UNUSED_RESULT JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_([[nodiscard]]) + #define JSON_HEDLEY_WARN_UNUSED_RESULT_MSG(msg) JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_([[nodiscard]]) +#elif defined(_Check_return_) /* SAL */ + #define JSON_HEDLEY_WARN_UNUSED_RESULT _Check_return_ + #define JSON_HEDLEY_WARN_UNUSED_RESULT_MSG(msg) _Check_return_ +#else + #define JSON_HEDLEY_WARN_UNUSED_RESULT + #define JSON_HEDLEY_WARN_UNUSED_RESULT_MSG(msg) +#endif + +#if defined(JSON_HEDLEY_SENTINEL) + #undef JSON_HEDLEY_SENTINEL +#endif +#if \ + JSON_HEDLEY_HAS_ATTRIBUTE(sentinel) || \ + JSON_HEDLEY_GCC_VERSION_CHECK(4,0,0) || \ + JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) || \ + JSON_HEDLEY_ARM_VERSION_CHECK(5,4,0) || \ + JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10) + #define JSON_HEDLEY_SENTINEL(position) __attribute__((__sentinel__(position))) +#else + #define JSON_HEDLEY_SENTINEL(position) +#endif + +#if defined(JSON_HEDLEY_NO_RETURN) + #undef JSON_HEDLEY_NO_RETURN +#endif +#if JSON_HEDLEY_IAR_VERSION_CHECK(8,0,0) + #define JSON_HEDLEY_NO_RETURN __noreturn +#elif \ + JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) || \ + JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10) + #define JSON_HEDLEY_NO_RETURN __attribute__((__noreturn__)) +#elif defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L + #define JSON_HEDLEY_NO_RETURN _Noreturn +#elif defined(__cplusplus) && (__cplusplus >= 201103L) + #define JSON_HEDLEY_NO_RETURN JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_([[noreturn]]) +#elif \ + JSON_HEDLEY_HAS_ATTRIBUTE(noreturn) || \ + JSON_HEDLEY_GCC_VERSION_CHECK(3,2,0) || \ + JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,11,0) || \ + JSON_HEDLEY_ARM_VERSION_CHECK(4,1,0) || \ + JSON_HEDLEY_IBM_VERSION_CHECK(10,1,0) || \ + JSON_HEDLEY_TI_VERSION_CHECK(15,12,0) || \ + (JSON_HEDLEY_TI_ARMCL_VERSION_CHECK(4,8,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_ARMCL_VERSION_CHECK(5,2,0) || \ + (JSON_HEDLEY_TI_CL2000_VERSION_CHECK(6,0,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_CL2000_VERSION_CHECK(6,4,0) || \ + (JSON_HEDLEY_TI_CL430_VERSION_CHECK(4,0,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_CL430_VERSION_CHECK(4,3,0) || \ + (JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,2,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,5,0) || \ + JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \ + JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) || \ + JSON_HEDLEY_IAR_VERSION_CHECK(8,10,0) + #define JSON_HEDLEY_NO_RETURN __attribute__((__noreturn__)) +#elif JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,10,0) + #define JSON_HEDLEY_NO_RETURN _Pragma("does_not_return") +#elif \ + JSON_HEDLEY_MSVC_VERSION_CHECK(13,10,0) || \ + JSON_HEDLEY_INTEL_CL_VERSION_CHECK(2021,1,0) + #define JSON_HEDLEY_NO_RETURN __declspec(noreturn) +#elif JSON_HEDLEY_TI_CL6X_VERSION_CHECK(6,0,0) && defined(__cplusplus) + #define JSON_HEDLEY_NO_RETURN _Pragma("FUNC_NEVER_RETURNS;") +#elif JSON_HEDLEY_COMPCERT_VERSION_CHECK(3,2,0) + #define JSON_HEDLEY_NO_RETURN __attribute((noreturn)) +#elif JSON_HEDLEY_PELLES_VERSION_CHECK(9,0,0) + #define JSON_HEDLEY_NO_RETURN __declspec(noreturn) +#else + #define JSON_HEDLEY_NO_RETURN +#endif + +#if defined(JSON_HEDLEY_NO_ESCAPE) + #undef JSON_HEDLEY_NO_ESCAPE +#endif +#if JSON_HEDLEY_HAS_ATTRIBUTE(noescape) + #define JSON_HEDLEY_NO_ESCAPE __attribute__((__noescape__)) +#else + #define JSON_HEDLEY_NO_ESCAPE +#endif + +#if defined(JSON_HEDLEY_UNREACHABLE) + #undef JSON_HEDLEY_UNREACHABLE +#endif +#if defined(JSON_HEDLEY_UNREACHABLE_RETURN) + #undef JSON_HEDLEY_UNREACHABLE_RETURN +#endif +#if defined(JSON_HEDLEY_ASSUME) + #undef JSON_HEDLEY_ASSUME +#endif +#if \ + JSON_HEDLEY_MSVC_VERSION_CHECK(13,10,0) || \ + JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) || \ + JSON_HEDLEY_INTEL_CL_VERSION_CHECK(2021,1,0) + #define JSON_HEDLEY_ASSUME(expr) __assume(expr) +#elif JSON_HEDLEY_HAS_BUILTIN(__builtin_assume) + #define JSON_HEDLEY_ASSUME(expr) __builtin_assume(expr) +#elif \ + JSON_HEDLEY_TI_CL2000_VERSION_CHECK(6,2,0) || \ + JSON_HEDLEY_TI_CL6X_VERSION_CHECK(4,0,0) + #if defined(__cplusplus) + #define JSON_HEDLEY_ASSUME(expr) std::_nassert(expr) + #else + #define JSON_HEDLEY_ASSUME(expr) _nassert(expr) + #endif +#endif +#if \ + (JSON_HEDLEY_HAS_BUILTIN(__builtin_unreachable) && (!defined(JSON_HEDLEY_ARM_VERSION))) || \ + JSON_HEDLEY_GCC_VERSION_CHECK(4,5,0) || \ + JSON_HEDLEY_PGI_VERSION_CHECK(18,10,0) || \ + JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) || \ + JSON_HEDLEY_IBM_VERSION_CHECK(13,1,5) || \ + JSON_HEDLEY_CRAY_VERSION_CHECK(10,0,0) || \ + JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10) + #define JSON_HEDLEY_UNREACHABLE() __builtin_unreachable() +#elif defined(JSON_HEDLEY_ASSUME) + #define JSON_HEDLEY_UNREACHABLE() JSON_HEDLEY_ASSUME(0) +#endif +#if !defined(JSON_HEDLEY_ASSUME) + #if defined(JSON_HEDLEY_UNREACHABLE) + #define JSON_HEDLEY_ASSUME(expr) JSON_HEDLEY_STATIC_CAST(void, ((expr) ? 1 : (JSON_HEDLEY_UNREACHABLE(), 1))) + #else + #define JSON_HEDLEY_ASSUME(expr) JSON_HEDLEY_STATIC_CAST(void, expr) + #endif +#endif +#if defined(JSON_HEDLEY_UNREACHABLE) + #if \ + JSON_HEDLEY_TI_CL2000_VERSION_CHECK(6,2,0) || \ + JSON_HEDLEY_TI_CL6X_VERSION_CHECK(4,0,0) + #define JSON_HEDLEY_UNREACHABLE_RETURN(value) return (JSON_HEDLEY_STATIC_CAST(void, JSON_HEDLEY_ASSUME(0)), (value)) + #else + #define JSON_HEDLEY_UNREACHABLE_RETURN(value) JSON_HEDLEY_UNREACHABLE() + #endif +#else + #define JSON_HEDLEY_UNREACHABLE_RETURN(value) return (value) +#endif +#if !defined(JSON_HEDLEY_UNREACHABLE) + #define JSON_HEDLEY_UNREACHABLE() JSON_HEDLEY_ASSUME(0) +#endif + +JSON_HEDLEY_DIAGNOSTIC_PUSH +#if JSON_HEDLEY_HAS_WARNING("-Wpedantic") + #pragma clang diagnostic ignored "-Wpedantic" +#endif +#if JSON_HEDLEY_HAS_WARNING("-Wc++98-compat-pedantic") && defined(__cplusplus) + #pragma clang diagnostic ignored "-Wc++98-compat-pedantic" +#endif +#if JSON_HEDLEY_GCC_HAS_WARNING("-Wvariadic-macros",4,0,0) + #if defined(__clang__) + #pragma clang diagnostic ignored "-Wvariadic-macros" + #elif defined(JSON_HEDLEY_GCC_VERSION) + #pragma GCC diagnostic ignored "-Wvariadic-macros" + #endif +#endif +#if defined(JSON_HEDLEY_NON_NULL) + #undef JSON_HEDLEY_NON_NULL +#endif +#if \ + JSON_HEDLEY_HAS_ATTRIBUTE(nonnull) || \ + JSON_HEDLEY_GCC_VERSION_CHECK(3,3,0) || \ + JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) || \ + JSON_HEDLEY_ARM_VERSION_CHECK(4,1,0) + #define JSON_HEDLEY_NON_NULL(...) __attribute__((__nonnull__(__VA_ARGS__))) +#else + #define JSON_HEDLEY_NON_NULL(...) +#endif +JSON_HEDLEY_DIAGNOSTIC_POP + +#if defined(JSON_HEDLEY_PRINTF_FORMAT) + #undef JSON_HEDLEY_PRINTF_FORMAT +#endif +#if defined(__MINGW32__) && JSON_HEDLEY_GCC_HAS_ATTRIBUTE(format,4,4,0) && !defined(__USE_MINGW_ANSI_STDIO) + #define JSON_HEDLEY_PRINTF_FORMAT(string_idx,first_to_check) __attribute__((__format__(ms_printf, string_idx, first_to_check))) +#elif defined(__MINGW32__) && JSON_HEDLEY_GCC_HAS_ATTRIBUTE(format,4,4,0) && defined(__USE_MINGW_ANSI_STDIO) + #define JSON_HEDLEY_PRINTF_FORMAT(string_idx,first_to_check) __attribute__((__format__(gnu_printf, string_idx, first_to_check))) +#elif \ + JSON_HEDLEY_HAS_ATTRIBUTE(format) || \ + JSON_HEDLEY_GCC_VERSION_CHECK(3,1,0) || \ + JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) || \ + JSON_HEDLEY_ARM_VERSION_CHECK(5,6,0) || \ + JSON_HEDLEY_IBM_VERSION_CHECK(10,1,0) || \ + JSON_HEDLEY_TI_VERSION_CHECK(15,12,0) || \ + (JSON_HEDLEY_TI_ARMCL_VERSION_CHECK(4,8,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_ARMCL_VERSION_CHECK(5,2,0) || \ + (JSON_HEDLEY_TI_CL2000_VERSION_CHECK(6,0,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_CL2000_VERSION_CHECK(6,4,0) || \ + (JSON_HEDLEY_TI_CL430_VERSION_CHECK(4,0,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_CL430_VERSION_CHECK(4,3,0) || \ + (JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,2,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,5,0) || \ + JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \ + JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) || \ + JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10) + #define JSON_HEDLEY_PRINTF_FORMAT(string_idx,first_to_check) __attribute__((__format__(__printf__, string_idx, first_to_check))) +#elif JSON_HEDLEY_PELLES_VERSION_CHECK(6,0,0) + #define JSON_HEDLEY_PRINTF_FORMAT(string_idx,first_to_check) __declspec(vaformat(printf,string_idx,first_to_check)) +#else + #define JSON_HEDLEY_PRINTF_FORMAT(string_idx,first_to_check) +#endif + +#if defined(JSON_HEDLEY_CONSTEXPR) + #undef JSON_HEDLEY_CONSTEXPR +#endif +#if defined(__cplusplus) + #if __cplusplus >= 201103L + #define JSON_HEDLEY_CONSTEXPR JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_(constexpr) + #endif +#endif +#if !defined(JSON_HEDLEY_CONSTEXPR) + #define JSON_HEDLEY_CONSTEXPR +#endif + +#if defined(JSON_HEDLEY_PREDICT) + #undef JSON_HEDLEY_PREDICT +#endif +#if defined(JSON_HEDLEY_LIKELY) + #undef JSON_HEDLEY_LIKELY +#endif +#if defined(JSON_HEDLEY_UNLIKELY) + #undef JSON_HEDLEY_UNLIKELY +#endif +#if defined(JSON_HEDLEY_UNPREDICTABLE) + #undef JSON_HEDLEY_UNPREDICTABLE +#endif +#if JSON_HEDLEY_HAS_BUILTIN(__builtin_unpredictable) + #define JSON_HEDLEY_UNPREDICTABLE(expr) __builtin_unpredictable((expr)) +#endif +#if \ + (JSON_HEDLEY_HAS_BUILTIN(__builtin_expect_with_probability) && !defined(JSON_HEDLEY_PGI_VERSION)) || \ + JSON_HEDLEY_GCC_VERSION_CHECK(9,0,0) || \ + JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10) +# define JSON_HEDLEY_PREDICT(expr, value, probability) __builtin_expect_with_probability( (expr), (value), (probability)) +# define JSON_HEDLEY_PREDICT_TRUE(expr, probability) __builtin_expect_with_probability(!!(expr), 1 , (probability)) +# define JSON_HEDLEY_PREDICT_FALSE(expr, probability) __builtin_expect_with_probability(!!(expr), 0 , (probability)) +# define JSON_HEDLEY_LIKELY(expr) __builtin_expect (!!(expr), 1 ) +# define JSON_HEDLEY_UNLIKELY(expr) __builtin_expect (!!(expr), 0 ) +#elif \ + (JSON_HEDLEY_HAS_BUILTIN(__builtin_expect) && !defined(JSON_HEDLEY_INTEL_CL_VERSION)) || \ + JSON_HEDLEY_GCC_VERSION_CHECK(3,0,0) || \ + JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) || \ + (JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,15,0) && defined(__cplusplus)) || \ + JSON_HEDLEY_ARM_VERSION_CHECK(4,1,0) || \ + JSON_HEDLEY_IBM_VERSION_CHECK(10,1,0) || \ + JSON_HEDLEY_TI_VERSION_CHECK(15,12,0) || \ + JSON_HEDLEY_TI_ARMCL_VERSION_CHECK(4,7,0) || \ + JSON_HEDLEY_TI_CL430_VERSION_CHECK(3,1,0) || \ + JSON_HEDLEY_TI_CL2000_VERSION_CHECK(6,1,0) || \ + JSON_HEDLEY_TI_CL6X_VERSION_CHECK(6,1,0) || \ + JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \ + JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) || \ + JSON_HEDLEY_TINYC_VERSION_CHECK(0,9,27) || \ + JSON_HEDLEY_CRAY_VERSION_CHECK(8,1,0) || \ + JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10) +# define JSON_HEDLEY_PREDICT(expr, expected, probability) \ + (((probability) >= 0.9) ? __builtin_expect((expr), (expected)) : (JSON_HEDLEY_STATIC_CAST(void, expected), (expr))) +# define JSON_HEDLEY_PREDICT_TRUE(expr, probability) \ + (__extension__ ({ \ + double hedley_probability_ = (probability); \ + ((hedley_probability_ >= 0.9) ? __builtin_expect(!!(expr), 1) : ((hedley_probability_ <= 0.1) ? __builtin_expect(!!(expr), 0) : !!(expr))); \ + })) +# define JSON_HEDLEY_PREDICT_FALSE(expr, probability) \ + (__extension__ ({ \ + double hedley_probability_ = (probability); \ + ((hedley_probability_ >= 0.9) ? __builtin_expect(!!(expr), 0) : ((hedley_probability_ <= 0.1) ? __builtin_expect(!!(expr), 1) : !!(expr))); \ + })) +# define JSON_HEDLEY_LIKELY(expr) __builtin_expect(!!(expr), 1) +# define JSON_HEDLEY_UNLIKELY(expr) __builtin_expect(!!(expr), 0) +#else +# define JSON_HEDLEY_PREDICT(expr, expected, probability) (JSON_HEDLEY_STATIC_CAST(void, expected), (expr)) +# define JSON_HEDLEY_PREDICT_TRUE(expr, probability) (!!(expr)) +# define JSON_HEDLEY_PREDICT_FALSE(expr, probability) (!!(expr)) +# define JSON_HEDLEY_LIKELY(expr) (!!(expr)) +# define JSON_HEDLEY_UNLIKELY(expr) (!!(expr)) +#endif +#if !defined(JSON_HEDLEY_UNPREDICTABLE) + #define JSON_HEDLEY_UNPREDICTABLE(expr) JSON_HEDLEY_PREDICT(expr, 1, 0.5) +#endif + +#if defined(JSON_HEDLEY_MALLOC) + #undef JSON_HEDLEY_MALLOC +#endif +#if \ + JSON_HEDLEY_HAS_ATTRIBUTE(malloc) || \ + JSON_HEDLEY_GCC_VERSION_CHECK(3,1,0) || \ + JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) || \ + JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,11,0) || \ + JSON_HEDLEY_ARM_VERSION_CHECK(4,1,0) || \ + JSON_HEDLEY_IBM_VERSION_CHECK(12,1,0) || \ + JSON_HEDLEY_TI_VERSION_CHECK(15,12,0) || \ + (JSON_HEDLEY_TI_ARMCL_VERSION_CHECK(4,8,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_ARMCL_VERSION_CHECK(5,2,0) || \ + (JSON_HEDLEY_TI_CL2000_VERSION_CHECK(6,0,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_CL2000_VERSION_CHECK(6,4,0) || \ + (JSON_HEDLEY_TI_CL430_VERSION_CHECK(4,0,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_CL430_VERSION_CHECK(4,3,0) || \ + (JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,2,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,5,0) || \ + JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \ + JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) || \ + JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10) + #define JSON_HEDLEY_MALLOC __attribute__((__malloc__)) +#elif JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,10,0) + #define JSON_HEDLEY_MALLOC _Pragma("returns_new_memory") +#elif \ + JSON_HEDLEY_MSVC_VERSION_CHECK(14,0,0) || \ + JSON_HEDLEY_INTEL_CL_VERSION_CHECK(2021,1,0) + #define JSON_HEDLEY_MALLOC __declspec(restrict) +#else + #define JSON_HEDLEY_MALLOC +#endif + +#if defined(JSON_HEDLEY_PURE) + #undef JSON_HEDLEY_PURE +#endif +#if \ + JSON_HEDLEY_HAS_ATTRIBUTE(pure) || \ + JSON_HEDLEY_GCC_VERSION_CHECK(2,96,0) || \ + JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) || \ + JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,11,0) || \ + JSON_HEDLEY_ARM_VERSION_CHECK(4,1,0) || \ + JSON_HEDLEY_IBM_VERSION_CHECK(10,1,0) || \ + JSON_HEDLEY_TI_VERSION_CHECK(15,12,0) || \ + (JSON_HEDLEY_TI_ARMCL_VERSION_CHECK(4,8,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_ARMCL_VERSION_CHECK(5,2,0) || \ + (JSON_HEDLEY_TI_CL2000_VERSION_CHECK(6,0,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_CL2000_VERSION_CHECK(6,4,0) || \ + (JSON_HEDLEY_TI_CL430_VERSION_CHECK(4,0,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_CL430_VERSION_CHECK(4,3,0) || \ + (JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,2,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,5,0) || \ + JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \ + JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) || \ + JSON_HEDLEY_PGI_VERSION_CHECK(17,10,0) || \ + JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10) +# define JSON_HEDLEY_PURE __attribute__((__pure__)) +#elif JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,10,0) +# define JSON_HEDLEY_PURE _Pragma("does_not_write_global_data") +#elif defined(__cplusplus) && \ + ( \ + JSON_HEDLEY_TI_CL430_VERSION_CHECK(2,0,1) || \ + JSON_HEDLEY_TI_CL6X_VERSION_CHECK(4,0,0) || \ + JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) \ + ) +# define JSON_HEDLEY_PURE _Pragma("FUNC_IS_PURE;") +#else +# define JSON_HEDLEY_PURE +#endif + +#if defined(JSON_HEDLEY_CONST) + #undef JSON_HEDLEY_CONST +#endif +#if \ + JSON_HEDLEY_HAS_ATTRIBUTE(const) || \ + JSON_HEDLEY_GCC_VERSION_CHECK(2,5,0) || \ + JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) || \ + JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,11,0) || \ + JSON_HEDLEY_ARM_VERSION_CHECK(4,1,0) || \ + JSON_HEDLEY_IBM_VERSION_CHECK(10,1,0) || \ + JSON_HEDLEY_TI_VERSION_CHECK(15,12,0) || \ + (JSON_HEDLEY_TI_ARMCL_VERSION_CHECK(4,8,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_ARMCL_VERSION_CHECK(5,2,0) || \ + (JSON_HEDLEY_TI_CL2000_VERSION_CHECK(6,0,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_CL2000_VERSION_CHECK(6,4,0) || \ + (JSON_HEDLEY_TI_CL430_VERSION_CHECK(4,0,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_CL430_VERSION_CHECK(4,3,0) || \ + (JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,2,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,5,0) || \ + JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \ + JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) || \ + JSON_HEDLEY_PGI_VERSION_CHECK(17,10,0) || \ + JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10) + #define JSON_HEDLEY_CONST __attribute__((__const__)) +#elif \ + JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,10,0) + #define JSON_HEDLEY_CONST _Pragma("no_side_effect") +#else + #define JSON_HEDLEY_CONST JSON_HEDLEY_PURE +#endif + +#if defined(JSON_HEDLEY_RESTRICT) + #undef JSON_HEDLEY_RESTRICT +#endif +#if defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L) && !defined(__cplusplus) + #define JSON_HEDLEY_RESTRICT restrict +#elif \ + JSON_HEDLEY_GCC_VERSION_CHECK(3,1,0) || \ + JSON_HEDLEY_MSVC_VERSION_CHECK(14,0,0) || \ + JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) || \ + JSON_HEDLEY_INTEL_CL_VERSION_CHECK(2021,1,0) || \ + JSON_HEDLEY_ARM_VERSION_CHECK(4,1,0) || \ + JSON_HEDLEY_IBM_VERSION_CHECK(10,1,0) || \ + JSON_HEDLEY_PGI_VERSION_CHECK(17,10,0) || \ + JSON_HEDLEY_TI_CL430_VERSION_CHECK(4,3,0) || \ + JSON_HEDLEY_TI_CL2000_VERSION_CHECK(6,2,4) || \ + JSON_HEDLEY_TI_CL6X_VERSION_CHECK(8,1,0) || \ + JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \ + (JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,14,0) && defined(__cplusplus)) || \ + JSON_HEDLEY_IAR_VERSION_CHECK(8,0,0) || \ + defined(__clang__) || \ + JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10) + #define JSON_HEDLEY_RESTRICT __restrict +#elif JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,3,0) && !defined(__cplusplus) + #define JSON_HEDLEY_RESTRICT _Restrict +#else + #define JSON_HEDLEY_RESTRICT +#endif + +#if defined(JSON_HEDLEY_INLINE) + #undef JSON_HEDLEY_INLINE +#endif +#if \ + (defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L)) || \ + (defined(__cplusplus) && (__cplusplus >= 199711L)) + #define JSON_HEDLEY_INLINE inline +#elif \ + defined(JSON_HEDLEY_GCC_VERSION) || \ + JSON_HEDLEY_ARM_VERSION_CHECK(6,2,0) + #define JSON_HEDLEY_INLINE __inline__ +#elif \ + JSON_HEDLEY_MSVC_VERSION_CHECK(12,0,0) || \ + JSON_HEDLEY_INTEL_CL_VERSION_CHECK(2021,1,0) || \ + JSON_HEDLEY_ARM_VERSION_CHECK(4,1,0) || \ + JSON_HEDLEY_TI_ARMCL_VERSION_CHECK(5,1,0) || \ + JSON_HEDLEY_TI_CL430_VERSION_CHECK(3,1,0) || \ + JSON_HEDLEY_TI_CL2000_VERSION_CHECK(6,2,0) || \ + JSON_HEDLEY_TI_CL6X_VERSION_CHECK(8,0,0) || \ + JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \ + JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) || \ + JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10) + #define JSON_HEDLEY_INLINE __inline +#else + #define JSON_HEDLEY_INLINE +#endif + +#if defined(JSON_HEDLEY_ALWAYS_INLINE) + #undef JSON_HEDLEY_ALWAYS_INLINE +#endif +#if \ + JSON_HEDLEY_HAS_ATTRIBUTE(always_inline) || \ + JSON_HEDLEY_GCC_VERSION_CHECK(4,0,0) || \ + JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) || \ + JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,11,0) || \ + JSON_HEDLEY_ARM_VERSION_CHECK(4,1,0) || \ + JSON_HEDLEY_IBM_VERSION_CHECK(10,1,0) || \ + JSON_HEDLEY_TI_VERSION_CHECK(15,12,0) || \ + (JSON_HEDLEY_TI_ARMCL_VERSION_CHECK(4,8,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_ARMCL_VERSION_CHECK(5,2,0) || \ + (JSON_HEDLEY_TI_CL2000_VERSION_CHECK(6,0,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_CL2000_VERSION_CHECK(6,4,0) || \ + (JSON_HEDLEY_TI_CL430_VERSION_CHECK(4,0,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_CL430_VERSION_CHECK(4,3,0) || \ + (JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,2,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,5,0) || \ + JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \ + JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) || \ + JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10) || \ + JSON_HEDLEY_IAR_VERSION_CHECK(8,10,0) +# define JSON_HEDLEY_ALWAYS_INLINE __attribute__((__always_inline__)) JSON_HEDLEY_INLINE +#elif \ + JSON_HEDLEY_MSVC_VERSION_CHECK(12,0,0) || \ + JSON_HEDLEY_INTEL_CL_VERSION_CHECK(2021,1,0) +# define JSON_HEDLEY_ALWAYS_INLINE __forceinline +#elif defined(__cplusplus) && \ + ( \ + JSON_HEDLEY_TI_ARMCL_VERSION_CHECK(5,2,0) || \ + JSON_HEDLEY_TI_CL430_VERSION_CHECK(4,3,0) || \ + JSON_HEDLEY_TI_CL2000_VERSION_CHECK(6,4,0) || \ + JSON_HEDLEY_TI_CL6X_VERSION_CHECK(6,1,0) || \ + JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \ + JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) \ + ) +# define JSON_HEDLEY_ALWAYS_INLINE _Pragma("FUNC_ALWAYS_INLINE;") +#elif JSON_HEDLEY_IAR_VERSION_CHECK(8,0,0) +# define JSON_HEDLEY_ALWAYS_INLINE _Pragma("inline=forced") +#else +# define JSON_HEDLEY_ALWAYS_INLINE JSON_HEDLEY_INLINE +#endif + +#if defined(JSON_HEDLEY_NEVER_INLINE) + #undef JSON_HEDLEY_NEVER_INLINE +#endif +#if \ + JSON_HEDLEY_HAS_ATTRIBUTE(noinline) || \ + JSON_HEDLEY_GCC_VERSION_CHECK(4,0,0) || \ + JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) || \ + JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,11,0) || \ + JSON_HEDLEY_ARM_VERSION_CHECK(4,1,0) || \ + JSON_HEDLEY_IBM_VERSION_CHECK(10,1,0) || \ + JSON_HEDLEY_TI_VERSION_CHECK(15,12,0) || \ + (JSON_HEDLEY_TI_ARMCL_VERSION_CHECK(4,8,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_ARMCL_VERSION_CHECK(5,2,0) || \ + (JSON_HEDLEY_TI_CL2000_VERSION_CHECK(6,0,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_CL2000_VERSION_CHECK(6,4,0) || \ + (JSON_HEDLEY_TI_CL430_VERSION_CHECK(4,0,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_CL430_VERSION_CHECK(4,3,0) || \ + (JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,2,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,5,0) || \ + JSON_HEDLEY_TI_CL7X_VERSION_CHECK(1,2,0) || \ + JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(2,1,0) || \ + JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10) || \ + JSON_HEDLEY_IAR_VERSION_CHECK(8,10,0) + #define JSON_HEDLEY_NEVER_INLINE __attribute__((__noinline__)) +#elif \ + JSON_HEDLEY_MSVC_VERSION_CHECK(13,10,0) || \ + JSON_HEDLEY_INTEL_CL_VERSION_CHECK(2021,1,0) + #define JSON_HEDLEY_NEVER_INLINE __declspec(noinline) +#elif JSON_HEDLEY_PGI_VERSION_CHECK(10,2,0) + #define JSON_HEDLEY_NEVER_INLINE _Pragma("noinline") +#elif JSON_HEDLEY_TI_CL6X_VERSION_CHECK(6,0,0) && defined(__cplusplus) + #define JSON_HEDLEY_NEVER_INLINE _Pragma("FUNC_CANNOT_INLINE;") +#elif JSON_HEDLEY_IAR_VERSION_CHECK(8,0,0) + #define JSON_HEDLEY_NEVER_INLINE _Pragma("inline=never") +#elif JSON_HEDLEY_COMPCERT_VERSION_CHECK(3,2,0) + #define JSON_HEDLEY_NEVER_INLINE __attribute((noinline)) +#elif JSON_HEDLEY_PELLES_VERSION_CHECK(9,0,0) + #define JSON_HEDLEY_NEVER_INLINE __declspec(noinline) +#else + #define JSON_HEDLEY_NEVER_INLINE +#endif + +#if defined(JSON_HEDLEY_PRIVATE) + #undef JSON_HEDLEY_PRIVATE +#endif +#if defined(JSON_HEDLEY_PUBLIC) + #undef JSON_HEDLEY_PUBLIC +#endif +#if defined(JSON_HEDLEY_IMPORT) + #undef JSON_HEDLEY_IMPORT +#endif +#if defined(_WIN32) || defined(__CYGWIN__) +# define JSON_HEDLEY_PRIVATE +# define JSON_HEDLEY_PUBLIC __declspec(dllexport) +# define JSON_HEDLEY_IMPORT __declspec(dllimport) +#else +# if \ + JSON_HEDLEY_HAS_ATTRIBUTE(visibility) || \ + JSON_HEDLEY_GCC_VERSION_CHECK(3,3,0) || \ + JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,11,0) || \ + JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) || \ + JSON_HEDLEY_ARM_VERSION_CHECK(4,1,0) || \ + JSON_HEDLEY_IBM_VERSION_CHECK(13,1,0) || \ + ( \ + defined(__TI_EABI__) && \ + ( \ + (JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,2,0) && defined(__TI_GNU_ATTRIBUTE_SUPPORT__)) || \ + JSON_HEDLEY_TI_CL6X_VERSION_CHECK(7,5,0) \ + ) \ + ) || \ + JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10) +# define JSON_HEDLEY_PRIVATE __attribute__((__visibility__("hidden"))) +# define JSON_HEDLEY_PUBLIC __attribute__((__visibility__("default"))) +# else +# define JSON_HEDLEY_PRIVATE +# define JSON_HEDLEY_PUBLIC +# endif +# define JSON_HEDLEY_IMPORT extern +#endif + +#if defined(JSON_HEDLEY_NO_THROW) + #undef JSON_HEDLEY_NO_THROW +#endif +#if \ + JSON_HEDLEY_HAS_ATTRIBUTE(nothrow) || \ + JSON_HEDLEY_GCC_VERSION_CHECK(3,3,0) || \ + JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) || \ + JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10) + #define JSON_HEDLEY_NO_THROW __attribute__((__nothrow__)) +#elif \ + JSON_HEDLEY_MSVC_VERSION_CHECK(13,1,0) || \ + JSON_HEDLEY_INTEL_CL_VERSION_CHECK(2021,1,0) || \ + JSON_HEDLEY_ARM_VERSION_CHECK(4,1,0) + #define JSON_HEDLEY_NO_THROW __declspec(nothrow) +#else + #define JSON_HEDLEY_NO_THROW +#endif + +#if defined(JSON_HEDLEY_FALL_THROUGH) + #undef JSON_HEDLEY_FALL_THROUGH +#endif +#if \ + JSON_HEDLEY_HAS_ATTRIBUTE(fallthrough) || \ + JSON_HEDLEY_GCC_VERSION_CHECK(7,0,0) || \ + JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10) + #define JSON_HEDLEY_FALL_THROUGH __attribute__((__fallthrough__)) +#elif JSON_HEDLEY_HAS_CPP_ATTRIBUTE_NS(clang,fallthrough) + #define JSON_HEDLEY_FALL_THROUGH JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_([[clang::fallthrough]]) +#elif JSON_HEDLEY_HAS_CPP_ATTRIBUTE(fallthrough) + #define JSON_HEDLEY_FALL_THROUGH JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_([[fallthrough]]) +#elif defined(__fallthrough) /* SAL */ + #define JSON_HEDLEY_FALL_THROUGH __fallthrough +#else + #define JSON_HEDLEY_FALL_THROUGH +#endif + +#if defined(JSON_HEDLEY_RETURNS_NON_NULL) + #undef JSON_HEDLEY_RETURNS_NON_NULL +#endif +#if \ + JSON_HEDLEY_HAS_ATTRIBUTE(returns_nonnull) || \ + JSON_HEDLEY_GCC_VERSION_CHECK(4,9,0) || \ + JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10) + #define JSON_HEDLEY_RETURNS_NON_NULL __attribute__((__returns_nonnull__)) +#elif defined(_Ret_notnull_) /* SAL */ + #define JSON_HEDLEY_RETURNS_NON_NULL _Ret_notnull_ +#else + #define JSON_HEDLEY_RETURNS_NON_NULL +#endif + +#if defined(JSON_HEDLEY_ARRAY_PARAM) + #undef JSON_HEDLEY_ARRAY_PARAM +#endif +#if \ + defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L) && \ + !defined(__STDC_NO_VLA__) && \ + !defined(__cplusplus) && \ + !defined(JSON_HEDLEY_PGI_VERSION) && \ + !defined(JSON_HEDLEY_TINYC_VERSION) + #define JSON_HEDLEY_ARRAY_PARAM(name) (name) +#else + #define JSON_HEDLEY_ARRAY_PARAM(name) +#endif + +#if defined(JSON_HEDLEY_IS_CONSTANT) + #undef JSON_HEDLEY_IS_CONSTANT +#endif +#if defined(JSON_HEDLEY_REQUIRE_CONSTEXPR) + #undef JSON_HEDLEY_REQUIRE_CONSTEXPR +#endif +/* JSON_HEDLEY_IS_CONSTEXPR_ is for + HEDLEY INTERNAL USE ONLY. API subject to change without notice. */ +#if defined(JSON_HEDLEY_IS_CONSTEXPR_) + #undef JSON_HEDLEY_IS_CONSTEXPR_ +#endif +#if \ + JSON_HEDLEY_HAS_BUILTIN(__builtin_constant_p) || \ + JSON_HEDLEY_GCC_VERSION_CHECK(3,4,0) || \ + JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) || \ + JSON_HEDLEY_TINYC_VERSION_CHECK(0,9,19) || \ + JSON_HEDLEY_ARM_VERSION_CHECK(4,1,0) || \ + JSON_HEDLEY_IBM_VERSION_CHECK(13,1,0) || \ + JSON_HEDLEY_TI_CL6X_VERSION_CHECK(6,1,0) || \ + (JSON_HEDLEY_SUNPRO_VERSION_CHECK(5,10,0) && !defined(__cplusplus)) || \ + JSON_HEDLEY_CRAY_VERSION_CHECK(8,1,0) || \ + JSON_HEDLEY_MCST_LCC_VERSION_CHECK(1,25,10) + #define JSON_HEDLEY_IS_CONSTANT(expr) __builtin_constant_p(expr) +#endif +#if !defined(__cplusplus) +# if \ + JSON_HEDLEY_HAS_BUILTIN(__builtin_types_compatible_p) || \ + JSON_HEDLEY_GCC_VERSION_CHECK(3,4,0) || \ + JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) || \ + JSON_HEDLEY_IBM_VERSION_CHECK(13,1,0) || \ + JSON_HEDLEY_CRAY_VERSION_CHECK(8,1,0) || \ + JSON_HEDLEY_ARM_VERSION_CHECK(5,4,0) || \ + JSON_HEDLEY_TINYC_VERSION_CHECK(0,9,24) +#if defined(__INTPTR_TYPE__) + #define JSON_HEDLEY_IS_CONSTEXPR_(expr) __builtin_types_compatible_p(__typeof__((1 ? (void*) ((__INTPTR_TYPE__) ((expr) * 0)) : (int*) 0)), int*) +#else + #include + #define JSON_HEDLEY_IS_CONSTEXPR_(expr) __builtin_types_compatible_p(__typeof__((1 ? (void*) ((intptr_t) ((expr) * 0)) : (int*) 0)), int*) +#endif +# elif \ + ( \ + defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 201112L) && \ + !defined(JSON_HEDLEY_SUNPRO_VERSION) && \ + !defined(JSON_HEDLEY_PGI_VERSION) && \ + !defined(JSON_HEDLEY_IAR_VERSION)) || \ + (JSON_HEDLEY_HAS_EXTENSION(c_generic_selections) && !defined(JSON_HEDLEY_IAR_VERSION)) || \ + JSON_HEDLEY_GCC_VERSION_CHECK(4,9,0) || \ + JSON_HEDLEY_INTEL_VERSION_CHECK(17,0,0) || \ + JSON_HEDLEY_IBM_VERSION_CHECK(12,1,0) || \ + JSON_HEDLEY_ARM_VERSION_CHECK(5,3,0) +#if defined(__INTPTR_TYPE__) + #define JSON_HEDLEY_IS_CONSTEXPR_(expr) _Generic((1 ? (void*) ((__INTPTR_TYPE__) ((expr) * 0)) : (int*) 0), int*: 1, void*: 0) +#else + #include + #define JSON_HEDLEY_IS_CONSTEXPR_(expr) _Generic((1 ? (void*) ((intptr_t) * 0) : (int*) 0), int*: 1, void*: 0) +#endif +# elif \ + defined(JSON_HEDLEY_GCC_VERSION) || \ + defined(JSON_HEDLEY_INTEL_VERSION) || \ + defined(JSON_HEDLEY_TINYC_VERSION) || \ + defined(JSON_HEDLEY_TI_ARMCL_VERSION) || \ + JSON_HEDLEY_TI_CL430_VERSION_CHECK(18,12,0) || \ + defined(JSON_HEDLEY_TI_CL2000_VERSION) || \ + defined(JSON_HEDLEY_TI_CL6X_VERSION) || \ + defined(JSON_HEDLEY_TI_CL7X_VERSION) || \ + defined(JSON_HEDLEY_TI_CLPRU_VERSION) || \ + defined(__clang__) +# define JSON_HEDLEY_IS_CONSTEXPR_(expr) ( \ + sizeof(void) != \ + sizeof(*( \ + 1 ? \ + ((void*) ((expr) * 0L) ) : \ +((struct { char v[sizeof(void) * 2]; } *) 1) \ + ) \ + ) \ + ) +# endif +#endif +#if defined(JSON_HEDLEY_IS_CONSTEXPR_) + #if !defined(JSON_HEDLEY_IS_CONSTANT) + #define JSON_HEDLEY_IS_CONSTANT(expr) JSON_HEDLEY_IS_CONSTEXPR_(expr) + #endif + #define JSON_HEDLEY_REQUIRE_CONSTEXPR(expr) (JSON_HEDLEY_IS_CONSTEXPR_(expr) ? (expr) : (-1)) +#else + #if !defined(JSON_HEDLEY_IS_CONSTANT) + #define JSON_HEDLEY_IS_CONSTANT(expr) (0) + #endif + #define JSON_HEDLEY_REQUIRE_CONSTEXPR(expr) (expr) +#endif + +#if defined(JSON_HEDLEY_BEGIN_C_DECLS) + #undef JSON_HEDLEY_BEGIN_C_DECLS +#endif +#if defined(JSON_HEDLEY_END_C_DECLS) + #undef JSON_HEDLEY_END_C_DECLS +#endif +#if defined(JSON_HEDLEY_C_DECL) + #undef JSON_HEDLEY_C_DECL +#endif +#if defined(__cplusplus) + #define JSON_HEDLEY_BEGIN_C_DECLS extern "C" { + #define JSON_HEDLEY_END_C_DECLS } + #define JSON_HEDLEY_C_DECL extern "C" +#else + #define JSON_HEDLEY_BEGIN_C_DECLS + #define JSON_HEDLEY_END_C_DECLS + #define JSON_HEDLEY_C_DECL +#endif + +#if defined(JSON_HEDLEY_STATIC_ASSERT) + #undef JSON_HEDLEY_STATIC_ASSERT +#endif +#if \ + !defined(__cplusplus) && ( \ + (defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 201112L)) || \ + (JSON_HEDLEY_HAS_FEATURE(c_static_assert) && !defined(JSON_HEDLEY_INTEL_CL_VERSION)) || \ + JSON_HEDLEY_GCC_VERSION_CHECK(6,0,0) || \ + JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) || \ + defined(_Static_assert) \ + ) +# define JSON_HEDLEY_STATIC_ASSERT(expr, message) _Static_assert(expr, message) +#elif \ + (defined(__cplusplus) && (__cplusplus >= 201103L)) || \ + JSON_HEDLEY_MSVC_VERSION_CHECK(16,0,0) || \ + JSON_HEDLEY_INTEL_CL_VERSION_CHECK(2021,1,0) +# define JSON_HEDLEY_STATIC_ASSERT(expr, message) JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_(static_assert(expr, message)) +#else +# define JSON_HEDLEY_STATIC_ASSERT(expr, message) +#endif + +#if defined(JSON_HEDLEY_NULL) + #undef JSON_HEDLEY_NULL +#endif +#if defined(__cplusplus) + #if __cplusplus >= 201103L + #define JSON_HEDLEY_NULL JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_(nullptr) + #elif defined(NULL) + #define JSON_HEDLEY_NULL NULL + #else + #define JSON_HEDLEY_NULL JSON_HEDLEY_STATIC_CAST(void*, 0) + #endif +#elif defined(NULL) + #define JSON_HEDLEY_NULL NULL +#else + #define JSON_HEDLEY_NULL ((void*) 0) +#endif + +#if defined(JSON_HEDLEY_MESSAGE) + #undef JSON_HEDLEY_MESSAGE +#endif +#if JSON_HEDLEY_HAS_WARNING("-Wunknown-pragmas") +# define JSON_HEDLEY_MESSAGE(msg) \ + JSON_HEDLEY_DIAGNOSTIC_PUSH \ + JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS \ + JSON_HEDLEY_PRAGMA(message msg) \ + JSON_HEDLEY_DIAGNOSTIC_POP +#elif \ + JSON_HEDLEY_GCC_VERSION_CHECK(4,4,0) || \ + JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) +# define JSON_HEDLEY_MESSAGE(msg) JSON_HEDLEY_PRAGMA(message msg) +#elif JSON_HEDLEY_CRAY_VERSION_CHECK(5,0,0) +# define JSON_HEDLEY_MESSAGE(msg) JSON_HEDLEY_PRAGMA(_CRI message msg) +#elif JSON_HEDLEY_IAR_VERSION_CHECK(8,0,0) +# define JSON_HEDLEY_MESSAGE(msg) JSON_HEDLEY_PRAGMA(message(msg)) +#elif JSON_HEDLEY_PELLES_VERSION_CHECK(2,0,0) +# define JSON_HEDLEY_MESSAGE(msg) JSON_HEDLEY_PRAGMA(message(msg)) +#else +# define JSON_HEDLEY_MESSAGE(msg) +#endif + +#if defined(JSON_HEDLEY_WARNING) + #undef JSON_HEDLEY_WARNING +#endif +#if JSON_HEDLEY_HAS_WARNING("-Wunknown-pragmas") +# define JSON_HEDLEY_WARNING(msg) \ + JSON_HEDLEY_DIAGNOSTIC_PUSH \ + JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS \ + JSON_HEDLEY_PRAGMA(clang warning msg) \ + JSON_HEDLEY_DIAGNOSTIC_POP +#elif \ + JSON_HEDLEY_GCC_VERSION_CHECK(4,8,0) || \ + JSON_HEDLEY_PGI_VERSION_CHECK(18,4,0) || \ + JSON_HEDLEY_INTEL_VERSION_CHECK(13,0,0) +# define JSON_HEDLEY_WARNING(msg) JSON_HEDLEY_PRAGMA(GCC warning msg) +#elif \ + JSON_HEDLEY_MSVC_VERSION_CHECK(15,0,0) || \ + JSON_HEDLEY_INTEL_CL_VERSION_CHECK(2021,1,0) +# define JSON_HEDLEY_WARNING(msg) JSON_HEDLEY_PRAGMA(message(msg)) +#else +# define JSON_HEDLEY_WARNING(msg) JSON_HEDLEY_MESSAGE(msg) +#endif + +#if defined(JSON_HEDLEY_REQUIRE) + #undef JSON_HEDLEY_REQUIRE +#endif +#if defined(JSON_HEDLEY_REQUIRE_MSG) + #undef JSON_HEDLEY_REQUIRE_MSG +#endif +#if JSON_HEDLEY_HAS_ATTRIBUTE(diagnose_if) +# if JSON_HEDLEY_HAS_WARNING("-Wgcc-compat") +# define JSON_HEDLEY_REQUIRE(expr) \ + JSON_HEDLEY_DIAGNOSTIC_PUSH \ + _Pragma("clang diagnostic ignored \"-Wgcc-compat\"") \ + __attribute__((diagnose_if(!(expr), #expr, "error"))) \ + JSON_HEDLEY_DIAGNOSTIC_POP +# define JSON_HEDLEY_REQUIRE_MSG(expr,msg) \ + JSON_HEDLEY_DIAGNOSTIC_PUSH \ + _Pragma("clang diagnostic ignored \"-Wgcc-compat\"") \ + __attribute__((diagnose_if(!(expr), msg, "error"))) \ + JSON_HEDLEY_DIAGNOSTIC_POP +# else +# define JSON_HEDLEY_REQUIRE(expr) __attribute__((diagnose_if(!(expr), #expr, "error"))) +# define JSON_HEDLEY_REQUIRE_MSG(expr,msg) __attribute__((diagnose_if(!(expr), msg, "error"))) +# endif +#else +# define JSON_HEDLEY_REQUIRE(expr) +# define JSON_HEDLEY_REQUIRE_MSG(expr,msg) +#endif + +#if defined(JSON_HEDLEY_FLAGS) + #undef JSON_HEDLEY_FLAGS +#endif +#if JSON_HEDLEY_HAS_ATTRIBUTE(flag_enum) && (!defined(__cplusplus) || JSON_HEDLEY_HAS_WARNING("-Wbitfield-enum-conversion")) + #define JSON_HEDLEY_FLAGS __attribute__((__flag_enum__)) +#else + #define JSON_HEDLEY_FLAGS +#endif + +#if defined(JSON_HEDLEY_FLAGS_CAST) + #undef JSON_HEDLEY_FLAGS_CAST +#endif +#if JSON_HEDLEY_INTEL_VERSION_CHECK(19,0,0) +# define JSON_HEDLEY_FLAGS_CAST(T, expr) (__extension__ ({ \ + JSON_HEDLEY_DIAGNOSTIC_PUSH \ + _Pragma("warning(disable:188)") \ + ((T) (expr)); \ + JSON_HEDLEY_DIAGNOSTIC_POP \ + })) +#else +# define JSON_HEDLEY_FLAGS_CAST(T, expr) JSON_HEDLEY_STATIC_CAST(T, expr) +#endif + +#if defined(JSON_HEDLEY_EMPTY_BASES) + #undef JSON_HEDLEY_EMPTY_BASES +#endif +#if \ + (JSON_HEDLEY_MSVC_VERSION_CHECK(19,0,23918) && !JSON_HEDLEY_MSVC_VERSION_CHECK(20,0,0)) || \ + JSON_HEDLEY_INTEL_CL_VERSION_CHECK(2021,1,0) + #define JSON_HEDLEY_EMPTY_BASES __declspec(empty_bases) +#else + #define JSON_HEDLEY_EMPTY_BASES +#endif + +/* Remaining macros are deprecated. */ + +#if defined(JSON_HEDLEY_GCC_NOT_CLANG_VERSION_CHECK) + #undef JSON_HEDLEY_GCC_NOT_CLANG_VERSION_CHECK +#endif +#if defined(__clang__) + #define JSON_HEDLEY_GCC_NOT_CLANG_VERSION_CHECK(major,minor,patch) (0) +#else + #define JSON_HEDLEY_GCC_NOT_CLANG_VERSION_CHECK(major,minor,patch) JSON_HEDLEY_GCC_VERSION_CHECK(major,minor,patch) +#endif + +#if defined(JSON_HEDLEY_CLANG_HAS_ATTRIBUTE) + #undef JSON_HEDLEY_CLANG_HAS_ATTRIBUTE +#endif +#define JSON_HEDLEY_CLANG_HAS_ATTRIBUTE(attribute) JSON_HEDLEY_HAS_ATTRIBUTE(attribute) + +#if defined(JSON_HEDLEY_CLANG_HAS_CPP_ATTRIBUTE) + #undef JSON_HEDLEY_CLANG_HAS_CPP_ATTRIBUTE +#endif +#define JSON_HEDLEY_CLANG_HAS_CPP_ATTRIBUTE(attribute) JSON_HEDLEY_HAS_CPP_ATTRIBUTE(attribute) + +#if defined(JSON_HEDLEY_CLANG_HAS_BUILTIN) + #undef JSON_HEDLEY_CLANG_HAS_BUILTIN +#endif +#define JSON_HEDLEY_CLANG_HAS_BUILTIN(builtin) JSON_HEDLEY_HAS_BUILTIN(builtin) + +#if defined(JSON_HEDLEY_CLANG_HAS_FEATURE) + #undef JSON_HEDLEY_CLANG_HAS_FEATURE +#endif +#define JSON_HEDLEY_CLANG_HAS_FEATURE(feature) JSON_HEDLEY_HAS_FEATURE(feature) + +#if defined(JSON_HEDLEY_CLANG_HAS_EXTENSION) + #undef JSON_HEDLEY_CLANG_HAS_EXTENSION +#endif +#define JSON_HEDLEY_CLANG_HAS_EXTENSION(extension) JSON_HEDLEY_HAS_EXTENSION(extension) + +#if defined(JSON_HEDLEY_CLANG_HAS_DECLSPEC_DECLSPEC_ATTRIBUTE) + #undef JSON_HEDLEY_CLANG_HAS_DECLSPEC_DECLSPEC_ATTRIBUTE +#endif +#define JSON_HEDLEY_CLANG_HAS_DECLSPEC_ATTRIBUTE(attribute) JSON_HEDLEY_HAS_DECLSPEC_ATTRIBUTE(attribute) + +#if defined(JSON_HEDLEY_CLANG_HAS_WARNING) + #undef JSON_HEDLEY_CLANG_HAS_WARNING +#endif +#define JSON_HEDLEY_CLANG_HAS_WARNING(warning) JSON_HEDLEY_HAS_WARNING(warning) + +#endif /* !defined(JSON_HEDLEY_VERSION) || (JSON_HEDLEY_VERSION < X) */ + +// #include + + +#include + +// #include + + +namespace nlohmann +{ +namespace detail +{ +template struct make_void +{ + using type = void; +}; +template using void_t = typename make_void::type; +} // namespace detail +} // namespace nlohmann + + +// https://en.cppreference.com/w/cpp/experimental/is_detected +namespace nlohmann +{ +namespace detail +{ +struct nonesuch +{ + nonesuch() = delete; + ~nonesuch() = delete; + nonesuch(nonesuch const&) = delete; + nonesuch(nonesuch const&&) = delete; + void operator=(nonesuch const&) = delete; + void operator=(nonesuch&&) = delete; +}; + +template class Op, + class... Args> +struct detector +{ + using value_t = std::false_type; + using type = Default; +}; + +template class Op, class... Args> +struct detector>, Op, Args...> +{ + using value_t = std::true_type; + using type = Op; +}; + +template class Op, class... Args> +using is_detected = typename detector::value_t; + +template class Op, class... Args> +struct is_detected_lazy : is_detected { }; + +template class Op, class... Args> +using detected_t = typename detector::type; + +template class Op, class... Args> +using detected_or = detector; + +template class Op, class... Args> +using detected_or_t = typename detected_or::type; + +template class Op, class... Args> +using is_detected_exact = std::is_same>; + +template class Op, class... Args> +using is_detected_convertible = + std::is_convertible, To>; +} // namespace detail +} // namespace nlohmann + // This file contains all internal macro definitions // You MUST include macro_unscope.hpp at the end of json.hpp to undef all of them @@ -469,41 +2317,100 @@ class other_error : public exception #endif #endif -// disable float-equal warnings on GCC/clang -#if defined(__clang__) || defined(__GNUC__) || defined(__GNUG__) - #pragma GCC diagnostic push - #pragma GCC diagnostic ignored "-Wfloat-equal" +// C++ language standard detection +// if the user manually specified the used c++ version this is skipped +#if !defined(JSON_HAS_CPP_20) && !defined(JSON_HAS_CPP_17) && !defined(JSON_HAS_CPP_14) && !defined(JSON_HAS_CPP_11) + #if (defined(__cplusplus) && __cplusplus >= 202002L) || (defined(_MSVC_LANG) && _MSVC_LANG >= 202002L) + #define JSON_HAS_CPP_20 + #define JSON_HAS_CPP_17 + #define JSON_HAS_CPP_14 + #elif (defined(__cplusplus) && __cplusplus >= 201703L) || (defined(_HAS_CXX17) && _HAS_CXX17 == 1) // fix for issue #464 + #define JSON_HAS_CPP_17 + #define JSON_HAS_CPP_14 + #elif (defined(__cplusplus) && __cplusplus >= 201402L) || (defined(_HAS_CXX14) && _HAS_CXX14 == 1) + #define JSON_HAS_CPP_14 + #endif + // the cpp 11 flag is always specified because it is the minimal required version + #define JSON_HAS_CPP_11 +#endif + +#if !defined(JSON_HAS_FILESYSTEM) && !defined(JSON_HAS_EXPERIMENTAL_FILESYSTEM) + #ifdef JSON_HAS_CPP_17 + #if defined(__cpp_lib_filesystem) + #define JSON_HAS_FILESYSTEM 1 + #elif defined(__cpp_lib_experimental_filesystem) + #define JSON_HAS_EXPERIMENTAL_FILESYSTEM 1 + #elif !defined(__has_include) + #define JSON_HAS_EXPERIMENTAL_FILESYSTEM 1 + #elif __has_include() + #define JSON_HAS_FILESYSTEM 1 + #elif __has_include() + #define JSON_HAS_EXPERIMENTAL_FILESYSTEM 1 + #endif + + // std::filesystem does not work on MinGW GCC 8: https://sourceforge.net/p/mingw-w64/bugs/737/ + #if defined(__MINGW32__) && defined(__GNUC__) && __GNUC__ == 8 + #undef JSON_HAS_FILESYSTEM + #undef JSON_HAS_EXPERIMENTAL_FILESYSTEM + #endif + + // no filesystem support before GCC 8: https://en.cppreference.com/w/cpp/compiler_support + #if defined(__GNUC__) && !defined(__clang__) && __GNUC__ < 8 + #undef JSON_HAS_FILESYSTEM + #undef JSON_HAS_EXPERIMENTAL_FILESYSTEM + #endif + + // no filesystem support before Clang 7: https://en.cppreference.com/w/cpp/compiler_support + #if defined(__clang_major__) && __clang_major__ < 7 + #undef JSON_HAS_FILESYSTEM + #undef JSON_HAS_EXPERIMENTAL_FILESYSTEM + #endif + + // no filesystem support before MSVC 19.14: https://en.cppreference.com/w/cpp/compiler_support + #if defined(_MSC_VER) && _MSC_VER < 1914 + #undef JSON_HAS_FILESYSTEM + #undef JSON_HAS_EXPERIMENTAL_FILESYSTEM + #endif + + // no filesystem support before iOS 13 + #if defined(__IPHONE_OS_VERSION_MIN_REQUIRED) && __IPHONE_OS_VERSION_MIN_REQUIRED < 130000 + #undef JSON_HAS_FILESYSTEM + #undef JSON_HAS_EXPERIMENTAL_FILESYSTEM + #endif + + // no filesystem support before macOS Catalina + #if defined(__MAC_OS_X_VERSION_MIN_REQUIRED) && __MAC_OS_X_VERSION_MIN_REQUIRED < 101500 + #undef JSON_HAS_FILESYSTEM + #undef JSON_HAS_EXPERIMENTAL_FILESYSTEM + #endif + #endif +#endif + +#ifndef JSON_HAS_EXPERIMENTAL_FILESYSTEM + #define JSON_HAS_EXPERIMENTAL_FILESYSTEM 0 +#endif + +#ifndef JSON_HAS_FILESYSTEM + #define JSON_HAS_FILESYSTEM 0 +#endif + +#ifndef JSON_HAS_THREE_WAY_COMPARISON + #if defined(__cpp_lib_three_way_comparison) && __cpp_lib_three_way_comparison >= 201907L \ + && defined(__cpp_impl_three_way_comparison)&& __cpp_impl_three_way_comparison >= 201907L + #define JSON_HAS_THREE_WAY_COMPARISON 1 + #else + #define JSON_HAS_THREE_WAY_COMPARISON 0 + #endif #endif // disable documentation warnings on clang #if defined(__clang__) - #pragma GCC diagnostic push - #pragma GCC diagnostic ignored "-Wdocumentation" + #pragma clang diagnostic push + #pragma clang diagnostic ignored "-Wdocumentation" + #pragma clang diagnostic ignored "-Wdocumentation-unknown-command" #endif -// allow for portable deprecation warnings -#if defined(__clang__) || defined(__GNUC__) || defined(__GNUG__) - #define JSON_DEPRECATED __attribute__((deprecated)) -#elif defined(_MSC_VER) - #define JSON_DEPRECATED __declspec(deprecated) -#else - #define JSON_DEPRECATED -#endif - -// allow for portable nodiscard warnings -#if defined(__has_cpp_attribute) - #if __has_cpp_attribute(nodiscard) - #define JSON_NODISCARD [[nodiscard]] - #elif __has_cpp_attribute(gnu::warn_unused_result) - #define JSON_NODISCARD [[gnu::warn_unused_result]] - #else - #define JSON_NODISCARD - #endif -#else - #define JSON_NODISCARD -#endif - -// allow to disable exceptions +// allow disabling exceptions #if (defined(__cpp_exceptions) || defined(__EXCEPTIONS) || defined(_CPPUNWIND)) && !defined(JSON_NOEXCEPTION) #define JSON_THROW(exception) throw exception #define JSON_TRY try @@ -537,21 +2444,17 @@ class other_error : public exception #define JSON_INTERNAL_CATCH JSON_INTERNAL_CATCH_USER #endif -// manual branch prediction -#if defined(__clang__) || defined(__GNUC__) || defined(__GNUG__) - #define JSON_LIKELY(x) __builtin_expect(x, 1) - #define JSON_UNLIKELY(x) __builtin_expect(x, 0) -#else - #define JSON_LIKELY(x) x - #define JSON_UNLIKELY(x) x +// allow overriding assert +#if !defined(JSON_ASSERT) + #include // assert + #define JSON_ASSERT(x) assert(x) #endif -// C++ language standard detection -#if (defined(__cplusplus) && __cplusplus >= 201703L) || (defined(_HAS_CXX17) && _HAS_CXX17 == 1) // fix for issue #464 - #define JSON_HAS_CPP_17 - #define JSON_HAS_CPP_14 -#elif (defined(__cplusplus) && __cplusplus >= 201402L) || (defined(_HAS_CXX14) && _HAS_CXX14 == 1) - #define JSON_HAS_CPP_14 +// allow to access some private functions (needed by the test suite) +#if defined(JSON_TESTS_PRIVATE) + #define JSON_PRIVATE_UNLESS_TESTED public +#else + #define JSON_PRIVATE_UNLESS_TESTED private #endif /*! @@ -559,30 +2462,30 @@ class other_error : public exception @def NLOHMANN_JSON_SERIALIZE_ENUM @since version 3.4.0 */ -#define NLOHMANN_JSON_SERIALIZE_ENUM(ENUM_TYPE, ...) \ - template \ - inline void to_json(BasicJsonType& j, const ENUM_TYPE& e) \ - { \ - static_assert(std::is_enum::value, #ENUM_TYPE " must be an enum!"); \ - static const std::pair m[] = __VA_ARGS__; \ - auto it = std::find_if(std::begin(m), std::end(m), \ - [e](const std::pair& ej_pair) -> bool \ - { \ - return ej_pair.first == e; \ - }); \ - j = ((it != std::end(m)) ? it : std::begin(m))->second; \ - } \ - template \ - inline void from_json(const BasicJsonType& j, ENUM_TYPE& e) \ - { \ - static_assert(std::is_enum::value, #ENUM_TYPE " must be an enum!"); \ - static const std::pair m[] = __VA_ARGS__; \ - auto it = std::find_if(std::begin(m), std::end(m), \ - [j](const std::pair& ej_pair) -> bool \ - { \ - return ej_pair.second == j; \ - }); \ - e = ((it != std::end(m)) ? it : std::begin(m))->first; \ +#define NLOHMANN_JSON_SERIALIZE_ENUM(ENUM_TYPE, ...) \ + template \ + inline void to_json(BasicJsonType& j, const ENUM_TYPE& e) \ + { \ + static_assert(std::is_enum::value, #ENUM_TYPE " must be an enum!"); \ + static const std::pair m[] = __VA_ARGS__; \ + auto it = std::find_if(std::begin(m), std::end(m), \ + [e](const std::pair& ej_pair) -> bool \ + { \ + return ej_pair.first == e; \ + }); \ + j = ((it != std::end(m)) ? it : std::begin(m))->second; \ + } \ + template \ + inline void from_json(const BasicJsonType& j, ENUM_TYPE& e) \ + { \ + static_assert(std::is_enum::value, #ENUM_TYPE " must be an enum!"); \ + static const std::pair m[] = __VA_ARGS__; \ + auto it = std::find_if(std::begin(m), std::end(m), \ + [&j](const std::pair& ej_pair) -> bool \ + { \ + return ej_pair.second == j; \ + }); \ + e = ((it != std::end(m)) ? it : std::begin(m))->first; \ } // Ugly macros to avoid uglier copy-paste when specializing basic_json. They @@ -594,62 +2497,689 @@ class other_error : public exception class StringType, class BooleanType, class NumberIntegerType, \ class NumberUnsignedType, class NumberFloatType, \ template class AllocatorType, \ - template class JSONSerializer> + template class JSONSerializer, \ + class BinaryType> #define NLOHMANN_BASIC_JSON_TPL \ basic_json + AllocatorType, JSONSerializer, BinaryType> -// #include +// Macros to simplify conversion from/to types + +#define NLOHMANN_JSON_EXPAND( x ) x +#define NLOHMANN_JSON_GET_MACRO(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _60, _61, _62, _63, _64, NAME,...) NAME +#define NLOHMANN_JSON_PASTE(...) NLOHMANN_JSON_EXPAND(NLOHMANN_JSON_GET_MACRO(__VA_ARGS__, \ + NLOHMANN_JSON_PASTE64, \ + NLOHMANN_JSON_PASTE63, \ + NLOHMANN_JSON_PASTE62, \ + NLOHMANN_JSON_PASTE61, \ + NLOHMANN_JSON_PASTE60, \ + NLOHMANN_JSON_PASTE59, \ + NLOHMANN_JSON_PASTE58, \ + NLOHMANN_JSON_PASTE57, \ + NLOHMANN_JSON_PASTE56, \ + NLOHMANN_JSON_PASTE55, \ + NLOHMANN_JSON_PASTE54, \ + NLOHMANN_JSON_PASTE53, \ + NLOHMANN_JSON_PASTE52, \ + NLOHMANN_JSON_PASTE51, \ + NLOHMANN_JSON_PASTE50, \ + NLOHMANN_JSON_PASTE49, \ + NLOHMANN_JSON_PASTE48, \ + NLOHMANN_JSON_PASTE47, \ + NLOHMANN_JSON_PASTE46, \ + NLOHMANN_JSON_PASTE45, \ + NLOHMANN_JSON_PASTE44, \ + NLOHMANN_JSON_PASTE43, \ + NLOHMANN_JSON_PASTE42, \ + NLOHMANN_JSON_PASTE41, \ + NLOHMANN_JSON_PASTE40, \ + NLOHMANN_JSON_PASTE39, \ + NLOHMANN_JSON_PASTE38, \ + NLOHMANN_JSON_PASTE37, \ + NLOHMANN_JSON_PASTE36, \ + NLOHMANN_JSON_PASTE35, \ + NLOHMANN_JSON_PASTE34, \ + NLOHMANN_JSON_PASTE33, \ + NLOHMANN_JSON_PASTE32, \ + NLOHMANN_JSON_PASTE31, \ + NLOHMANN_JSON_PASTE30, \ + NLOHMANN_JSON_PASTE29, \ + NLOHMANN_JSON_PASTE28, \ + NLOHMANN_JSON_PASTE27, \ + NLOHMANN_JSON_PASTE26, \ + NLOHMANN_JSON_PASTE25, \ + NLOHMANN_JSON_PASTE24, \ + NLOHMANN_JSON_PASTE23, \ + NLOHMANN_JSON_PASTE22, \ + NLOHMANN_JSON_PASTE21, \ + NLOHMANN_JSON_PASTE20, \ + NLOHMANN_JSON_PASTE19, \ + NLOHMANN_JSON_PASTE18, \ + NLOHMANN_JSON_PASTE17, \ + NLOHMANN_JSON_PASTE16, \ + NLOHMANN_JSON_PASTE15, \ + NLOHMANN_JSON_PASTE14, \ + NLOHMANN_JSON_PASTE13, \ + NLOHMANN_JSON_PASTE12, \ + NLOHMANN_JSON_PASTE11, \ + NLOHMANN_JSON_PASTE10, \ + NLOHMANN_JSON_PASTE9, \ + NLOHMANN_JSON_PASTE8, \ + NLOHMANN_JSON_PASTE7, \ + NLOHMANN_JSON_PASTE6, \ + NLOHMANN_JSON_PASTE5, \ + NLOHMANN_JSON_PASTE4, \ + NLOHMANN_JSON_PASTE3, \ + NLOHMANN_JSON_PASTE2, \ + NLOHMANN_JSON_PASTE1)(__VA_ARGS__)) +#define NLOHMANN_JSON_PASTE2(func, v1) func(v1) +#define NLOHMANN_JSON_PASTE3(func, v1, v2) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE2(func, v2) +#define NLOHMANN_JSON_PASTE4(func, v1, v2, v3) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE3(func, v2, v3) +#define NLOHMANN_JSON_PASTE5(func, v1, v2, v3, v4) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE4(func, v2, v3, v4) +#define NLOHMANN_JSON_PASTE6(func, v1, v2, v3, v4, v5) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE5(func, v2, v3, v4, v5) +#define NLOHMANN_JSON_PASTE7(func, v1, v2, v3, v4, v5, v6) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE6(func, v2, v3, v4, v5, v6) +#define NLOHMANN_JSON_PASTE8(func, v1, v2, v3, v4, v5, v6, v7) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE7(func, v2, v3, v4, v5, v6, v7) +#define NLOHMANN_JSON_PASTE9(func, v1, v2, v3, v4, v5, v6, v7, v8) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE8(func, v2, v3, v4, v5, v6, v7, v8) +#define NLOHMANN_JSON_PASTE10(func, v1, v2, v3, v4, v5, v6, v7, v8, v9) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE9(func, v2, v3, v4, v5, v6, v7, v8, v9) +#define NLOHMANN_JSON_PASTE11(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE10(func, v2, v3, v4, v5, v6, v7, v8, v9, v10) +#define NLOHMANN_JSON_PASTE12(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE11(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) +#define NLOHMANN_JSON_PASTE13(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE12(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12) +#define NLOHMANN_JSON_PASTE14(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE13(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13) +#define NLOHMANN_JSON_PASTE15(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE14(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14) +#define NLOHMANN_JSON_PASTE16(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE15(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15) +#define NLOHMANN_JSON_PASTE17(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE16(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16) +#define NLOHMANN_JSON_PASTE18(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE17(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17) +#define NLOHMANN_JSON_PASTE19(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE18(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18) +#define NLOHMANN_JSON_PASTE20(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE19(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19) +#define NLOHMANN_JSON_PASTE21(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE20(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20) +#define NLOHMANN_JSON_PASTE22(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE21(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21) +#define NLOHMANN_JSON_PASTE23(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE22(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22) +#define NLOHMANN_JSON_PASTE24(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE23(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23) +#define NLOHMANN_JSON_PASTE25(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE24(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24) +#define NLOHMANN_JSON_PASTE26(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE25(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25) +#define NLOHMANN_JSON_PASTE27(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE26(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26) +#define NLOHMANN_JSON_PASTE28(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE27(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27) +#define NLOHMANN_JSON_PASTE29(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE28(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28) +#define NLOHMANN_JSON_PASTE30(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE29(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29) +#define NLOHMANN_JSON_PASTE31(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE30(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30) +#define NLOHMANN_JSON_PASTE32(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE31(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31) +#define NLOHMANN_JSON_PASTE33(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE32(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32) +#define NLOHMANN_JSON_PASTE34(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE33(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33) +#define NLOHMANN_JSON_PASTE35(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE34(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34) +#define NLOHMANN_JSON_PASTE36(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE35(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35) +#define NLOHMANN_JSON_PASTE37(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE36(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36) +#define NLOHMANN_JSON_PASTE38(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE37(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37) +#define NLOHMANN_JSON_PASTE39(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE38(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38) +#define NLOHMANN_JSON_PASTE40(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE39(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39) +#define NLOHMANN_JSON_PASTE41(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE40(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40) +#define NLOHMANN_JSON_PASTE42(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE41(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41) +#define NLOHMANN_JSON_PASTE43(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE42(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42) +#define NLOHMANN_JSON_PASTE44(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE43(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43) +#define NLOHMANN_JSON_PASTE45(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE44(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44) +#define NLOHMANN_JSON_PASTE46(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE45(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45) +#define NLOHMANN_JSON_PASTE47(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE46(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46) +#define NLOHMANN_JSON_PASTE48(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE47(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47) +#define NLOHMANN_JSON_PASTE49(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE48(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48) +#define NLOHMANN_JSON_PASTE50(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE49(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49) +#define NLOHMANN_JSON_PASTE51(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE50(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50) +#define NLOHMANN_JSON_PASTE52(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE51(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51) +#define NLOHMANN_JSON_PASTE53(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE52(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52) +#define NLOHMANN_JSON_PASTE54(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE53(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53) +#define NLOHMANN_JSON_PASTE55(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE54(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54) +#define NLOHMANN_JSON_PASTE56(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE55(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55) +#define NLOHMANN_JSON_PASTE57(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE56(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56) +#define NLOHMANN_JSON_PASTE58(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE57(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57) +#define NLOHMANN_JSON_PASTE59(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57, v58) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE58(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57, v58) +#define NLOHMANN_JSON_PASTE60(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57, v58, v59) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE59(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57, v58, v59) +#define NLOHMANN_JSON_PASTE61(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57, v58, v59, v60) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE60(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57, v58, v59, v60) +#define NLOHMANN_JSON_PASTE62(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57, v58, v59, v60, v61) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE61(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57, v58, v59, v60, v61) +#define NLOHMANN_JSON_PASTE63(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57, v58, v59, v60, v61, v62) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE62(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57, v58, v59, v60, v61, v62) +#define NLOHMANN_JSON_PASTE64(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57, v58, v59, v60, v61, v62, v63) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE63(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57, v58, v59, v60, v61, v62, v63) + +#define NLOHMANN_JSON_TO(v1) nlohmann_json_j[#v1] = nlohmann_json_t.v1; +#define NLOHMANN_JSON_FROM(v1) nlohmann_json_j.at(#v1).get_to(nlohmann_json_t.v1); +#define NLOHMANN_JSON_FROM_WITH_DEFAULT(v1) nlohmann_json_t.v1 = nlohmann_json_j.value(#v1, nlohmann_json_default_obj.v1); + +/*! +@brief macro +@def NLOHMANN_DEFINE_TYPE_INTRUSIVE +@since version 3.9.0 +*/ +#define NLOHMANN_DEFINE_TYPE_INTRUSIVE(Type, ...) \ + friend void to_json(nlohmann::json& nlohmann_json_j, const Type& nlohmann_json_t) { NLOHMANN_JSON_EXPAND(NLOHMANN_JSON_PASTE(NLOHMANN_JSON_TO, __VA_ARGS__)) } \ + friend void from_json(const nlohmann::json& nlohmann_json_j, Type& nlohmann_json_t) { NLOHMANN_JSON_EXPAND(NLOHMANN_JSON_PASTE(NLOHMANN_JSON_FROM, __VA_ARGS__)) } + +#define NLOHMANN_DEFINE_TYPE_INTRUSIVE_WITH_DEFAULT(Type, ...) \ + friend void to_json(nlohmann::json& nlohmann_json_j, const Type& nlohmann_json_t) { NLOHMANN_JSON_EXPAND(NLOHMANN_JSON_PASTE(NLOHMANN_JSON_TO, __VA_ARGS__)) } \ + friend void from_json(const nlohmann::json& nlohmann_json_j, Type& nlohmann_json_t) { Type nlohmann_json_default_obj; NLOHMANN_JSON_EXPAND(NLOHMANN_JSON_PASTE(NLOHMANN_JSON_FROM_WITH_DEFAULT, __VA_ARGS__)) } + +/*! +@brief macro +@def NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE +@since version 3.9.0 +*/ +#define NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE(Type, ...) \ + inline void to_json(nlohmann::json& nlohmann_json_j, const Type& nlohmann_json_t) { NLOHMANN_JSON_EXPAND(NLOHMANN_JSON_PASTE(NLOHMANN_JSON_TO, __VA_ARGS__)) } \ + inline void from_json(const nlohmann::json& nlohmann_json_j, Type& nlohmann_json_t) { NLOHMANN_JSON_EXPAND(NLOHMANN_JSON_PASTE(NLOHMANN_JSON_FROM, __VA_ARGS__)) } + +#define NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_WITH_DEFAULT(Type, ...) \ + inline void to_json(nlohmann::json& nlohmann_json_j, const Type& nlohmann_json_t) { NLOHMANN_JSON_EXPAND(NLOHMANN_JSON_PASTE(NLOHMANN_JSON_TO, __VA_ARGS__)) } \ + inline void from_json(const nlohmann::json& nlohmann_json_j, Type& nlohmann_json_t) { Type nlohmann_json_default_obj; NLOHMANN_JSON_EXPAND(NLOHMANN_JSON_PASTE(NLOHMANN_JSON_FROM_WITH_DEFAULT, __VA_ARGS__)) } -#include // not -#include // size_t -#include // conditional, enable_if, false_type, integral_constant, is_constructible, is_integral, is_same, remove_cv, remove_reference, true_type +// inspired from https://stackoverflow.com/a/26745591 +// allows to call any std function as if (e.g. with begin): +// using std::begin; begin(x); +// +// it allows using the detected idiom to retrieve the return type +// of such an expression +#define NLOHMANN_CAN_CALL_STD_FUNC_IMPL(std_name) \ + namespace detail { \ + using std::std_name; \ + \ + template \ + using result_of_##std_name = decltype(std_name(std::declval()...)); \ + } \ + \ + namespace detail2 { \ + struct std_name##_tag \ + { \ + }; \ + \ + template \ + std_name##_tag std_name(T&&...); \ + \ + template \ + using result_of_##std_name = decltype(std_name(std::declval()...)); \ + \ + template \ + struct would_call_std_##std_name \ + { \ + static constexpr auto const value = ::nlohmann::detail:: \ + is_detected_exact::value; \ + }; \ + } /* namespace detail2 */ \ + \ + template \ + struct would_call_std_##std_name : detail2::would_call_std_##std_name \ + { \ + } + +#ifndef JSON_USE_IMPLICIT_CONVERSIONS + #define JSON_USE_IMPLICIT_CONVERSIONS 1 +#endif + +#if JSON_USE_IMPLICIT_CONVERSIONS + #define JSON_EXPLICIT +#else + #define JSON_EXPLICIT explicit +#endif + +#ifndef JSON_DIAGNOSTICS + #define JSON_DIAGNOSTICS 0 +#endif + + +namespace nlohmann +{ +namespace detail +{ + +/*! +@brief replace all occurrences of a substring by another string + +@param[in,out] s the string to manipulate; changed so that all + occurrences of @a f are replaced with @a t +@param[in] f the substring to replace with @a t +@param[in] t the string to replace @a f + +@pre The search string @a f must not be empty. **This precondition is +enforced with an assertion.** + +@since version 2.0.0 +*/ +inline void replace_substring(std::string& s, const std::string& f, + const std::string& t) +{ + JSON_ASSERT(!f.empty()); + for (auto pos = s.find(f); // find first occurrence of f + pos != std::string::npos; // make sure f was found + s.replace(pos, f.size(), t), // replace with t, and + pos = s.find(f, pos + t.size())) // find next occurrence of f + {} +} + +/*! + * @brief string escaping as described in RFC 6901 (Sect. 4) + * @param[in] s string to escape + * @return escaped string + * + * Note the order of escaping "~" to "~0" and "/" to "~1" is important. + */ +inline std::string escape(std::string s) +{ + replace_substring(s, "~", "~0"); + replace_substring(s, "/", "~1"); + return s; +} + +/*! + * @brief string unescaping as described in RFC 6901 (Sect. 4) + * @param[in] s string to unescape + * @return unescaped string + * + * Note the order of escaping "~1" to "/" and "~0" to "~" is important. + */ +static void unescape(std::string& s) +{ + replace_substring(s, "~1", "/"); + replace_substring(s, "~0", "~"); +} + +} // namespace detail +} // namespace nlohmann + +// #include + + +#include // size_t + +namespace nlohmann +{ +namespace detail +{ +/// struct to capture the start position of the current token +struct position_t +{ + /// the total number of characters read + std::size_t chars_read_total = 0; + /// the number of characters read in the current line + std::size_t chars_read_current_line = 0; + /// the number of lines read + std::size_t lines_read = 0; + + /// conversion to size_t to preserve SAX interface + constexpr operator size_t() const + { + return chars_read_total; + } +}; + +} // namespace detail +} // namespace nlohmann + +// #include + + +namespace nlohmann +{ +namespace detail +{ +//////////////// +// exceptions // +//////////////// + +/// @brief general exception of the @ref basic_json class +/// @sa https://json.nlohmann.me/api/basic_json/exception/ +class exception : public std::exception +{ + public: + /// returns the explanatory string + const char* what() const noexcept override + { + return m.what(); + } + + /// the id of the exception + const int id; // NOLINT(cppcoreguidelines-non-private-member-variables-in-classes) + + protected: + JSON_HEDLEY_NON_NULL(3) + exception(int id_, const char* what_arg) : id(id_), m(what_arg) {} // NOLINT(bugprone-throw-keyword-missing) + + static std::string name(const std::string& ename, int id_) + { + return "[json.exception." + ename + "." + std::to_string(id_) + "] "; + } + + template + static std::string diagnostics(const BasicJsonType& leaf_element) + { +#if JSON_DIAGNOSTICS + std::vector tokens; + for (const auto* current = &leaf_element; current->m_parent != nullptr; current = current->m_parent) + { + switch (current->m_parent->type()) + { + case value_t::array: + { + for (std::size_t i = 0; i < current->m_parent->m_value.array->size(); ++i) + { + if (¤t->m_parent->m_value.array->operator[](i) == current) + { + tokens.emplace_back(std::to_string(i)); + break; + } + } + break; + } + + case value_t::object: + { + for (const auto& element : *current->m_parent->m_value.object) + { + if (&element.second == current) + { + tokens.emplace_back(element.first.c_str()); + break; + } + } + break; + } + + case value_t::null: // LCOV_EXCL_LINE + case value_t::string: // LCOV_EXCL_LINE + case value_t::boolean: // LCOV_EXCL_LINE + case value_t::number_integer: // LCOV_EXCL_LINE + case value_t::number_unsigned: // LCOV_EXCL_LINE + case value_t::number_float: // LCOV_EXCL_LINE + case value_t::binary: // LCOV_EXCL_LINE + case value_t::discarded: // LCOV_EXCL_LINE + default: // LCOV_EXCL_LINE + break; // LCOV_EXCL_LINE + } + } + + if (tokens.empty()) + { + return ""; + } + + return "(" + std::accumulate(tokens.rbegin(), tokens.rend(), std::string{}, + [](const std::string & a, const std::string & b) + { + return a + "/" + detail::escape(b); + }) + ") "; +#else + static_cast(leaf_element); + return ""; +#endif + } + + private: + /// an exception object as storage for error messages + std::runtime_error m; +}; + +/// @brief exception indicating a parse error +/// @sa https://json.nlohmann.me/api/basic_json/parse_error/ +class parse_error : public exception +{ + public: + /*! + @brief create a parse error exception + @param[in] id_ the id of the exception + @param[in] pos the position where the error occurred (or with + chars_read_total=0 if the position cannot be + determined) + @param[in] what_arg the explanatory string + @return parse_error object + */ + template + static parse_error create(int id_, const position_t& pos, const std::string& what_arg, const BasicJsonType& context) + { + std::string w = exception::name("parse_error", id_) + "parse error" + + position_string(pos) + ": " + exception::diagnostics(context) + what_arg; + return {id_, pos.chars_read_total, w.c_str()}; + } + + template + static parse_error create(int id_, std::size_t byte_, const std::string& what_arg, const BasicJsonType& context) + { + std::string w = exception::name("parse_error", id_) + "parse error" + + (byte_ != 0 ? (" at byte " + std::to_string(byte_)) : "") + + ": " + exception::diagnostics(context) + what_arg; + return {id_, byte_, w.c_str()}; + } + + /*! + @brief byte index of the parse error + + The byte index of the last read character in the input file. + + @note For an input with n bytes, 1 is the index of the first character and + n+1 is the index of the terminating null byte or the end of file. + This also holds true when reading a byte vector (CBOR or MessagePack). + */ + const std::size_t byte; + + private: + parse_error(int id_, std::size_t byte_, const char* what_arg) + : exception(id_, what_arg), byte(byte_) {} + + static std::string position_string(const position_t& pos) + { + return " at line " + std::to_string(pos.lines_read + 1) + + ", column " + std::to_string(pos.chars_read_current_line); + } +}; + +/// @brief exception indicating errors with iterators +/// @sa https://json.nlohmann.me/api/basic_json/invalid_iterator/ +class invalid_iterator : public exception +{ + public: + template + static invalid_iterator create(int id_, const std::string& what_arg, const BasicJsonType& context) + { + std::string w = exception::name("invalid_iterator", id_) + exception::diagnostics(context) + what_arg; + return {id_, w.c_str()}; + } + + private: + JSON_HEDLEY_NON_NULL(3) + invalid_iterator(int id_, const char* what_arg) + : exception(id_, what_arg) {} +}; + +/// @brief exception indicating executing a member function with a wrong type +/// @sa https://json.nlohmann.me/api/basic_json/type_error/ +class type_error : public exception +{ + public: + template + static type_error create(int id_, const std::string& what_arg, const BasicJsonType& context) + { + std::string w = exception::name("type_error", id_) + exception::diagnostics(context) + what_arg; + return {id_, w.c_str()}; + } + + private: + JSON_HEDLEY_NON_NULL(3) + type_error(int id_, const char* what_arg) : exception(id_, what_arg) {} +}; + +/// @brief exception indicating access out of the defined range +/// @sa https://json.nlohmann.me/api/basic_json/out_of_range/ +class out_of_range : public exception +{ + public: + template + static out_of_range create(int id_, const std::string& what_arg, const BasicJsonType& context) + { + std::string w = exception::name("out_of_range", id_) + exception::diagnostics(context) + what_arg; + return {id_, w.c_str()}; + } + + private: + JSON_HEDLEY_NON_NULL(3) + out_of_range(int id_, const char* what_arg) : exception(id_, what_arg) {} +}; + +/// @brief exception indicating other library errors +/// @sa https://json.nlohmann.me/api/basic_json/other_error/ +class other_error : public exception +{ + public: + template + static other_error create(int id_, const std::string& what_arg, const BasicJsonType& context) + { + std::string w = exception::name("other_error", id_) + exception::diagnostics(context) + what_arg; + return {id_, w.c_str()}; + } + + private: + JSON_HEDLEY_NON_NULL(3) + other_error(int id_, const char* what_arg) : exception(id_, what_arg) {} +}; + +} // namespace detail +} // namespace nlohmann + +// #include + +// #include + + +#include // size_t +#include // conditional, enable_if, false_type, integral_constant, is_constructible, is_integral, is_same, remove_cv, remove_reference, true_type +#include // index_sequence, make_index_sequence, index_sequence_for + +// #include + namespace nlohmann { namespace detail { -// alias templates to reduce boilerplate -template -using enable_if_t = typename std::enable_if::type; template using uncvref_t = typename std::remove_cv::type>::type; -// implementation of C++14 index_sequence and affiliates -// source: https://stackoverflow.com/a/32223343 -template -struct index_sequence +#ifdef JSON_HAS_CPP_14 + +// the following utilities are natively available in C++14 +using std::enable_if_t; +using std::index_sequence; +using std::make_index_sequence; +using std::index_sequence_for; + +#else + +// alias templates to reduce boilerplate +template +using enable_if_t = typename std::enable_if::type; + +// The following code is taken from https://github.com/abseil/abseil-cpp/blob/10cb35e459f5ecca5b2ff107635da0bfa41011b4/absl/utility/utility.h +// which is part of Google Abseil (https://github.com/abseil/abseil-cpp), licensed under the Apache License 2.0. + +//// START OF CODE FROM GOOGLE ABSEIL + +// integer_sequence +// +// Class template representing a compile-time integer sequence. An instantiation +// of `integer_sequence` has a sequence of integers encoded in its +// type through its template arguments (which is a common need when +// working with C++11 variadic templates). `absl::integer_sequence` is designed +// to be a drop-in replacement for C++14's `std::integer_sequence`. +// +// Example: +// +// template< class T, T... Ints > +// void user_function(integer_sequence); +// +// int main() +// { +// // user_function's `T` will be deduced to `int` and `Ints...` +// // will be deduced to `0, 1, 2, 3, 4`. +// user_function(make_integer_sequence()); +// } +template +struct integer_sequence { - using type = index_sequence; - using value_type = std::size_t; + using value_type = T; static constexpr std::size_t size() noexcept { return sizeof...(Ints); } }; -template -struct merge_and_renumber; +// index_sequence +// +// A helper template for an `integer_sequence` of `size_t`, +// `absl::index_sequence` is designed to be a drop-in replacement for C++14's +// `std::index_sequence`. +template +using index_sequence = integer_sequence; -template -struct merge_and_renumber, index_sequence> - : index_sequence < I1..., (sizeof...(I1) + I2)... > {}; +namespace utility_internal +{ -template -struct make_index_sequence - : merge_and_renumber < typename make_index_sequence < N / 2 >::type, - typename make_index_sequence < N - N / 2 >::type > {}; +template +struct Extend; -template<> struct make_index_sequence<0> : index_sequence<> {}; -template<> struct make_index_sequence<1> : index_sequence<0> {}; +// Note that SeqSize == sizeof...(Ints). It's passed explicitly for efficiency. +template +struct Extend, SeqSize, 0> +{ + using type = integer_sequence < T, Ints..., (Ints + SeqSize)... >; +}; -template +template +struct Extend, SeqSize, 1> +{ + using type = integer_sequence < T, Ints..., (Ints + SeqSize)..., 2 * SeqSize >; +}; + +// Recursion helper for 'make_integer_sequence'. +// 'Gen::type' is an alias for 'integer_sequence'. +template +struct Gen +{ + using type = + typename Extend < typename Gen < T, N / 2 >::type, N / 2, N % 2 >::type; +}; + +template +struct Gen +{ + using type = integer_sequence; +}; + +} // namespace utility_internal + +// Compile-time sequences of integers + +// make_integer_sequence +// +// This template alias is equivalent to +// `integer_sequence`, and is designed to be a drop-in +// replacement for C++14's `std::make_integer_sequence`. +template +using make_integer_sequence = typename utility_internal::Gen::type; + +// make_index_sequence +// +// This template alias is equivalent to `index_sequence<0, 1, ..., N-1>`, +// and is designed to be a drop-in replacement for C++14's +// `std::make_index_sequence`. +template +using make_index_sequence = make_integer_sequence; + +// index_sequence_for +// +// Converts a typename pack into an index sequence of the same length, and +// is designed to be a drop-in replacement for C++14's +// `std::index_sequence_for()` +template using index_sequence_for = make_index_sequence; +//// END OF CODE FROM GOOGLE ABSEIL + +#endif + // dispatch utility (taken from ranges-v3) template struct priority_tag : priority_tag < N - 1 > {}; template<> struct priority_tag<0> {}; @@ -661,18 +3191,38 @@ struct static_const static constexpr T value{}; }; -template -constexpr T static_const::value; +#ifndef JSON_HAS_CPP_17 + + template + constexpr T static_const::value; // NOLINT(readability-redundant-declaration) + +#endif + +} // namespace detail +} // namespace nlohmann + +// #include + + +namespace nlohmann +{ +namespace detail +{ +// dispatching helper struct +template struct identity_tag {}; } // namespace detail } // namespace nlohmann // #include -#include // not #include // numeric_limits #include // false_type, is_constructible, is_integral, is_same, true_type #include // declval +#include // tuple + +// #include + // #include @@ -681,19 +3231,6 @@ constexpr T static_const::value; // #include - -namespace nlohmann -{ -namespace detail -{ -template struct make_void -{ - using type = void; -}; -template using void_t = typename make_void::type; -} // namespace detail -} // namespace nlohmann - // #include @@ -701,10 +3238,10 @@ namespace nlohmann { namespace detail { -template +template struct iterator_types {}; -template +template struct iterator_types < It, void_t +template struct iterator_traits { }; -template +template struct iterator_traits < T, enable_if_t < !std::is_pointer::value >> : iterator_types { }; -template +template struct iterator_traits::value>> { using iterator_category = std::random_access_iterator_tag; @@ -742,71 +3279,32 @@ struct iterator_traits::value>> } // namespace detail } // namespace nlohmann +// #include + + // #include + +namespace nlohmann +{ +NLOHMANN_CAN_CALL_STD_FUNC_IMPL(begin); +} // namespace nlohmann + +// #include + + +// #include + + +namespace nlohmann +{ +NLOHMANN_CAN_CALL_STD_FUNC_IMPL(end); +} // namespace nlohmann + // #include // #include - -#include - -// #include - - -// http://en.cppreference.com/w/cpp/experimental/is_detected -namespace nlohmann -{ -namespace detail -{ -struct nonesuch -{ - nonesuch() = delete; - ~nonesuch() = delete; - nonesuch(nonesuch const&) = delete; - nonesuch(nonesuch const&&) = delete; - void operator=(nonesuch const&) = delete; - void operator=(nonesuch&&) = delete; -}; - -template class Op, - class... Args> -struct detector -{ - using value_t = std::false_type; - using type = Default; -}; - -template class Op, class... Args> -struct detector>, Op, Args...> -{ - using value_t = std::true_type; - using type = Op; -}; - -template