From ff72723464be032b3f576dfce3c80cfdfe538772 Mon Sep 17 00:00:00 2001 From: ghoulslash <41651341+ghoulslash@users.noreply.github.com> Date: Thu, 5 Sep 2024 14:51:13 -0400 Subject: [PATCH 01/37] Fix Cmd_trainerslidein/out (#5326) * fix Cmd_trainerslidein battler Id * GetBattlerForBattleScript in trainerslideout --------- Co-authored-by: ghoulslash --- src/battle_script_commands.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 9d8c0d4491..3f483c9ea7 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -7439,7 +7439,7 @@ static void Cmd_trainerslidein(void) { CMD_ARGS(u8 battler); - u32 battler = GetBattlerAtPosition(cmd->battler); + u32 battler = GetBattlerForBattleScript(cmd->battler); BtlController_EmitTrainerSlide(battler, BUFFER_A); MarkBattlerForControllerExec(battler); @@ -15647,7 +15647,7 @@ static void Cmd_trainerslideout(void) { CMD_ARGS(u8 position); - u32 battler = GetBattlerAtPosition(cmd->position); + u32 battler = GetBattlerForBattleScript(cmd->position); BtlController_EmitTrainerSlideBack(battler, BUFFER_A); MarkBattlerForControllerExec(battler); From e9c0784dc09b4e37862cca81ef48ac2804ca61e1 Mon Sep 17 00:00:00 2001 From: Liamjd14 Date: Thu, 5 Sep 2024 21:31:14 +0100 Subject: [PATCH 02/37] Gen 9 Follower pokemon sprites (#5304) * Gen 9 Follower Sprites --- graphics/pokemon/annihilape/overworld.png | Bin 0 -> 1259 bytes .../pokemon/annihilape/overworld_normal.pal | 19 + .../pokemon/annihilape/overworld_shiny.pal | 19 + graphics/pokemon/arboliva/overworld.png | Bin 0 -> 892 bytes .../pokemon/arboliva/overworld_normal.pal | 19 + graphics/pokemon/arboliva/overworld_shiny.pal | 19 + graphics/pokemon/archaludon/overworld.png | Bin 0 -> 1278 bytes .../pokemon/archaludon/overworld_normal.pal | 19 + .../pokemon/archaludon/overworld_shiny.pal | 19 + graphics/pokemon/arctibax/overworld.png | Bin 0 -> 647 bytes .../pokemon/arctibax/overworld_normal.pal | 19 + graphics/pokemon/arctibax/overworld_shiny.pal | 19 + graphics/pokemon/armarouge/overworld.png | Bin 0 -> 1009 bytes .../pokemon/armarouge/overworld_normal.pal | 19 + .../pokemon/armarouge/overworld_shiny.pal | 19 + graphics/pokemon/baxcalibur/overworld.png | Bin 0 -> 1143 bytes .../pokemon/baxcalibur/overworld_normal.pal | 19 + .../pokemon/baxcalibur/overworld_shiny.pal | 19 + graphics/pokemon/bellibolt/overworld.png | Bin 0 -> 551 bytes .../pokemon/bellibolt/overworld_normal.pal | 19 + .../pokemon/bellibolt/overworld_shiny.pal | 19 + graphics/pokemon/bombirdier/overworld.png | Bin 0 -> 1213 bytes .../pokemon/bombirdier/overworld_normal.pal | 19 + .../pokemon/bombirdier/overworld_shiny.pal | 19 + graphics/pokemon/brambleghast/overworld.png | Bin 0 -> 812 bytes .../pokemon/brambleghast/overworld_normal.pal | 19 + .../pokemon/brambleghast/overworld_shiny.pal | 19 + graphics/pokemon/bramblin/overworld.png | Bin 0 -> 491 bytes .../pokemon/bramblin/overworld_normal.pal | 19 + graphics/pokemon/bramblin/overworld_shiny.pal | 19 + graphics/pokemon/brute_bonnet/overworld.png | Bin 0 -> 971 bytes .../pokemon/brute_bonnet/overworld_normal.pal | 19 + .../pokemon/brute_bonnet/overworld_shiny.pal | 19 + graphics/pokemon/capsakid/overworld.png | Bin 0 -> 519 bytes .../pokemon/capsakid/overworld_normal.pal | 19 + graphics/pokemon/capsakid/overworld_shiny.pal | 19 + graphics/pokemon/ceruledge/overworld.png | Bin 0 -> 919 bytes .../pokemon/ceruledge/overworld_normal.pal | 19 + .../pokemon/ceruledge/overworld_shiny.pal | 19 + graphics/pokemon/cetitan/overworld.png | Bin 0 -> 969 bytes graphics/pokemon/cetitan/overworld_normal.pal | 19 + graphics/pokemon/cetitan/overworld_shiny.pal | 19 + graphics/pokemon/cetoddle/overworld.png | Bin 0 -> 566 bytes .../pokemon/cetoddle/overworld_normal.pal | 19 + graphics/pokemon/cetoddle/overworld_shiny.pal | 19 + graphics/pokemon/charcadet/overworld.png | Bin 0 -> 717 bytes .../pokemon/charcadet/overworld_normal.pal | 19 + .../pokemon/charcadet/overworld_shiny.pal | 19 + graphics/pokemon/chi_yu/overworld.png | Bin 0 -> 780 bytes graphics/pokemon/chi_yu/overworld_normal.pal | 19 + graphics/pokemon/chi_yu/overworld_shiny.pal | 19 + graphics/pokemon/chien_pao/overworld.png | Bin 0 -> 1074 bytes .../pokemon/chien_pao/overworld_normal.pal | 19 + .../pokemon/chien_pao/overworld_shiny.pal | 19 + graphics/pokemon/crocalor/overworld.png | Bin 0 -> 722 bytes .../pokemon/crocalor/overworld_normal.pal | 19 + graphics/pokemon/crocalor/overworld_shiny.pal | 19 + graphics/pokemon/cyclizar/overworld.png | Bin 0 -> 723 bytes .../pokemon/cyclizar/overworld_normal.pal | 19 + graphics/pokemon/cyclizar/overworld_shiny.pal | 19 + graphics/pokemon/dachsbun/overworld.png | Bin 0 -> 824 bytes .../pokemon/dachsbun/overworld_normal.pal | 19 + graphics/pokemon/dachsbun/overworld_shiny.pal | 19 + graphics/pokemon/dipplin/overworld.png | Bin 0 -> 764 bytes graphics/pokemon/dipplin/overworld_normal.pal | 19 + graphics/pokemon/dipplin/overworld_shiny.pal | 19 + graphics/pokemon/dolliv/overworld.png | Bin 0 -> 653 bytes graphics/pokemon/dolliv/overworld_normal.pal | 19 + graphics/pokemon/dolliv/overworld_shiny.pal | 19 + graphics/pokemon/dondozo/overworld.png | Bin 0 -> 1929 bytes graphics/pokemon/dondozo/overworld_normal.pal | 19 + graphics/pokemon/dondozo/overworld_shiny.pal | 19 + graphics/pokemon/dudunsparce/overworld.png | Bin 0 -> 926 bytes .../pokemon/dudunsparce/overworld_normal.pal | 19 + .../pokemon/dudunsparce/overworld_shiny.pal | 19 + .../dudunsparce/three_segment/overworld.png | Bin 0 -> 1089 bytes .../three_segment/overworld_normal.pal | 19 + .../three_segment/overworld_shiny.pal | 19 + graphics/pokemon/espathra/overworld.png | Bin 0 -> 1138 bytes .../pokemon/espathra/overworld_normal.pal | 19 + graphics/pokemon/espathra/overworld_shiny.pal | 19 + graphics/pokemon/farigiraf/overworld.png | Bin 0 -> 853 bytes .../pokemon/farigiraf/overworld_normal.pal | 19 + .../pokemon/farigiraf/overworld_shiny.pal | 19 + graphics/pokemon/fezandipiti/overworld.png | Bin 0 -> 951 bytes .../pokemon/fezandipiti/overworld_normal.pal | 19 + .../pokemon/fezandipiti/overworld_shiny.pal | 19 + graphics/pokemon/fidough/overworld.png | Bin 0 -> 582 bytes graphics/pokemon/fidough/overworld_normal.pal | 19 + graphics/pokemon/fidough/overworld_shiny.pal | 19 + graphics/pokemon/finizen/overworld.png | Bin 0 -> 740 bytes graphics/pokemon/finizen/overworld_normal.pal | 19 + graphics/pokemon/finizen/overworld_shiny.pal | 19 + graphics/pokemon/flamigo/overworld.png | Bin 0 -> 662 bytes graphics/pokemon/flamigo/overworld_normal.pal | 19 + graphics/pokemon/flamigo/overworld_shiny.pal | 19 + graphics/pokemon/flittle/overworld.png | Bin 0 -> 554 bytes graphics/pokemon/flittle/overworld_normal.pal | 19 + graphics/pokemon/flittle/overworld_shiny.pal | 19 + graphics/pokemon/floragato/overworld.png | Bin 0 -> 738 bytes .../pokemon/floragato/overworld_normal.pal | 19 + .../pokemon/floragato/overworld_shiny.pal | 19 + graphics/pokemon/flutter_mane/overworld.png | Bin 0 -> 931 bytes .../pokemon/flutter_mane/overworld_normal.pal | 19 + .../pokemon/flutter_mane/overworld_shiny.pal | 19 + graphics/pokemon/frigibax/overworld.png | Bin 0 -> 503 bytes .../pokemon/frigibax/overworld_normal.pal | 19 + graphics/pokemon/frigibax/overworld_shiny.pal | 19 + graphics/pokemon/fuecoco/overworld.png | Bin 0 -> 591 bytes graphics/pokemon/fuecoco/overworld_normal.pal | 19 + graphics/pokemon/fuecoco/overworld_shiny.pal | 19 + graphics/pokemon/garganacl/overworld.png | Bin 0 -> 1009 bytes .../pokemon/garganacl/overworld_normal.pal | 19 + .../pokemon/garganacl/overworld_shiny.pal | 19 + graphics/pokemon/gholdengo/overworld.png | Bin 0 -> 906 bytes .../pokemon/gholdengo/overworld_normal.pal | 19 + .../pokemon/gholdengo/overworld_shiny.pal | 19 + graphics/pokemon/gimmighoul/overworld.png | Bin 0 -> 648 bytes .../pokemon/gimmighoul/overworld_normal.pal | 19 + .../pokemon/gimmighoul/overworld_shiny.pal | 19 + graphics/pokemon/glimmet/overworld.png | Bin 0 -> 539 bytes graphics/pokemon/glimmet/overworld_normal.pal | 19 + graphics/pokemon/glimmet/overworld_shiny.pal | 19 + graphics/pokemon/glimmora/overworld.png | Bin 0 -> 891 bytes .../pokemon/glimmora/overworld_normal.pal | 19 + graphics/pokemon/glimmora/overworld_shiny.pal | 19 + graphics/pokemon/gouging_fire/overworld.png | Bin 0 -> 1141 bytes .../pokemon/gouging_fire/overworld_normal.pal | 19 + .../pokemon/gouging_fire/overworld_shiny.pal | 19 + graphics/pokemon/grafaiai/overworld.png | Bin 0 -> 751 bytes .../pokemon/grafaiai/overworld_normal.pal | 19 + graphics/pokemon/grafaiai/overworld_shiny.pal | 19 + graphics/pokemon/great_tusk/overworld.png | Bin 0 -> 855 bytes .../pokemon/great_tusk/overworld_normal.pal | 19 + .../pokemon/great_tusk/overworld_shiny.pal | 19 + graphics/pokemon/greavard/overworld.png | Bin 0 -> 806 bytes .../pokemon/greavard/overworld_normal.pal | 19 + graphics/pokemon/greavard/overworld_shiny.pal | 19 + graphics/pokemon/houndstone/overworld.png | Bin 0 -> 1043 bytes .../pokemon/houndstone/overworld_normal.pal | 19 + .../pokemon/houndstone/overworld_shiny.pal | 19 + graphics/pokemon/hydrapple/overworld.png | Bin 0 -> 2096 bytes .../pokemon/hydrapple/overworld_normal.pal | 19 + .../pokemon/hydrapple/overworld_shiny.pal | 19 + graphics/pokemon/iron_boulder/overworld.png | Bin 0 -> 1105 bytes .../pokemon/iron_boulder/overworld_normal.pal | 19 + .../pokemon/iron_boulder/overworld_shiny.pal | 19 + graphics/pokemon/iron_bundle/overworld.png | Bin 0 -> 697 bytes .../pokemon/iron_bundle/overworld_normal.pal | 19 + .../pokemon/iron_bundle/overworld_shiny.pal | 19 + graphics/pokemon/iron_crown/overworld.png | Bin 0 -> 1012 bytes .../pokemon/iron_crown/overworld_normal.pal | 19 + .../pokemon/iron_crown/overworld_shiny.pal | 19 + graphics/pokemon/iron_hands/overworld.png | Bin 0 -> 1153 bytes .../pokemon/iron_hands/overworld_normal.pal | 19 + .../pokemon/iron_hands/overworld_shiny.pal | 19 + graphics/pokemon/iron_jugulis/overworld.png | Bin 0 -> 1513 bytes .../pokemon/iron_jugulis/overworld_normal.pal | 19 + .../pokemon/iron_jugulis/overworld_shiny.pal | 19 + graphics/pokemon/iron_leaves/overworld.png | Bin 0 -> 1012 bytes .../pokemon/iron_leaves/overworld_normal.pal | 19 + .../pokemon/iron_leaves/overworld_shiny.pal | 19 + graphics/pokemon/iron_moth/overworld.png | Bin 0 -> 1154 bytes .../pokemon/iron_moth/overworld_normal.pal | 19 + .../pokemon/iron_moth/overworld_shiny.pal | 19 + graphics/pokemon/iron_thorns/overworld.png | Bin 0 -> 1020 bytes .../pokemon/iron_thorns/overworld_normal.pal | 19 + .../pokemon/iron_thorns/overworld_shiny.pal | 19 + graphics/pokemon/iron_treads/overworld.png | Bin 0 -> 846 bytes .../pokemon/iron_treads/overworld_normal.pal | 19 + .../pokemon/iron_treads/overworld_shiny.pal | 19 + graphics/pokemon/iron_valiant/overworld.png | Bin 0 -> 981 bytes .../pokemon/iron_valiant/overworld_normal.pal | 19 + .../pokemon/iron_valiant/overworld_shiny.pal | 19 + graphics/pokemon/kilowattrel/overworld.png | Bin 0 -> 1109 bytes .../pokemon/kilowattrel/overworld_normal.pal | 19 + .../pokemon/kilowattrel/overworld_shiny.pal | 19 + graphics/pokemon/kingambit/overworld.png | Bin 0 -> 1495 bytes .../pokemon/kingambit/overworld_normal.pal | 19 + .../pokemon/kingambit/overworld_shiny.pal | 19 + graphics/pokemon/klawf/overworld.png | Bin 0 -> 852 bytes graphics/pokemon/klawf/overworld_normal.pal | 19 + graphics/pokemon/klawf/overworld_shiny.pal | 19 + graphics/pokemon/koraidon/overworld.png | Bin 0 -> 2428 bytes .../pokemon/koraidon/overworld_normal.pal | 19 + graphics/pokemon/koraidon/overworld_shiny.pal | 19 + graphics/pokemon/lechonk/overworld.png | Bin 0 -> 457 bytes graphics/pokemon/lechonk/overworld_normal.pal | 19 + graphics/pokemon/lechonk/overworld_shiny.pal | 19 + graphics/pokemon/lokix/overworld.png | Bin 0 -> 956 bytes graphics/pokemon/lokix/overworld_normal.pal | 19 + graphics/pokemon/lokix/overworld_shiny.pal | 19 + graphics/pokemon/mabosstiff/overworld.png | Bin 0 -> 891 bytes .../pokemon/mabosstiff/overworld_normal.pal | 19 + .../pokemon/mabosstiff/overworld_shiny.pal | 19 + graphics/pokemon/maschiff/overworld.png | Bin 0 -> 642 bytes .../pokemon/maschiff/overworld_normal.pal | 19 + graphics/pokemon/maschiff/overworld_shiny.pal | 19 + graphics/pokemon/maushold/four/overworld.png | Bin 0 -> 759 bytes .../maushold/four/overworld_normal.pal | 19 + .../pokemon/maushold/four/overworld_shiny.pal | 19 + graphics/pokemon/maushold/overworld.png | Bin 0 -> 724 bytes .../pokemon/maushold/overworld_normal.pal | 19 + graphics/pokemon/maushold/overworld_shiny.pal | 19 + graphics/pokemon/meowscarada/overworld.png | Bin 0 -> 925 bytes .../pokemon/meowscarada/overworld_normal.pal | 19 + .../pokemon/meowscarada/overworld_shiny.pal | 19 + graphics/pokemon/miraidon/overworld.png | Bin 0 -> 1927 bytes .../pokemon/miraidon/overworld_normal.pal | 19 + graphics/pokemon/miraidon/overworld_shiny.pal | 19 + graphics/pokemon/munkidori/overworld.png | Bin 0 -> 776 bytes .../pokemon/munkidori/overworld_normal.pal | 19 + .../pokemon/munkidori/overworld_shiny.pal | 19 + graphics/pokemon/nacli/overworld.png | Bin 0 -> 480 bytes graphics/pokemon/nacli/overworld_normal.pal | 19 + graphics/pokemon/nacli/overworld_shiny.pal | 19 + graphics/pokemon/naclstack/overworld.png | Bin 0 -> 672 bytes .../pokemon/naclstack/overworld_normal.pal | 19 + .../pokemon/naclstack/overworld_shiny.pal | 19 + graphics/pokemon/nymble/overworld.png | Bin 0 -> 605 bytes graphics/pokemon/nymble/overworld_normal.pal | 19 + graphics/pokemon/nymble/overworld_shiny.pal | 19 + .../pokemon/ogerpon/cornerstone/overworld.png | Bin 0 -> 998 bytes .../ogerpon/cornerstone/overworld_normal.pal | 19 + .../ogerpon/cornerstone/overworld_shiny.pal | 19 + .../pokemon/ogerpon/hearthflame/overworld.png | Bin 0 -> 1022 bytes .../ogerpon/hearthflame/overworld_normal.pal | 19 + .../ogerpon/hearthflame/overworld_shiny.pal | 19 + graphics/pokemon/ogerpon/overworld.png | Bin 0 -> 1000 bytes graphics/pokemon/ogerpon/overworld_normal.pal | 19 + graphics/pokemon/ogerpon/overworld_shiny.pal | 19 + .../pokemon/ogerpon/wellspring/overworld.png | Bin 0 -> 939 bytes .../ogerpon/wellspring/overworld_normal.pal | 19 + .../ogerpon/wellspring/overworld_shiny.pal | 19 + .../pokemon/oinkologne/female/overworld.png | Bin 0 -> 597 bytes .../oinkologne/female/overworld_normal.pal | 19 + .../oinkologne/female/overworld_shiny.pal | 19 + graphics/pokemon/oinkologne/overworld.png | Bin 0 -> 590 bytes .../pokemon/oinkologne/overworld_normal.pal | 19 + .../pokemon/oinkologne/overworld_shiny.pal | 19 + graphics/pokemon/okidogi/overworld.png | Bin 0 -> 1236 bytes graphics/pokemon/okidogi/overworld_normal.pal | 19 + graphics/pokemon/okidogi/overworld_shiny.pal | 19 + graphics/pokemon/orthworm/overworld.png | Bin 0 -> 1149 bytes .../pokemon/orthworm/overworld_normal.pal | 19 + graphics/pokemon/orthworm/overworld_shiny.pal | 19 + graphics/pokemon/palafin/hero/overworld.png | Bin 0 -> 1104 bytes .../pokemon/palafin/hero/overworld_normal.pal | 19 + .../pokemon/palafin/hero/overworld_shiny.pal | 19 + graphics/pokemon/palafin/overworld.png | Bin 0 -> 751 bytes graphics/pokemon/palafin/overworld_normal.pal | 19 + graphics/pokemon/palafin/overworld_shiny.pal | 19 + graphics/pokemon/pawmi/overworld.png | Bin 0 -> 583 bytes graphics/pokemon/pawmi/overworld_normal.pal | 19 + graphics/pokemon/pawmi/overworld_shiny.pal | 19 + graphics/pokemon/pawmo/overworld.png | Bin 0 -> 635 bytes graphics/pokemon/pawmo/overworld_normal.pal | 19 + graphics/pokemon/pawmo/overworld_shiny.pal | 19 + graphics/pokemon/pawmot/overworld.png | Bin 0 -> 726 bytes graphics/pokemon/pawmot/overworld_normal.pal | 19 + graphics/pokemon/pawmot/overworld_shiny.pal | 19 + graphics/pokemon/pecharunt/overworld.png | Bin 0 -> 832 bytes .../pokemon/pecharunt/overworld_normal.pal | 19 + .../pokemon/pecharunt/overworld_shiny.pal | 19 + graphics/pokemon/poltchageist/overworld.png | Bin 0 -> 721 bytes .../pokemon/poltchageist/overworld_normal.pal | 19 + .../pokemon/poltchageist/overworld_shiny.pal | 19 + graphics/pokemon/quaquaval/overworld.png | Bin 0 -> 1139 bytes .../pokemon/quaquaval/overworld_normal.pal | 19 + .../pokemon/quaquaval/overworld_shiny.pal | 19 + graphics/pokemon/quaxly/overworld.png | Bin 0 -> 548 bytes graphics/pokemon/quaxly/overworld_normal.pal | 19 + graphics/pokemon/quaxly/overworld_shiny.pal | 19 + graphics/pokemon/quaxwell/overworld.png | Bin 0 -> 674 bytes .../pokemon/quaxwell/overworld_normal.pal | 19 + graphics/pokemon/quaxwell/overworld_shiny.pal | 19 + graphics/pokemon/rabsca/overworld.png | Bin 0 -> 869 bytes graphics/pokemon/rabsca/overworld_normal.pal | 19 + graphics/pokemon/rabsca/overworld_shiny.pal | 19 + graphics/pokemon/raging_bolt/overworld.png | Bin 0 -> 1792 bytes .../pokemon/raging_bolt/overworld_normal.pal | 19 + .../pokemon/raging_bolt/overworld_shiny.pal | 19 + graphics/pokemon/rellor/overworld.png | Bin 0 -> 772 bytes graphics/pokemon/rellor/overworld_normal.pal | 19 + graphics/pokemon/rellor/overworld_shiny.pal | 19 + graphics/pokemon/revavroom/overworld.png | Bin 0 -> 1063 bytes .../pokemon/revavroom/overworld_normal.pal | 19 + .../pokemon/revavroom/overworld_shiny.pal | 19 + graphics/pokemon/roaring_moon/overworld.png | Bin 0 -> 1109 bytes .../pokemon/roaring_moon/overworld_normal.pal | 19 + .../pokemon/roaring_moon/overworld_shiny.pal | 19 + graphics/pokemon/sandy_shocks/overworld.png | Bin 0 -> 1118 bytes .../pokemon/sandy_shocks/overworld_normal.pal | 19 + .../pokemon/sandy_shocks/overworld_shiny.pal | 19 + graphics/pokemon/scovillain/overworld.png | Bin 0 -> 1037 bytes .../pokemon/scovillain/overworld_normal.pal | 19 + .../pokemon/scovillain/overworld_shiny.pal | 19 + graphics/pokemon/scream_tail/overworld.png | Bin 0 -> 670 bytes .../pokemon/scream_tail/overworld_normal.pal | 19 + .../pokemon/scream_tail/overworld_shiny.pal | 19 + graphics/pokemon/shroodle/overworld.png | Bin 0 -> 504 bytes .../pokemon/shroodle/overworld_normal.pal | 19 + graphics/pokemon/shroodle/overworld_shiny.pal | 19 + graphics/pokemon/sinistcha/overworld.png | Bin 0 -> 681 bytes .../pokemon/sinistcha/overworld_normal.pal | 19 + .../pokemon/sinistcha/overworld_shiny.pal | 19 + graphics/pokemon/skeledirge/overworld.png | Bin 0 -> 1136 bytes .../pokemon/skeledirge/overworld_normal.pal | 19 + .../pokemon/skeledirge/overworld_shiny.pal | 19 + graphics/pokemon/slither_wing/overworld.png | Bin 0 -> 1056 bytes .../pokemon/slither_wing/overworld_normal.pal | 19 + .../pokemon/slither_wing/overworld_shiny.pal | 19 + graphics/pokemon/smoliv/overworld.png | Bin 0 -> 400 bytes graphics/pokemon/smoliv/overworld_normal.pal | 19 + graphics/pokemon/smoliv/overworld_shiny.pal | 19 + graphics/pokemon/spidops/overworld.png | Bin 0 -> 747 bytes graphics/pokemon/spidops/overworld_normal.pal | 19 + graphics/pokemon/spidops/overworld_shiny.pal | 19 + graphics/pokemon/sprigatito/overworld.png | Bin 0 -> 696 bytes .../pokemon/sprigatito/overworld_normal.pal | 19 + .../pokemon/sprigatito/overworld_shiny.pal | 19 + .../squawkabilly/blue_plumage/overworld.png | Bin 0 -> 893 bytes .../blue_plumage/overworld_normal.pal | 19 + .../blue_plumage/overworld_shiny.pal | 19 + graphics/pokemon/squawkabilly/overworld.png | Bin 0 -> 893 bytes .../pokemon/squawkabilly/overworld_normal.pal | 19 + .../pokemon/squawkabilly/overworld_shiny.pal | 19 + .../squawkabilly/white_plumage/overworld.png | Bin 0 -> 893 bytes .../white_plumage/overworld_normal.pal | 19 + .../white_plumage/overworld_shiny.pal | 19 + .../squawkabilly/yellow_plumage/overworld.png | Bin 0 -> 893 bytes .../yellow_plumage/overworld_normal.pal | 19 + .../yellow_plumage/overworld_shiny.pal | 19 + graphics/pokemon/tadbulb/overworld.png | Bin 0 -> 400 bytes graphics/pokemon/tadbulb/overworld_normal.pal | 19 + graphics/pokemon/tadbulb/overworld_shiny.pal | 19 + graphics/pokemon/tandemaus/overworld.png | Bin 0 -> 648 bytes .../pokemon/tandemaus/overworld_normal.pal | 19 + .../pokemon/tandemaus/overworld_shiny.pal | 19 + graphics/pokemon/tarountula/overworld.png | Bin 0 -> 748 bytes .../pokemon/tarountula/overworld_normal.pal | 19 + .../pokemon/tarountula/overworld_shiny.pal | 19 + .../pokemon/tatsugiri/droopy/overworld.png | Bin 0 -> 447 bytes .../tatsugiri/droopy/overworld_normal.pal | 19 + .../tatsugiri/droopy/overworld_shiny.pal | 19 + graphics/pokemon/tatsugiri/overworld.png | Bin 0 -> 503 bytes .../pokemon/tatsugiri/overworld_normal.pal | 19 + .../pokemon/tatsugiri/overworld_shiny.pal | 19 + .../pokemon/tatsugiri/stretchy/overworld.png | Bin 0 -> 447 bytes .../tatsugiri/stretchy/overworld_normal.pal | 19 + .../tatsugiri/stretchy/overworld_shiny.pal | 19 + .../tauros/paldean_aqua_breed/overworld.png | Bin 0 -> 1001 bytes .../paldean_aqua_breed/overworld_normal.pal | 19 + .../paldean_aqua_breed/overworld_shiny.pal | 19 + .../tauros/paldean_blaze_breed/overworld.png | Bin 0 -> 919 bytes .../paldean_blaze_breed/overworld_normal.pal | 19 + .../paldean_blaze_breed/overworld_shiny.pal | 19 + .../tauros/paldean_combat_breed/overworld.png | Bin 0 -> 928 bytes .../paldean_combat_breed/overworld_normal.pal | 19 + .../paldean_combat_breed/overworld_shiny.pal | 19 + graphics/pokemon/terapagos/overworld.png | Bin 0 -> 795 bytes .../pokemon/terapagos/overworld_normal.pal | 19 + .../pokemon/terapagos/overworld_shiny.pal | 19 + .../pokemon/terapagos/terastal/overworld.png | Bin 0 -> 1084 bytes .../terapagos/terastal/overworld_normal.pal | 19 + .../terapagos/terastal/overworld_shiny.pal | 19 + graphics/pokemon/ting_lu/overworld.png | Bin 0 -> 1084 bytes graphics/pokemon/ting_lu/overworld_normal.pal | 19 + graphics/pokemon/ting_lu/overworld_shiny.pal | 19 + graphics/pokemon/tinkatink/overworld.png | Bin 0 -> 583 bytes .../pokemon/tinkatink/overworld_normal.pal | 19 + .../pokemon/tinkatink/overworld_shiny.pal | 19 + graphics/pokemon/tinkaton/overworld.png | Bin 0 -> 1225 bytes .../pokemon/tinkaton/overworld_normal.pal | 19 + graphics/pokemon/tinkaton/overworld_shiny.pal | 19 + graphics/pokemon/tinkatuff/overworld.png | Bin 0 -> 778 bytes .../pokemon/tinkatuff/overworld_normal.pal | 19 + .../pokemon/tinkatuff/overworld_shiny.pal | 19 + graphics/pokemon/toedscool/overworld.png | Bin 0 -> 531 bytes .../pokemon/toedscool/overworld_normal.pal | 19 + .../pokemon/toedscool/overworld_shiny.pal | 19 + graphics/pokemon/toedscruel/overworld.png | Bin 0 -> 780 bytes .../pokemon/toedscruel/overworld_normal.pal | 19 + .../pokemon/toedscruel/overworld_shiny.pal | 19 + .../ursaluna/bloodmoon/overworld_shiny.pal | 19 + graphics/pokemon/varoom/overworld.png | Bin 0 -> 753 bytes graphics/pokemon/varoom/overworld_normal.pal | 19 + graphics/pokemon/varoom/overworld_shiny.pal | 19 + graphics/pokemon/veluza/overworld.png | Bin 0 -> 912 bytes graphics/pokemon/veluza/overworld_normal.pal | 19 + graphics/pokemon/veluza/overworld_shiny.pal | 19 + graphics/pokemon/walking_wake/overworld.png | Bin 0 -> 1219 bytes .../pokemon/walking_wake/overworld_normal.pal | 19 + .../pokemon/walking_wake/overworld_shiny.pal | 19 + graphics/pokemon/wattrel/overworld.png | Bin 0 -> 475 bytes graphics/pokemon/wattrel/overworld_normal.pal | 19 + graphics/pokemon/wattrel/overworld_shiny.pal | 19 + graphics/pokemon/wiglett/overworld.png | Bin 0 -> 444 bytes graphics/pokemon/wiglett/overworld_normal.pal | 19 + graphics/pokemon/wiglett/overworld_shiny.pal | 19 + graphics/pokemon/wo_chien/overworld.png | Bin 0 -> 1036 bytes .../pokemon/wo_chien/overworld_normal.pal | 19 + graphics/pokemon/wo_chien/overworld_shiny.pal | 19 + graphics/pokemon/wugtrio/overworld.png | Bin 0 -> 952 bytes graphics/pokemon/wugtrio/overworld_normal.pal | 19 + graphics/pokemon/wugtrio/overworld_shiny.pal | 19 + spritesheet_rules.mk | 408 ++++++++ src/data/graphics/pokemon.h | 822 ++++++++------- .../object_event_pic_tables_followers.h | 369 +++---- .../pokemon/species_info/gen_1_families.h | 32 + .../pokemon/species_info/gen_2_families.h | 24 + .../pokemon/species_info/gen_5_families.h | 8 + .../pokemon/species_info/gen_8_families.h | 24 + .../pokemon/species_info/gen_9_families.h | 988 ++++++++++++++++++ 414 files changed, 7252 insertions(+), 572 deletions(-) create mode 100644 graphics/pokemon/annihilape/overworld.png create mode 100644 graphics/pokemon/annihilape/overworld_normal.pal create mode 100644 graphics/pokemon/annihilape/overworld_shiny.pal create mode 100644 graphics/pokemon/arboliva/overworld.png create mode 100644 graphics/pokemon/arboliva/overworld_normal.pal create mode 100644 graphics/pokemon/arboliva/overworld_shiny.pal create mode 100644 graphics/pokemon/archaludon/overworld.png create mode 100644 graphics/pokemon/archaludon/overworld_normal.pal create mode 100644 graphics/pokemon/archaludon/overworld_shiny.pal create mode 100644 graphics/pokemon/arctibax/overworld.png create mode 100644 graphics/pokemon/arctibax/overworld_normal.pal create mode 100644 graphics/pokemon/arctibax/overworld_shiny.pal create mode 100644 graphics/pokemon/armarouge/overworld.png create mode 100644 graphics/pokemon/armarouge/overworld_normal.pal create mode 100644 graphics/pokemon/armarouge/overworld_shiny.pal create mode 100644 graphics/pokemon/baxcalibur/overworld.png create mode 100644 graphics/pokemon/baxcalibur/overworld_normal.pal create mode 100644 graphics/pokemon/baxcalibur/overworld_shiny.pal create mode 100644 graphics/pokemon/bellibolt/overworld.png create mode 100644 graphics/pokemon/bellibolt/overworld_normal.pal create mode 100644 graphics/pokemon/bellibolt/overworld_shiny.pal create mode 100644 graphics/pokemon/bombirdier/overworld.png create mode 100644 graphics/pokemon/bombirdier/overworld_normal.pal create mode 100644 graphics/pokemon/bombirdier/overworld_shiny.pal create mode 100644 graphics/pokemon/brambleghast/overworld.png create mode 100644 graphics/pokemon/brambleghast/overworld_normal.pal create mode 100644 graphics/pokemon/brambleghast/overworld_shiny.pal create mode 100644 graphics/pokemon/bramblin/overworld.png create mode 100644 graphics/pokemon/bramblin/overworld_normal.pal create mode 100644 graphics/pokemon/bramblin/overworld_shiny.pal create mode 100644 graphics/pokemon/brute_bonnet/overworld.png create mode 100644 graphics/pokemon/brute_bonnet/overworld_normal.pal create mode 100644 graphics/pokemon/brute_bonnet/overworld_shiny.pal create mode 100644 graphics/pokemon/capsakid/overworld.png create mode 100644 graphics/pokemon/capsakid/overworld_normal.pal create mode 100644 graphics/pokemon/capsakid/overworld_shiny.pal create mode 100644 graphics/pokemon/ceruledge/overworld.png create mode 100644 graphics/pokemon/ceruledge/overworld_normal.pal create mode 100644 graphics/pokemon/ceruledge/overworld_shiny.pal create mode 100644 graphics/pokemon/cetitan/overworld.png create mode 100644 graphics/pokemon/cetitan/overworld_normal.pal create mode 100644 graphics/pokemon/cetitan/overworld_shiny.pal create mode 100644 graphics/pokemon/cetoddle/overworld.png create mode 100644 graphics/pokemon/cetoddle/overworld_normal.pal create mode 100644 graphics/pokemon/cetoddle/overworld_shiny.pal create mode 100644 graphics/pokemon/charcadet/overworld.png create mode 100644 graphics/pokemon/charcadet/overworld_normal.pal create mode 100644 graphics/pokemon/charcadet/overworld_shiny.pal create mode 100644 graphics/pokemon/chi_yu/overworld.png create mode 100644 graphics/pokemon/chi_yu/overworld_normal.pal create mode 100644 graphics/pokemon/chi_yu/overworld_shiny.pal create mode 100644 graphics/pokemon/chien_pao/overworld.png create mode 100644 graphics/pokemon/chien_pao/overworld_normal.pal create mode 100644 graphics/pokemon/chien_pao/overworld_shiny.pal create mode 100644 graphics/pokemon/crocalor/overworld.png create mode 100644 graphics/pokemon/crocalor/overworld_normal.pal create mode 100644 graphics/pokemon/crocalor/overworld_shiny.pal create mode 100644 graphics/pokemon/cyclizar/overworld.png create mode 100644 graphics/pokemon/cyclizar/overworld_normal.pal create mode 100644 graphics/pokemon/cyclizar/overworld_shiny.pal create mode 100644 graphics/pokemon/dachsbun/overworld.png create mode 100644 graphics/pokemon/dachsbun/overworld_normal.pal create mode 100644 graphics/pokemon/dachsbun/overworld_shiny.pal create mode 100644 graphics/pokemon/dipplin/overworld.png create mode 100644 graphics/pokemon/dipplin/overworld_normal.pal create mode 100644 graphics/pokemon/dipplin/overworld_shiny.pal create mode 100644 graphics/pokemon/dolliv/overworld.png create mode 100644 graphics/pokemon/dolliv/overworld_normal.pal create mode 100644 graphics/pokemon/dolliv/overworld_shiny.pal create mode 100644 graphics/pokemon/dondozo/overworld.png create mode 100644 graphics/pokemon/dondozo/overworld_normal.pal create mode 100644 graphics/pokemon/dondozo/overworld_shiny.pal create mode 100644 graphics/pokemon/dudunsparce/overworld.png create mode 100644 graphics/pokemon/dudunsparce/overworld_normal.pal create mode 100644 graphics/pokemon/dudunsparce/overworld_shiny.pal create mode 100644 graphics/pokemon/dudunsparce/three_segment/overworld.png create mode 100644 graphics/pokemon/dudunsparce/three_segment/overworld_normal.pal create mode 100644 graphics/pokemon/dudunsparce/three_segment/overworld_shiny.pal create mode 100644 graphics/pokemon/espathra/overworld.png create mode 100644 graphics/pokemon/espathra/overworld_normal.pal create mode 100644 graphics/pokemon/espathra/overworld_shiny.pal create mode 100644 graphics/pokemon/farigiraf/overworld.png create mode 100644 graphics/pokemon/farigiraf/overworld_normal.pal create mode 100644 graphics/pokemon/farigiraf/overworld_shiny.pal create mode 100644 graphics/pokemon/fezandipiti/overworld.png create mode 100644 graphics/pokemon/fezandipiti/overworld_normal.pal create mode 100644 graphics/pokemon/fezandipiti/overworld_shiny.pal create mode 100644 graphics/pokemon/fidough/overworld.png create mode 100644 graphics/pokemon/fidough/overworld_normal.pal create mode 100644 graphics/pokemon/fidough/overworld_shiny.pal create mode 100644 graphics/pokemon/finizen/overworld.png create mode 100644 graphics/pokemon/finizen/overworld_normal.pal create mode 100644 graphics/pokemon/finizen/overworld_shiny.pal create mode 100644 graphics/pokemon/flamigo/overworld.png create mode 100644 graphics/pokemon/flamigo/overworld_normal.pal create mode 100644 graphics/pokemon/flamigo/overworld_shiny.pal create mode 100644 graphics/pokemon/flittle/overworld.png create mode 100644 graphics/pokemon/flittle/overworld_normal.pal create mode 100644 graphics/pokemon/flittle/overworld_shiny.pal create mode 100644 graphics/pokemon/floragato/overworld.png create mode 100644 graphics/pokemon/floragato/overworld_normal.pal create mode 100644 graphics/pokemon/floragato/overworld_shiny.pal create mode 100644 graphics/pokemon/flutter_mane/overworld.png create mode 100644 graphics/pokemon/flutter_mane/overworld_normal.pal create mode 100644 graphics/pokemon/flutter_mane/overworld_shiny.pal create mode 100644 graphics/pokemon/frigibax/overworld.png create mode 100644 graphics/pokemon/frigibax/overworld_normal.pal create mode 100644 graphics/pokemon/frigibax/overworld_shiny.pal create mode 100644 graphics/pokemon/fuecoco/overworld.png create mode 100644 graphics/pokemon/fuecoco/overworld_normal.pal create mode 100644 graphics/pokemon/fuecoco/overworld_shiny.pal create mode 100644 graphics/pokemon/garganacl/overworld.png create mode 100644 graphics/pokemon/garganacl/overworld_normal.pal create mode 100644 graphics/pokemon/garganacl/overworld_shiny.pal create mode 100644 graphics/pokemon/gholdengo/overworld.png create mode 100644 graphics/pokemon/gholdengo/overworld_normal.pal create mode 100644 graphics/pokemon/gholdengo/overworld_shiny.pal create mode 100644 graphics/pokemon/gimmighoul/overworld.png create mode 100644 graphics/pokemon/gimmighoul/overworld_normal.pal create mode 100644 graphics/pokemon/gimmighoul/overworld_shiny.pal create mode 100644 graphics/pokemon/glimmet/overworld.png create mode 100644 graphics/pokemon/glimmet/overworld_normal.pal create mode 100644 graphics/pokemon/glimmet/overworld_shiny.pal create mode 100644 graphics/pokemon/glimmora/overworld.png create mode 100644 graphics/pokemon/glimmora/overworld_normal.pal create mode 100644 graphics/pokemon/glimmora/overworld_shiny.pal create mode 100644 graphics/pokemon/gouging_fire/overworld.png create mode 100644 graphics/pokemon/gouging_fire/overworld_normal.pal create mode 100644 graphics/pokemon/gouging_fire/overworld_shiny.pal create mode 100644 graphics/pokemon/grafaiai/overworld.png create mode 100644 graphics/pokemon/grafaiai/overworld_normal.pal create mode 100644 graphics/pokemon/grafaiai/overworld_shiny.pal create mode 100644 graphics/pokemon/great_tusk/overworld.png create mode 100644 graphics/pokemon/great_tusk/overworld_normal.pal create mode 100644 graphics/pokemon/great_tusk/overworld_shiny.pal create mode 100644 graphics/pokemon/greavard/overworld.png create mode 100644 graphics/pokemon/greavard/overworld_normal.pal create mode 100644 graphics/pokemon/greavard/overworld_shiny.pal create mode 100644 graphics/pokemon/houndstone/overworld.png create mode 100644 graphics/pokemon/houndstone/overworld_normal.pal create mode 100644 graphics/pokemon/houndstone/overworld_shiny.pal create mode 100644 graphics/pokemon/hydrapple/overworld.png create mode 100644 graphics/pokemon/hydrapple/overworld_normal.pal create mode 100644 graphics/pokemon/hydrapple/overworld_shiny.pal create mode 100644 graphics/pokemon/iron_boulder/overworld.png create mode 100644 graphics/pokemon/iron_boulder/overworld_normal.pal create mode 100644 graphics/pokemon/iron_boulder/overworld_shiny.pal create mode 100644 graphics/pokemon/iron_bundle/overworld.png create mode 100644 graphics/pokemon/iron_bundle/overworld_normal.pal create mode 100644 graphics/pokemon/iron_bundle/overworld_shiny.pal create mode 100644 graphics/pokemon/iron_crown/overworld.png create mode 100644 graphics/pokemon/iron_crown/overworld_normal.pal create mode 100644 graphics/pokemon/iron_crown/overworld_shiny.pal create mode 100644 graphics/pokemon/iron_hands/overworld.png create mode 100644 graphics/pokemon/iron_hands/overworld_normal.pal create mode 100644 graphics/pokemon/iron_hands/overworld_shiny.pal create mode 100644 graphics/pokemon/iron_jugulis/overworld.png create mode 100644 graphics/pokemon/iron_jugulis/overworld_normal.pal create mode 100644 graphics/pokemon/iron_jugulis/overworld_shiny.pal create mode 100644 graphics/pokemon/iron_leaves/overworld.png create mode 100644 graphics/pokemon/iron_leaves/overworld_normal.pal create mode 100644 graphics/pokemon/iron_leaves/overworld_shiny.pal create mode 100644 graphics/pokemon/iron_moth/overworld.png create mode 100644 graphics/pokemon/iron_moth/overworld_normal.pal create mode 100644 graphics/pokemon/iron_moth/overworld_shiny.pal create mode 100644 graphics/pokemon/iron_thorns/overworld.png create mode 100644 graphics/pokemon/iron_thorns/overworld_normal.pal create mode 100644 graphics/pokemon/iron_thorns/overworld_shiny.pal create mode 100644 graphics/pokemon/iron_treads/overworld.png create mode 100644 graphics/pokemon/iron_treads/overworld_normal.pal create mode 100644 graphics/pokemon/iron_treads/overworld_shiny.pal create mode 100644 graphics/pokemon/iron_valiant/overworld.png create mode 100644 graphics/pokemon/iron_valiant/overworld_normal.pal create mode 100644 graphics/pokemon/iron_valiant/overworld_shiny.pal create mode 100644 graphics/pokemon/kilowattrel/overworld.png create mode 100644 graphics/pokemon/kilowattrel/overworld_normal.pal create mode 100644 graphics/pokemon/kilowattrel/overworld_shiny.pal create mode 100644 graphics/pokemon/kingambit/overworld.png create mode 100644 graphics/pokemon/kingambit/overworld_normal.pal create mode 100644 graphics/pokemon/kingambit/overworld_shiny.pal create mode 100644 graphics/pokemon/klawf/overworld.png create mode 100644 graphics/pokemon/klawf/overworld_normal.pal create mode 100644 graphics/pokemon/klawf/overworld_shiny.pal create mode 100644 graphics/pokemon/koraidon/overworld.png create mode 100644 graphics/pokemon/koraidon/overworld_normal.pal create mode 100644 graphics/pokemon/koraidon/overworld_shiny.pal create mode 100644 graphics/pokemon/lechonk/overworld.png create mode 100644 graphics/pokemon/lechonk/overworld_normal.pal create mode 100644 graphics/pokemon/lechonk/overworld_shiny.pal create mode 100644 graphics/pokemon/lokix/overworld.png create mode 100644 graphics/pokemon/lokix/overworld_normal.pal create mode 100644 graphics/pokemon/lokix/overworld_shiny.pal create mode 100644 graphics/pokemon/mabosstiff/overworld.png create mode 100644 graphics/pokemon/mabosstiff/overworld_normal.pal create mode 100644 graphics/pokemon/mabosstiff/overworld_shiny.pal create mode 100644 graphics/pokemon/maschiff/overworld.png create mode 100644 graphics/pokemon/maschiff/overworld_normal.pal create mode 100644 graphics/pokemon/maschiff/overworld_shiny.pal create mode 100644 graphics/pokemon/maushold/four/overworld.png create mode 100644 graphics/pokemon/maushold/four/overworld_normal.pal create mode 100644 graphics/pokemon/maushold/four/overworld_shiny.pal create mode 100644 graphics/pokemon/maushold/overworld.png create mode 100644 graphics/pokemon/maushold/overworld_normal.pal create mode 100644 graphics/pokemon/maushold/overworld_shiny.pal create mode 100644 graphics/pokemon/meowscarada/overworld.png create mode 100644 graphics/pokemon/meowscarada/overworld_normal.pal create mode 100644 graphics/pokemon/meowscarada/overworld_shiny.pal create mode 100644 graphics/pokemon/miraidon/overworld.png create mode 100644 graphics/pokemon/miraidon/overworld_normal.pal create mode 100644 graphics/pokemon/miraidon/overworld_shiny.pal create mode 100644 graphics/pokemon/munkidori/overworld.png create mode 100644 graphics/pokemon/munkidori/overworld_normal.pal create mode 100644 graphics/pokemon/munkidori/overworld_shiny.pal create mode 100644 graphics/pokemon/nacli/overworld.png create mode 100644 graphics/pokemon/nacli/overworld_normal.pal create mode 100644 graphics/pokemon/nacli/overworld_shiny.pal create mode 100644 graphics/pokemon/naclstack/overworld.png create mode 100644 graphics/pokemon/naclstack/overworld_normal.pal create mode 100644 graphics/pokemon/naclstack/overworld_shiny.pal create mode 100644 graphics/pokemon/nymble/overworld.png create mode 100644 graphics/pokemon/nymble/overworld_normal.pal create mode 100644 graphics/pokemon/nymble/overworld_shiny.pal create mode 100644 graphics/pokemon/ogerpon/cornerstone/overworld.png create mode 100644 graphics/pokemon/ogerpon/cornerstone/overworld_normal.pal create mode 100644 graphics/pokemon/ogerpon/cornerstone/overworld_shiny.pal create mode 100644 graphics/pokemon/ogerpon/hearthflame/overworld.png create mode 100644 graphics/pokemon/ogerpon/hearthflame/overworld_normal.pal create mode 100644 graphics/pokemon/ogerpon/hearthflame/overworld_shiny.pal create mode 100644 graphics/pokemon/ogerpon/overworld.png create mode 100644 graphics/pokemon/ogerpon/overworld_normal.pal create mode 100644 graphics/pokemon/ogerpon/overworld_shiny.pal create mode 100644 graphics/pokemon/ogerpon/wellspring/overworld.png create mode 100644 graphics/pokemon/ogerpon/wellspring/overworld_normal.pal create mode 100644 graphics/pokemon/ogerpon/wellspring/overworld_shiny.pal create mode 100644 graphics/pokemon/oinkologne/female/overworld.png create mode 100644 graphics/pokemon/oinkologne/female/overworld_normal.pal create mode 100644 graphics/pokemon/oinkologne/female/overworld_shiny.pal create mode 100644 graphics/pokemon/oinkologne/overworld.png create mode 100644 graphics/pokemon/oinkologne/overworld_normal.pal create mode 100644 graphics/pokemon/oinkologne/overworld_shiny.pal create mode 100644 graphics/pokemon/okidogi/overworld.png create mode 100644 graphics/pokemon/okidogi/overworld_normal.pal create mode 100644 graphics/pokemon/okidogi/overworld_shiny.pal create mode 100644 graphics/pokemon/orthworm/overworld.png create mode 100644 graphics/pokemon/orthworm/overworld_normal.pal create mode 100644 graphics/pokemon/orthworm/overworld_shiny.pal create mode 100644 graphics/pokemon/palafin/hero/overworld.png create mode 100644 graphics/pokemon/palafin/hero/overworld_normal.pal create mode 100644 graphics/pokemon/palafin/hero/overworld_shiny.pal create mode 100644 graphics/pokemon/palafin/overworld.png create mode 100644 graphics/pokemon/palafin/overworld_normal.pal create mode 100644 graphics/pokemon/palafin/overworld_shiny.pal create mode 100644 graphics/pokemon/pawmi/overworld.png create mode 100644 graphics/pokemon/pawmi/overworld_normal.pal create mode 100644 graphics/pokemon/pawmi/overworld_shiny.pal create mode 100644 graphics/pokemon/pawmo/overworld.png create mode 100644 graphics/pokemon/pawmo/overworld_normal.pal create mode 100644 graphics/pokemon/pawmo/overworld_shiny.pal create mode 100644 graphics/pokemon/pawmot/overworld.png create mode 100644 graphics/pokemon/pawmot/overworld_normal.pal create mode 100644 graphics/pokemon/pawmot/overworld_shiny.pal create mode 100644 graphics/pokemon/pecharunt/overworld.png create mode 100644 graphics/pokemon/pecharunt/overworld_normal.pal create mode 100644 graphics/pokemon/pecharunt/overworld_shiny.pal create mode 100644 graphics/pokemon/poltchageist/overworld.png create mode 100644 graphics/pokemon/poltchageist/overworld_normal.pal create mode 100644 graphics/pokemon/poltchageist/overworld_shiny.pal create mode 100644 graphics/pokemon/quaquaval/overworld.png create mode 100644 graphics/pokemon/quaquaval/overworld_normal.pal create mode 100644 graphics/pokemon/quaquaval/overworld_shiny.pal create mode 100644 graphics/pokemon/quaxly/overworld.png create mode 100644 graphics/pokemon/quaxly/overworld_normal.pal create mode 100644 graphics/pokemon/quaxly/overworld_shiny.pal create mode 100644 graphics/pokemon/quaxwell/overworld.png create mode 100644 graphics/pokemon/quaxwell/overworld_normal.pal create mode 100644 graphics/pokemon/quaxwell/overworld_shiny.pal create mode 100644 graphics/pokemon/rabsca/overworld.png create mode 100644 graphics/pokemon/rabsca/overworld_normal.pal create mode 100644 graphics/pokemon/rabsca/overworld_shiny.pal create mode 100644 graphics/pokemon/raging_bolt/overworld.png create mode 100644 graphics/pokemon/raging_bolt/overworld_normal.pal create mode 100644 graphics/pokemon/raging_bolt/overworld_shiny.pal create mode 100644 graphics/pokemon/rellor/overworld.png create mode 100644 graphics/pokemon/rellor/overworld_normal.pal create mode 100644 graphics/pokemon/rellor/overworld_shiny.pal create mode 100644 graphics/pokemon/revavroom/overworld.png create mode 100644 graphics/pokemon/revavroom/overworld_normal.pal create mode 100644 graphics/pokemon/revavroom/overworld_shiny.pal create mode 100644 graphics/pokemon/roaring_moon/overworld.png create mode 100644 graphics/pokemon/roaring_moon/overworld_normal.pal create mode 100644 graphics/pokemon/roaring_moon/overworld_shiny.pal create mode 100644 graphics/pokemon/sandy_shocks/overworld.png create mode 100644 graphics/pokemon/sandy_shocks/overworld_normal.pal create mode 100644 graphics/pokemon/sandy_shocks/overworld_shiny.pal create mode 100644 graphics/pokemon/scovillain/overworld.png create mode 100644 graphics/pokemon/scovillain/overworld_normal.pal create mode 100644 graphics/pokemon/scovillain/overworld_shiny.pal create mode 100644 graphics/pokemon/scream_tail/overworld.png create mode 100644 graphics/pokemon/scream_tail/overworld_normal.pal create mode 100644 graphics/pokemon/scream_tail/overworld_shiny.pal create mode 100644 graphics/pokemon/shroodle/overworld.png create mode 100644 graphics/pokemon/shroodle/overworld_normal.pal create mode 100644 graphics/pokemon/shroodle/overworld_shiny.pal create mode 100644 graphics/pokemon/sinistcha/overworld.png create mode 100644 graphics/pokemon/sinistcha/overworld_normal.pal create mode 100644 graphics/pokemon/sinistcha/overworld_shiny.pal create mode 100644 graphics/pokemon/skeledirge/overworld.png create mode 100644 graphics/pokemon/skeledirge/overworld_normal.pal create mode 100644 graphics/pokemon/skeledirge/overworld_shiny.pal create mode 100644 graphics/pokemon/slither_wing/overworld.png create mode 100644 graphics/pokemon/slither_wing/overworld_normal.pal create mode 100644 graphics/pokemon/slither_wing/overworld_shiny.pal create mode 100644 graphics/pokemon/smoliv/overworld.png create mode 100644 graphics/pokemon/smoliv/overworld_normal.pal create mode 100644 graphics/pokemon/smoliv/overworld_shiny.pal create mode 100644 graphics/pokemon/spidops/overworld.png create mode 100644 graphics/pokemon/spidops/overworld_normal.pal create mode 100644 graphics/pokemon/spidops/overworld_shiny.pal create mode 100644 graphics/pokemon/sprigatito/overworld.png create mode 100644 graphics/pokemon/sprigatito/overworld_normal.pal create mode 100644 graphics/pokemon/sprigatito/overworld_shiny.pal create mode 100644 graphics/pokemon/squawkabilly/blue_plumage/overworld.png create mode 100644 graphics/pokemon/squawkabilly/blue_plumage/overworld_normal.pal create mode 100644 graphics/pokemon/squawkabilly/blue_plumage/overworld_shiny.pal create mode 100644 graphics/pokemon/squawkabilly/overworld.png create mode 100644 graphics/pokemon/squawkabilly/overworld_normal.pal create mode 100644 graphics/pokemon/squawkabilly/overworld_shiny.pal create mode 100644 graphics/pokemon/squawkabilly/white_plumage/overworld.png create mode 100644 graphics/pokemon/squawkabilly/white_plumage/overworld_normal.pal create mode 100644 graphics/pokemon/squawkabilly/white_plumage/overworld_shiny.pal create mode 100644 graphics/pokemon/squawkabilly/yellow_plumage/overworld.png create mode 100644 graphics/pokemon/squawkabilly/yellow_plumage/overworld_normal.pal create mode 100644 graphics/pokemon/squawkabilly/yellow_plumage/overworld_shiny.pal create mode 100644 graphics/pokemon/tadbulb/overworld.png create mode 100644 graphics/pokemon/tadbulb/overworld_normal.pal create mode 100644 graphics/pokemon/tadbulb/overworld_shiny.pal create mode 100644 graphics/pokemon/tandemaus/overworld.png create mode 100644 graphics/pokemon/tandemaus/overworld_normal.pal create mode 100644 graphics/pokemon/tandemaus/overworld_shiny.pal create mode 100644 graphics/pokemon/tarountula/overworld.png create mode 100644 graphics/pokemon/tarountula/overworld_normal.pal create mode 100644 graphics/pokemon/tarountula/overworld_shiny.pal create mode 100644 graphics/pokemon/tatsugiri/droopy/overworld.png create mode 100644 graphics/pokemon/tatsugiri/droopy/overworld_normal.pal create mode 100644 graphics/pokemon/tatsugiri/droopy/overworld_shiny.pal create mode 100644 graphics/pokemon/tatsugiri/overworld.png create mode 100644 graphics/pokemon/tatsugiri/overworld_normal.pal create mode 100644 graphics/pokemon/tatsugiri/overworld_shiny.pal create mode 100644 graphics/pokemon/tatsugiri/stretchy/overworld.png create mode 100644 graphics/pokemon/tatsugiri/stretchy/overworld_normal.pal create mode 100644 graphics/pokemon/tatsugiri/stretchy/overworld_shiny.pal create mode 100644 graphics/pokemon/tauros/paldean_aqua_breed/overworld.png create mode 100644 graphics/pokemon/tauros/paldean_aqua_breed/overworld_normal.pal create mode 100644 graphics/pokemon/tauros/paldean_aqua_breed/overworld_shiny.pal create mode 100644 graphics/pokemon/tauros/paldean_blaze_breed/overworld.png create mode 100644 graphics/pokemon/tauros/paldean_blaze_breed/overworld_normal.pal create mode 100644 graphics/pokemon/tauros/paldean_blaze_breed/overworld_shiny.pal create mode 100644 graphics/pokemon/tauros/paldean_combat_breed/overworld.png create mode 100644 graphics/pokemon/tauros/paldean_combat_breed/overworld_normal.pal create mode 100644 graphics/pokemon/tauros/paldean_combat_breed/overworld_shiny.pal create mode 100644 graphics/pokemon/terapagos/overworld.png create mode 100644 graphics/pokemon/terapagos/overworld_normal.pal create mode 100644 graphics/pokemon/terapagos/overworld_shiny.pal create mode 100644 graphics/pokemon/terapagos/terastal/overworld.png create mode 100644 graphics/pokemon/terapagos/terastal/overworld_normal.pal create mode 100644 graphics/pokemon/terapagos/terastal/overworld_shiny.pal create mode 100644 graphics/pokemon/ting_lu/overworld.png create mode 100644 graphics/pokemon/ting_lu/overworld_normal.pal create mode 100644 graphics/pokemon/ting_lu/overworld_shiny.pal create mode 100644 graphics/pokemon/tinkatink/overworld.png create mode 100644 graphics/pokemon/tinkatink/overworld_normal.pal create mode 100644 graphics/pokemon/tinkatink/overworld_shiny.pal create mode 100644 graphics/pokemon/tinkaton/overworld.png create mode 100644 graphics/pokemon/tinkaton/overworld_normal.pal create mode 100644 graphics/pokemon/tinkaton/overworld_shiny.pal create mode 100644 graphics/pokemon/tinkatuff/overworld.png create mode 100644 graphics/pokemon/tinkatuff/overworld_normal.pal create mode 100644 graphics/pokemon/tinkatuff/overworld_shiny.pal create mode 100644 graphics/pokemon/toedscool/overworld.png create mode 100644 graphics/pokemon/toedscool/overworld_normal.pal create mode 100644 graphics/pokemon/toedscool/overworld_shiny.pal create mode 100644 graphics/pokemon/toedscruel/overworld.png create mode 100644 graphics/pokemon/toedscruel/overworld_normal.pal create mode 100644 graphics/pokemon/toedscruel/overworld_shiny.pal create mode 100644 graphics/pokemon/ursaluna/bloodmoon/overworld_shiny.pal create mode 100644 graphics/pokemon/varoom/overworld.png create mode 100644 graphics/pokemon/varoom/overworld_normal.pal create mode 100644 graphics/pokemon/varoom/overworld_shiny.pal create mode 100644 graphics/pokemon/veluza/overworld.png create mode 100644 graphics/pokemon/veluza/overworld_normal.pal create mode 100644 graphics/pokemon/veluza/overworld_shiny.pal create mode 100644 graphics/pokemon/walking_wake/overworld.png create mode 100644 graphics/pokemon/walking_wake/overworld_normal.pal create mode 100644 graphics/pokemon/walking_wake/overworld_shiny.pal create mode 100644 graphics/pokemon/wattrel/overworld.png create mode 100644 graphics/pokemon/wattrel/overworld_normal.pal create mode 100644 graphics/pokemon/wattrel/overworld_shiny.pal create mode 100644 graphics/pokemon/wiglett/overworld.png create mode 100644 graphics/pokemon/wiglett/overworld_normal.pal create mode 100644 graphics/pokemon/wiglett/overworld_shiny.pal create mode 100644 graphics/pokemon/wo_chien/overworld.png create mode 100644 graphics/pokemon/wo_chien/overworld_normal.pal create mode 100644 graphics/pokemon/wo_chien/overworld_shiny.pal create mode 100644 graphics/pokemon/wugtrio/overworld.png create mode 100644 graphics/pokemon/wugtrio/overworld_normal.pal create mode 100644 graphics/pokemon/wugtrio/overworld_shiny.pal diff --git a/graphics/pokemon/annihilape/overworld.png b/graphics/pokemon/annihilape/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..22fad9680efdc7c6d9b8e6943ffecee0711dc00e GIT binary patch literal 1259 zcmVPx#Fi=cXMRUcZPEu<8{QUp`0K~`Gc6f%PrLi^zQo zFKa0xmkPI31%koV!m1njw?t`0=sCwn_UBB-FlwUS>sm^Pg~UA-VG{XjlGb7aUf*Q3 zO#(S5@h_c#(E?1;k7!}CPEj~bZ=W3tw6cH-gLdk*dM$^(nNY4W*L6q^HU?RL;>Z++ z7_3m52$NB%`lZXAfrv$u7RYNAlQcaIhjADoT~&Pshuf)XK;^y8qTfmrF9|@d9nZ>` zBHwdbU~6p_m<_lWGk&Bp)QM7_=7?{q8pBL^H--`#(Ya=nT8+vNWInh84W#GDWaHTm zIDE6VH3OF)ht3FfhR3UN(Mc7uwTpM0EWDS{q)*#CByi!?fCC98S>B5s$dBZS3yyil zDFYM)iIbtIgTBw3_c%nhIyx4aa$6w;N-H)*a5GV^uZ0U z`dFf~suH_+$W;pm^4Z#w-My+Cb}MY&TZ31rTDd%b}iR9#hH6?n@Q{YG3l?s>h z=bU?-+N0$e`m^9oi?Hf*UQEGt0q!`s@qiCFzZ#|1)It4#(*b2Pa+U1VT5p*kUbB<2ub@ywR_5^1$OQ!r{nbsRNug_sv>V}!5t@w z#6lYJWcQc{QP>t)&YJ@4IqCcQdI5X~Bk#&C@HW>9yyJ&Fnhhn%nw{;E< z@e}^~A%*Yv8-phhF89D4mjxWYzah}S?>B$I-{vMfC%oN-&l5u`trj})rOHFta#r|5 zB?jus8KhyuH_jW*(dZhb_|Yd0tdYla7;>HL_?t|J z?*m&-SK=XGg=p4z*kpaas7G`ugND<^CV>;h-8-5He;I|zP9I3o`X+YtT z%8z3MBqPbdFVguDV=NYYK5z|{B69-Fbv$6{-|*r2Kt z%x5x+g`W;%(XSaq)G-;xzxD4pCoq2P<;p~4b<;opFpoIp1ZXBAXXc^bU|J(goGi({ zdlzJX7RYqxFI=?8s}X9DC002ovPDHLkV1o54U;zLC literal 0 HcmV?d00001 diff --git a/graphics/pokemon/annihilape/overworld_normal.pal b/graphics/pokemon/annihilape/overworld_normal.pal new file mode 100644 index 0000000000..73d9ee2e4e --- /dev/null +++ b/graphics/pokemon/annihilape/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +78 82 106 +252 252 253 +0 0 0 +196 199 216 +118 120 134 +163 165 177 +52 55 73 +129 45 84 +255 144 196 +140 20 41 +196 85 137 +215 27 60 +113 113 118 +78 82 106 +27 33 45 diff --git a/graphics/pokemon/annihilape/overworld_shiny.pal b/graphics/pokemon/annihilape/overworld_shiny.pal new file mode 100644 index 0000000000..1458a2779c --- /dev/null +++ b/graphics/pokemon/annihilape/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +78 82 106 +238 235 242 +0 0 0 +170 175 201 +93 108 175 +131 145 176 +36 79 29 +129 45 84 +255 144 196 +140 20 41 +196 85 137 +215 27 60 +78 82 106 +49 74 117 +25 18 61 diff --git a/graphics/pokemon/arboliva/overworld.png b/graphics/pokemon/arboliva/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..80f5ca4352ec3394514831ac2b304b03a1d7e690 GIT binary patch literal 892 zcmV-?1B3jDP)Px#Fi=cXMRUcZ0001G$vQoPF(N)5zQV2j|MXK~PMP3IHxnMtgHc~4I*dF}sZTUh zEFu5^06Fj>qyPW{`bk7VR9J=Wn2B=hAPhw1*;oZvc!1+lc9N!`CoJf-QwT4u~WWu@=+k_%e2FJOzd<}9WeeLWvml&L}718AYFwW`W zbnf2fRA64_<}CRrr#aTn?r>>;Y2M+ZJkV+<_c$4hAL$bic3xV(EtN!7D$X@J6E^U+iHFN~nb(Ir}G>!}Un{btn z$pRDC0^iNo`jE$1I4ogFGw0(3F9tR}0O~O+l8TF4&||K$)P@$Ac^3F?elA332m)VV zid@-m6?z~HiK-I$~rvTDp;p;15 z{=BY1?SAgyJyGL6NEwV=8FHBdV#u!OD=i;|neElW zxu4)YQI!uW40>J|oZuiqa2zV1{-C-et|r-F%FhOsK%ris>fsv?N)-kOHm-|eV7jg- z9ZG|lYl9+Jeq|nOrov#svq7ye^xmX<_|6}Zs3m@$Cr1_kIwymP7Y1X%OMb%9PR=h3 zDt+e}wLksy?)f8`&kZw zRu38-&LOPx#Fi=cXMRUcZ0001$F)`#!O|?5aP)ttq^7QZThE7Ya9vw!#yt=`%V>B{yV{9h? z000000HA8JBLDydd`Uz>R9J=GnA?)$Dhx%Vq(y+>`Tx%yUARbsbh@kN-0`>k{&jc9-*R61J^BGBVTd=xO(4ACBMhfN z;Zq=P20Z`A`bA)(zi0rSaO7hipEw0F9|Fg`HDLL_GBDLbhEi%NbaV_}aO7hiUn;cZ zQhCtP&QBMS-$IRO;X);P+vT0dfRRTL*mB8j8Bhilj(p5xod!~+ziB|`R~;hvH7bP` zE)|!aAiwil3>bOj8$fBfu~EmMCOB|N(?Aj(u!c-0HSiiD19yy8Z!8dvo?xK!Jpd9+ z1JBaRa~kNx7_fXdkjAhE=!j!E#|@eK=uTtRqkg*69$*c;u5!JifpH9cUN?kLOVLyI z1--R~yk)@iXrN95VfQkel5#N66U+jsK~o(DW@wM_+$_{fK*ACUOe$~`U=}EF6QKe{ zAFuj)9vmoFgOS5BfRFOPWnk?0(}3Xz120IA`y*+SE_ox-p8Epm9@7hOs(^AlR><^t zL&O$)oC7$*acXF5fVI%}knlnG;B5laGBBPI%R>PeQ-WIGqpeeNh?{}HHv`fkcGcMFy@Qr2?|^Q|0#i;bF!`q)7(LSx!lG1}LXhGMpsCdhQHt{6h!D?LKyp z<)ntT25FI;a_hw;%`1R=$a3HsEd!EL>G32zt`iF*_m1UM1jNumoE2lh_qysg0gmfa zDgvtry!nUa6W6DhcNq~#xiOEx5BP0%(8wBEFN3EQ5cm?O?fK_|d>xl=`h649tLyv%m`GA=Qb4fx*LWMheA%4l!^!1J}lb0s2N!eY}H_JoG7I zUT470RdAzkwM<`YE$IKu@!|<>Y|1k6>v+vJ4Kd~b1;zAfN(b8ISb@{Kz^{uc7DB_f!D^JK~~uHJulsIk@OrL;)#<${@yO_ zksoBBk%MR;^R#jb3IFyY9H{UjlQ)S}#AJg7okXj@=9bG$Mf}5sk^X39lfME8Z=Cle`jl81M)~1{2Gg106_Yi%3$#DH`cJWM4EFIy zjB$hS@`X#@xB>wffg{6-HhgO!Z`?T81%g~*4CIZU9O#|=3*sku$Sq?~Ptj-dj2vf% zJA*^+`pph<#rmw#GsB%hm&q1iaX-LbuFU8-p6yq7xiaJa`QXpaSM+6N{;h#`co+C- o_$zjSpT?Uj5Wki30slwGUqz`!_o`5ztN;K207*qoM6N<$f)%V@jsO4v literal 0 HcmV?d00001 diff --git a/graphics/pokemon/archaludon/overworld_normal.pal b/graphics/pokemon/archaludon/overworld_normal.pal new file mode 100644 index 0000000000..ed77ca1798 --- /dev/null +++ b/graphics/pokemon/archaludon/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +149 49 49 +228 76 77 +181 59 59 +80 76 78 +243 242 244 +239 239 134 +78 75 174 +30 29 70 +189 188 186 +193 178 99 +52 50 114 +99 108 39 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/archaludon/overworld_shiny.pal b/graphics/pokemon/archaludon/overworld_shiny.pal new file mode 100644 index 0000000000..4983eea061 --- /dev/null +++ b/graphics/pokemon/archaludon/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +147 146 142 +222 219 225 +243 242 244 +43 51 60 +140 155 166 +255 193 125 +37 184 233 +26 99 136 +103 121 140 +255 153 40 +30 152 187 +104 54 0 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/arctibax/overworld.png b/graphics/pokemon/arctibax/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..f1f466e6afa2fcfca48154702982f3b1ea4ff7c1 GIT binary patch literal 647 zcmV;20(kw2P)Px#Fi=cXMRUcZK}A|-mE%i#ng9R*yzls1Z;INHBYmc(eWs@W(Mnu{h5y0}ws;+o zkdOcX0JGJ(*#H0n1xZ9fR9J=WmVs`AFbqUVY^P~y_y3c8&cPOAPDBUz(J*-yXon#uQmPX7@#Eb)UV!7E zfPlB|2I2<%dwr;2$a4-W4EX{XiW_jx5%DAuAYjA~6tJ2@JQZ{MUEY!|)f7s-?Bo0; zuLrf{lP_2`RUMzw+(JwDO1(&ecW7{n@w+WZO&CLs!tV4ky_s5%Lc+Edg=Er zZWhln&5=r z*FWGUFzFQ)0J&PjI;fjO@_7^SR><=j#AL?|Sv=x)#!X;!4`6O`lGfG~KI`xB&MfA; z-QxNQ931e;49@lkp977<0@WZ}qo=Px#Fi=cXMRUcZd@3pAA`<9REbrtn=8U-Aw+8?K05mf)UshAyw+9;`BE1|B=;-+G z#uf|bdqyATfL)CvKDpcN<~uWdm^<%b&~YDd)Cb{V)H3-nUuo05 z$MMv;dG@Ud4)OavT;-dQ9;!@$R7St9!6BFDmd^vX3(Ir!YnZ@?$ChhJpiWnmeOIrfOWsQi3|Q;v-U8|e?Y zOt7q@Az;L{!?j5-aOwshbD1D60R~~Q+kD8OuT&|V=d@_>1#NDYc*se%NQ^T+81m;? z?!wm!p~NRSI(%N1M~sPL#SU?7t@wy}Jfi%0p2wmup68R4=kZ8H$ye+M#{!4v>n$aY z@7FU_i#+6IiSjW0H(V`XR``azGfm>*`&vz-Cr6LUKQQrvn^uvXBE{7?(j1i!dw-Rld?foG2o8v=8Jg^Q_u z(uxXW?(ZTS396`oMSwg@U`bH92(2nea@XVleZdk~5-dE}2T4xTTAVS)1ehYRj?k!J z$T+bW@4_UKth1*jP!lX1`BO4PB$Co_CxJG`{L(l9OB|BasIDNMCgsvhm4f7$a~W)b zCBd9JvojKKviRKAuNeTFSJC9KKc-2Vl(WFSuO_G*W=uN;DPQm;bLEvlO>pIMF|0Fi zj_^>HZ5?r|)sXy;SIRImyvhYe^PH^MKw*t|R!nt+^ERfBA ztjGZ-7HDt$7!wqMD_~4*4k`A97VPh&>`zA*T!T_AP-W;)&^YtxpZI4pJo1*zg!or zwb>HDU8b`|ru>@jysSUXQGC~Y5z8?}WwUlCu$H%Q`eya_{d4g<|N9iwo?R#Ct{IP)Px#Fi=cXMRUcZ9V9GOxt&8>Tsd=Eqv7XnjHUnp0QbfKerzQ?I5}k$AY~LF`8heD zxX9?}_zCKMJOBU#^+`lQR9J=WnC*7kAPj~h5K)5D?f&m}`oLIVFvAfCo8bO-pvfX@p9m%8%N z+`&|r>^>hUl^Q|pAXoZfG%;VmG-UA;WQLGGJsvOvqm!==BB)Cy*0> zh0bKe6(&DE(rst z^aBv3+Aa)S=->cHO|sArKqbuFv>)kZh0FJdaG^u~z(76+xD00|%st;qH^BXx8JOtX zwi$n^@sR^)^b9E)jXq3>yuWO!vV^TE%R09=;ncrftTs7 z4ye+(DNy)}!IL`%*eok0!_Wd2gHC6N?EnDC8PotPnxrg04n63Q+~_={Spvz@cGo(k zYTHF%REJJ?1}G*X?(IFp8CpO!2u{yL$#*IgK6M#oJWp43kPk9`*EyEDw-e$O;4H!3 zfS~2#Rv@XvI5fb+IWajapAd3BJ)ju`r*jWdGmRW@j%^D1jmR3H21tVX10COEvl{1q zmo?2zjUoLIhrB3~zOw^pGORu6qe#21S)ne0Qsf60}2Qi2IQ;iT^-2WpgUX^#LypkF*sE%_X!50pMQMOK;fqfCBCM2|(M=4m+rUgC?e;^ZT6c2%`fZ z$;3&{Wg literal 0 HcmV?d00001 diff --git a/graphics/pokemon/baxcalibur/overworld_normal.pal b/graphics/pokemon/baxcalibur/overworld_normal.pal new file mode 100644 index 0000000000..c031cec49d --- /dev/null +++ b/graphics/pokemon/baxcalibur/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +29 36 44 +85 185 157 +67 91 92 +57 115 90 +163 225 231 +110 140 166 +0 0 0 +247 198 0 +126 108 37 +60 56 57 +101 20 32 +101 20 32 +249 57 57 +160 184 200 +232 232 248 diff --git a/graphics/pokemon/baxcalibur/overworld_shiny.pal b/graphics/pokemon/baxcalibur/overworld_shiny.pal new file mode 100644 index 0000000000..fc9345f2a6 --- /dev/null +++ b/graphics/pokemon/baxcalibur/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +12 17 16 +187 230 226 +64 109 121 +46 95 110 +100 192 198 +87 128 130 +0 0 0 +247 198 0 +126 108 37 +46 48 48 +200 28 139 +231 82 179 +231 82 179 +152 183 185 +232 232 248 diff --git a/graphics/pokemon/bellibolt/overworld.png b/graphics/pokemon/bellibolt/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..eeae01c0505200f49a98865cc6d95b72cd2f824b GIT binary patch literal 551 zcmV+?0@(eDP)Px#Fi=cXMRUcZ22?O3b0002; zCN{PV``lu}5IKR~t{qhFS+H_18ETyUFa|0e8-@zEp8b%1WGD(~{P2tNh&5gZj9j{X zfIhc@*Od`3kPJ1>2aM}lSIGqi_#Mxp)o_G6SBvxGHeXVyh3h#1gac?i8>(73)XU_bD|F6cZ0Pvq zHYdSis$k9lSFH0)cgz$-EVL{M0vgZzbnBG!ZN4Pr;hMZh5L7rD(jn1fDe3Ar!r9QF zll@fAh7_8v?5A_cTd5N+TbAya#_MEYZy+C_%Sn(6Lx$!7`us2~4Zi`t8@BvZPT!fW zeL)5|cc@<(x+^kI2X8faOt`)O_y<}7$o pn{j9Fz_M5O*AuFn$C`Xjz5vjmB=6D?mI43(002ovPDHLkV1h>#0ImQ4 literal 0 HcmV?d00001 diff --git a/graphics/pokemon/bellibolt/overworld_normal.pal b/graphics/pokemon/bellibolt/overworld_normal.pal new file mode 100644 index 0000000000..a7125b80db --- /dev/null +++ b/graphics/pokemon/bellibolt/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +6 84 64 +150 150 192 +164 110 65 +228 167 83 +242 229 85 +232 232 248 +176 176 208 +27 171 141 +0 0 0 +242 229 85 +33 115 101 +91 83 77 +128 119 106 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/bellibolt/overworld_shiny.pal b/graphics/pokemon/bellibolt/overworld_shiny.pal new file mode 100644 index 0000000000..97f5f3c3cd --- /dev/null +++ b/graphics/pokemon/bellibolt/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +105 91 35 +150 150 192 +171 75 73 +255 127 109 +242 229 85 +232 232 248 +176 176 208 +251 253 78 +0 0 0 +255 127 109 +170 155 51 +91 83 77 +128 119 106 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/bombirdier/overworld.png b/graphics/pokemon/bombirdier/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..ca655b7a9565cce2509da6d29ca39d4468df07a4 GIT binary patch literal 1213 zcmV;u1Va0XP)Px#Fi=cXMRUcZ4-XGTJV8($C1zV-@8jXQs;`rMg?oZ~|NH;O#>`DhOHdspnLbJA z==kPLVkR z55YQoJPc13BfXwfrcgPE@jij~7I8j?IEmE<5CG>m__GSYC*~k%0$IN?!xT|6c!zKc z;Jg6b60m~+PzvzSLPrTYfztv+kA8mxaPM&dc+T)c09^q${pMZ**9mmf0$^E0ifX|e zi5fgUX3z!C?Yc$Av0#=Vl zS%hIUkmxsxKnXOG?aD9fN&TufdT zzyQG67XV{B03{F$5QB<9;>nl8(Rl}OY7JK@MW8N#tqG!y@=Lax(+Wi>IY_F<ezC*fz7+_k98 zw-by4)9ZYT;-ewAZuC!re*=(+0`5Q ze#xlTxqEy9P;qy2aY{OXUZ9r6&uhyG%aJZC&;%+4@}>a$d<_Ah+3)>k5v6~8JusHw z5IB*A`qW-@W1B$q3kNlUN!KF?m{`9!J0I+&AZ@mqm7dX|mTa0(8JAfu|LQqne z%6roDk11YQV}#(&|ONjE?D)8!l|U6((%XYT`P{*v(Y_z?J@J$~u< bSG0ctZ}}>4c7U$l00000NkvXXu0mjf@1-NK literal 0 HcmV?d00001 diff --git a/graphics/pokemon/bombirdier/overworld_normal.pal b/graphics/pokemon/bombirdier/overworld_normal.pal new file mode 100644 index 0000000000..fa558344ee --- /dev/null +++ b/graphics/pokemon/bombirdier/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +15 15 15 +69 60 65 +80 29 37 +102 91 96 +239 227 225 +185 170 175 +147 125 133 +123 130 123 +255 251 255 +198 198 204 +77 74 75 +80 29 37 +153 62 73 +232 232 248 +230 76 98 diff --git a/graphics/pokemon/bombirdier/overworld_shiny.pal b/graphics/pokemon/bombirdier/overworld_shiny.pal new file mode 100644 index 0000000000..d20304edc0 --- /dev/null +++ b/graphics/pokemon/bombirdier/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +15 15 15 +74 57 66 +52 41 48 +102 91 96 +239 227 225 +185 170 175 +147 125 133 +123 130 123 +255 251 255 +198 198 204 +160 74 85 +84 81 81 +136 134 133 +232 232 248 +171 167 168 diff --git a/graphics/pokemon/brambleghast/overworld.png b/graphics/pokemon/brambleghast/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..652f7523f4a2b311b88b92987427e1b5d10179a4 GIT binary patch literal 812 zcmV+{1JnG8P)Px#Fi=cXMRUcZTTfetY=*#}x&QzGLMtH4vTK}uRc9GKc`&JVS6V5K22ze? zu5IWvgxhYr?Y7%)yY03=V{tKl!h7%+{PPf4jwy!Zn z+C)Q&mpFo>J5Palq0Q#!++AjY!!~@E^N96C!ij|vTt>deDG{#6$OEG~c&BSTWavwC zhtno}mqXu(qrt-dM`>KU{DLR4$sZIeUE?7a+aL)9O4@|)a}!7<6rnhj?i&!qkrwsYJl-xH&Q=n(=%}y@)YT3>z7ohM34|lgXbH5v zO>NOgE7dR9OD{6#) zb5h?f@v2Z}E*_pQaQ3w^^sWfwPsR|(}USdnjYBa`D|pR9G+n;RRGj{_O^gzp@8-Zx`k z)`O0{$`G?qKlm@LB;LtvR2y6jmTib8~emHm=+~6Hr;iOTdBy z5!@+f8TKDicqFE^N4D_bn&r*y6O#E>+3vi-)$^9`c=y2;;io4G&KqsGWckcTYyN|k zfB*Bc%_;Jllf-hUJcuVpFXEf|C0@Ozdj~EYc+|3AJ%PPLDC~RXQArEwmty%$CFxQT zdp>j;7d+yb6SJ<1Gv24Znem});0_U=9s literal 0 HcmV?d00001 diff --git a/graphics/pokemon/bramblin/overworld_normal.pal b/graphics/pokemon/bramblin/overworld_normal.pal new file mode 100644 index 0000000000..7e830e339e --- /dev/null +++ b/graphics/pokemon/bramblin/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +97 68 39 +204 164 102 +176 140 85 +21 21 21 +210 117 83 +191 89 60 +126 58 39 +75 58 52 +107 83 75 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/bramblin/overworld_shiny.pal b/graphics/pokemon/bramblin/overworld_shiny.pal new file mode 100644 index 0000000000..c37c547ffb --- /dev/null +++ b/graphics/pokemon/bramblin/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +121 118 77 +214 209 157 +159 155 104 +21 21 21 +210 117 83 +191 89 60 +126 58 39 +87 96 60 +113 125 76 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/brute_bonnet/overworld.png b/graphics/pokemon/brute_bonnet/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..14fe5e2f3c35162837d7bbe728f07b41329e95a0 GIT binary patch literal 971 zcmV;+12p`JP)Px#Fi=cXMRUcZ0001MMn2l%&|YF!gefZHKSsXAxUw-fUxsIb)PURBasRB%vN1Q_ zi=>E^eW0pyh5!HqNl8ROR9J=WSc{J1APkI68xq=x|Nq+?+mHZxkZpC+Nw-$DY8X78 zF+{K(hTr&&-}rBW2GYQnzg5BbKTf|ENDpFmj+vgH)#&jPfgT0UJzN{S6o{%G!H5a* z$tr+0@jnidiN=vrjN_5YYl9tusOg<%gB>xQm^|$;28CDnrOs{+jU>D#9|p#jqhqim zkRJZw9Az9_&uQo2s>8sh(G+SK-^_vFr#i5Zho*zq273arI)EQ!xYm+Yy4_&{ozj{C z@StGHKLLNLGS!KPn!jhTBT#pjQnWXrVjXU?a7TK>MljzG#gW5Z>nQh3?ng0v`A^G{V&{5^wR zfin~Df_T2)VcvLiouBY`40Z{^j2YDwJk4{s+u?8dd-+|0Fk^;H$pH{Ug@Nl1clm|B z<)1^io8J`}g3WlnAdg=!L&NP3t^8Vo5BO*Eu!RoYHMj|+*ZYk>t-zo$hm0#2?sq8j zmjd_vVJ<#3f5+e|aDhH3Ty_Fetaw|X+u==Lsj%g5}spO`rz8MiFQQfoux(421*A@38sX;j6=R znUY;%2GH!{ASSOnP$vm)`8v2W5V?@wT>059i$wmw0~#cqF033&=&vz literal 0 HcmV?d00001 diff --git a/graphics/pokemon/brute_bonnet/overworld_normal.pal b/graphics/pokemon/brute_bonnet/overworld_normal.pal new file mode 100644 index 0000000000..64d07618a9 --- /dev/null +++ b/graphics/pokemon/brute_bonnet/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +107 70 62 +218 225 208 +94 98 87 +132 41 42 +227 63 70 +190 197 184 +178 49 55 +95 134 103 +130 212 128 +219 217 113 +255 172 205 +178 49 55 +222 139 164 +136 149 125 diff --git a/graphics/pokemon/brute_bonnet/overworld_shiny.pal b/graphics/pokemon/brute_bonnet/overworld_shiny.pal new file mode 100644 index 0000000000..1e229eb10b --- /dev/null +++ b/graphics/pokemon/brute_bonnet/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +64 60 56 +208 200 168 +136 112 88 +56 48 104 +112 80 216 +160 152 120 +80 64 160 +95 134 103 +130 212 128 +219 217 113 +216 80 136 +178 49 55 +178 49 55 +136 149 125 diff --git a/graphics/pokemon/capsakid/overworld.png b/graphics/pokemon/capsakid/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..9cf563f6a096149c2fb977cad25a10f7f86049b3 GIT binary patch literal 519 zcmV+i0{H!jP)Px#Fi=cXMRUcZBuFR^4-fGB;{X5vrnHuEgIrCKPkFg}K6O7XFfad+6+fC^FK9df z000000B1$fkpKVzg-Jv~R9J=Wmg|bdAPh#mM5CSh{;#`<4$HzeiL1~h z&Sohk0Ph7ugNK-7Op)%AfW`L~z(Jpp=}FG69_j5-cMm_sOB~{;kAk1Yxe4Hl=P5Oq;G9(sgG>KnCZ{j88z2JQ()Zd7 zhYik--nU!(lF&G`MwG55Ji`xjYC-(IH#kkOc~G{%XSo}^DFt-y=q>3HtAt&p9Z2s{ znQ!(V#{`rH2B!gP)#?*91h@LnR51E$aH7d>|Bm$*6GQy3d;wiv6{+6;8>9dL002ov JPDHLkV1mRP<%9qL literal 0 HcmV?d00001 diff --git a/graphics/pokemon/capsakid/overworld_normal.pal b/graphics/pokemon/capsakid/overworld_normal.pal new file mode 100644 index 0000000000..90f5ea334d --- /dev/null +++ b/graphics/pokemon/capsakid/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +36 72 40 +15 15 15 +240 251 227 +0 0 0 +166 180 150 +113 131 92 +77 145 79 +121 185 123 +62 117 63 +46 48 47 +255 145 21 +63 154 95 +47 104 60 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/capsakid/overworld_shiny.pal b/graphics/pokemon/capsakid/overworld_shiny.pal new file mode 100644 index 0000000000..aeaff8b7ff --- /dev/null +++ b/graphics/pokemon/capsakid/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +49 58 89 +15 15 15 +240 251 227 +0 0 0 +166 180 150 +113 131 92 +166 152 70 +236 240 79 +85 71 21 +46 48 47 +255 145 21 +99 161 158 +73 107 134 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/ceruledge/overworld.png b/graphics/pokemon/ceruledge/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..831b380fcc7d3695c1e1ca4e37890b3603122d4b GIT binary patch literal 919 zcmV;I18Dq-P)Px#Fi=cXMRUcZ6FYH|t=h4~nU4P3L*n zD`SMyVffFkl+r)tS54A5HnpGTmrYW~|I_@c32K{K;!pF-CW$)Q5A&-giHN3#xXaTu z{yj@`P=hC8W}?AV4-E4u zg}BF=#n)#Fc1WMA%=0YD^(p!s#svF!xw+qT;@~~i<+q#8c4>W$yWBQs^5?X=$X#B{ z^)?0dbvOdf2cSGAp)uy?_o!zHAo~zQK`iv3PK= z%iA1}H{$^nUDSTrpJ#cR^5eo1pX9c~k#7~rEJxVqc)nOx%ZG%k*q^7l>XuLSG`D~v z>zbJ}9pNi{9O;e%vB2w{#_{0a=lXM<=bmsyyj(GVjWgXBMnGQfRJ%uA{uJ;Hj(~8E z^L05!;2C4DF>vVdpM3A}%odP1cvbf}e7#Ljkk2aExN2RGY$?oFDsW!a`%NYr5}oA0 zO&xH&C&V1=ycPxAINperE#ms*4JOt*uj;pmaA_R&e3IZC=WjXdP|^tK+}|dLhqUN% zRA}mrSM|>>t^9Mi0jpqj_o`j_(i=JKuU%hU+HX@ z*9%AjONdEqo`XyBfDb;%VUnx*l7AMI9)F#*28H}osi3qbEPyEa1Ur{BdB6uB_N@#j zP3#I4Eqgf9KR8n*SK(jn*Iy?tD$#Z z(_8+<6L8cg%Pe9K@p7nu7hga7vSlR>`x!jn;9Zt&*rxbxa7MqAZB~PY`d2*auju!K{s6%DEORY?PRjrQ002ovPDHLkV1i$s!`%P? literal 0 HcmV?d00001 diff --git a/graphics/pokemon/ceruledge/overworld_normal.pal b/graphics/pokemon/ceruledge/overworld_normal.pal new file mode 100644 index 0000000000..afec9a2dd4 --- /dev/null +++ b/graphics/pokemon/ceruledge/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +19 59 113 +146 173 218 +177 196 229 +100 137 198 +0 0 0 +104 111 176 +37 37 75 +14 23 39 +81 73 133 +177 119 176 +27 33 34 +177 196 229 +232 232 248 +52 51 50 +0 0 0 diff --git a/graphics/pokemon/ceruledge/overworld_shiny.pal b/graphics/pokemon/ceruledge/overworld_shiny.pal new file mode 100644 index 0000000000..86d05c4e5b --- /dev/null +++ b/graphics/pokemon/ceruledge/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +19 59 113 +146 173 218 +177 196 229 +100 137 198 +0 0 0 +104 111 176 +37 37 75 +14 23 39 +81 73 133 +177 119 176 +27 33 34 +239 228 48 +232 232 248 +52 51 50 +0 0 0 diff --git a/graphics/pokemon/cetitan/overworld.png b/graphics/pokemon/cetitan/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..c2b72bdc4c03f333eced7d74f648796f03cca9c5 GIT binary patch literal 969 zcmV;)12+7LP)Px#Fi=cXMRUcZ5D*ah`uf<{)2MTg-=Mny004`Njl0CeU|(KfUtWugjX*#^*Voqo z0000005^TzbN~PYM@d9MR9J=WnCY6GAPj~NM8hK9|Lr!3hfRWXrtLFrpUIE2_#%8+ zK=AeYwr~5k|HX_k-Sl6Gp81)V^!UR7$h@S3dL;Cdz{>#RlA_>Ho9wG@K z^GOKN`(W9EpE&T$ulzhJeB?-hC4Imipc3R2C+M9Bq;J)MCmvZI!%28nTm)LmFg2kZ zYgMx30GB?lGx#8nKH?ja#Ig4kzXqV>UMVJ#nt(@6y+R&>@G!OO|>j6S+28cr$ zKJbOW#Isl7JeP|HR3Y0zwXx?`y~2@m6y3IEo^XrJG@;*Hji9s`dC^}5LebX4Q!EaSyf|0|IuYnbfv?xV`vN^Y1tm)4!QB;V zoIlf+M+?!jRrKcx4KK9md+x3nYDagfI&Qfw)W6lbp2ZUi14 z8ZHmjwgHO1a^O*l{Kl2d2uJ05qUf77N&-%>tjU3z9Bha|($%?77ee8$05=J8R4GSJ zG|CusHFHp>`PB)&rn`QW6Oo273w|H@#-l@X9ork424?wIqjIBb#A6cuWsB8W=%;R2 rzE@hlmRZaAu+Wd#>c!Wec`^0_134*;W=O1100000NkvXXu0mjfv!=iB literal 0 HcmV?d00001 diff --git a/graphics/pokemon/cetitan/overworld_normal.pal b/graphics/pokemon/cetitan/overworld_normal.pal new file mode 100644 index 0000000000..7d95a89e39 --- /dev/null +++ b/graphics/pokemon/cetitan/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +16 16 16 +250 250 250 +216 215 211 +168 115 143 +223 160 187 +0 0 0 +139 139 141 +187 196 196 +96 95 94 +96 95 94 +139 139 141 +64 64 64 +215 215 215 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/cetitan/overworld_shiny.pal b/graphics/pokemon/cetitan/overworld_shiny.pal new file mode 100644 index 0000000000..36b65af2b3 --- /dev/null +++ b/graphics/pokemon/cetitan/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +16 16 16 +81 81 98 +62 62 74 +234 73 55 +249 141 115 +0 0 0 +43 43 51 +170 170 170 +43 43 51 +139 139 141 +216 215 211 +23 23 28 +250 250 250 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/cetoddle/overworld.png b/graphics/pokemon/cetoddle/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..7f00f80008f5ce9f80d9f2929b44e570cde75fc5 GIT binary patch literal 566 zcmeAS@N?(olHy`uVBq!ia0vp^2Y^_CgBeH`yR~lzQjEnx?oJHr&dIz4ats1|LR^cF zF6r*>y>b0AP~g|EU-uX6UQyf+WB|EX!DdChS3q;Nc)B=-M6|x0e!J+f0*}jXjyeDT zKh9!($D+LESl%r0GOOhBKGtr5={2>wa8Mg_;LZI154X3neE;j(xBAbv30p!1JFZ;s zj#*c<>d{WWo!hh~O*q(|ukgTCvNa~|`LnYd@(mxoY1kL!SMo}#qeAn9$f*eu{98zPj>yIhvEjYMV%IC3Fr^OU6ZNYuARR<3A%cm^k@Zqig@Tl5OFL}$a4LtnPv5&iA z{i0Who?>5H77={?vomu~dhLN-o_RILYnwBeCAe#zmohMKH&x8IEpz`DpF`=M{DsGs zZ}YgU@^9vDzS3DQ{O-(V+qs2PYKN)%dFi#=eb1Ud+Wpaf2j79i$8Iykobx}|zpK1B z>0qYC$2<1?(OFfYS2VXU*PeQRZ1b)~AKuKHw3~5TZP8WLS@(|oQ<$edC%C%0fY)B~ n!25MC8xNKr-~V{|5%;gWzq5E))>$M!0!6H+tDnm{r-UW|MAi3M literal 0 HcmV?d00001 diff --git a/graphics/pokemon/cetoddle/overworld_normal.pal b/graphics/pokemon/cetoddle/overworld_normal.pal new file mode 100644 index 0000000000..01c44975a9 --- /dev/null +++ b/graphics/pokemon/cetoddle/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +139 139 141 +216 215 211 +0 0 0 +250 250 250 +223 160 187 +168 115 143 +250 250 250 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/cetoddle/overworld_shiny.pal b/graphics/pokemon/cetoddle/overworld_shiny.pal new file mode 100644 index 0000000000..f9d80543eb --- /dev/null +++ b/graphics/pokemon/cetoddle/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +53 53 60 +132 141 147 +0 0 0 +183 188 191 +234 73 55 +192 53 37 +250 250 250 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/charcadet/overworld.png b/graphics/pokemon/charcadet/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..11b455ae58611c88ac975c72417df42b15e69ca4 GIT binary patch literal 717 zcmV;;0y6!HP)Px#Fi=cXMRUcZsTvMP3k5BF>*!M~+*Y>aA`$=q0ERa=Cn_qlN=si>Q|5>ZsTvOG z==kI!5`GA{2LJ#9OG!jQR9J=Wm%(y_FbqVI2o?g<{{P>08|aMC2{5s&Dakhs-k-SaF?aDzM_uWq6hd7p|}5TIj3zW0hN>BIUBo z3wyWX3eFT({ISZ+4dh&;Ei)-!#Z}>uGRYG-#>LF& zy9HPHqb*c$vuN;T$@;YB>$=9IG(P8(A;Sb0Ji;SEw_8%>icif}cVDd~3sl?;O|F_c zEV!-Pwwb_WqQBrn-@fl_rm*735A=y*!WC|a-I`gm^JAjok)XE6Xi17n4t=r5H8nta z2;2oZ&I(lU$u^P5u#0SGb1FWW_HjyeO$<;DeGz>_eKUWQhd_@x@kk65Tze0Nc%Ccd z+#Hb)M}M7f^NL4>?HCz8?6k%uhrrPy!~o$C=*Qt^JvBgiO!@lu7~fw>3vfO%jLRym z0ON=Zd8xjNhrk{-t)~VGuAvVK^F6@0MP!G))BxvW3Mv$jtK7PcziS){ArM!kevRWp zZzIE&ee6r#413hl%K|udan9k+@SQ-CuW@&*fWuzhukz?{VLWz0#;3Thx>_o*;y7Tn z^`@2zc<|&P4nB5h!Xy6RsR4W_P-3EgY{8VHH<2RTcFz^We;@pO6BfLRKMY7q;e82y zSyX|=Ou<Px#Fi=cXMRUcZpdb(c008tfFY{hF@TXOI7Y+RNn;bwPY!e1sm|BClgxBcT=;-+I z`0+?|N2nWF^Z)3OPcLxf{R$kaGz+l+4`#cEZjqA9}}uLe9yjob3RH`UsF_&SE^< z_iOYoJR=K--gB5JM*wyvKqI))i4Q=wr;ujVXS<5Igy@sgaV);K-f_U+D>FAqbAVdNjNstvo zrMC{7k9siMb>vDfrI1#jsFjFtUF$`voCJVPRBCeB_*y@!7_7uZo2B5fdv&T|6>A?tKOR<^YL-+bIG+woP ztuk8i>j>UDib?w%OR@{!fQYarOefvqmnrc2=>z}=tbLpR$?LkH`|XTCHQ=W%=b5$; zrj+;(%N#LUTs32y^zQ<0CWjgOxX1ihz*k;tqXzuc`=>2_JUR07(L1Y*^djdVRH1GJ z{Qv}!`RXvJ`slRCj0|#*Z>aCbxQj!(2G}289ENWM|MQ*hH|#G2OBNnWvK4Ot0000< KMNUMnLSTZLqifLs literal 0 HcmV?d00001 diff --git a/graphics/pokemon/chi_yu/overworld_normal.pal b/graphics/pokemon/chi_yu/overworld_normal.pal new file mode 100644 index 0000000000..6f4491d0c6 --- /dev/null +++ b/graphics/pokemon/chi_yu/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +160 32 16 +0 0 0 +244 52 47 +243 94 56 +240 167 85 +121 23 13 +252 245 155 +28 64 33 +108 19 6 +91 152 90 +131 184 132 +215 232 215 +232 232 248 +241 248 241 +72 116 71 diff --git a/graphics/pokemon/chi_yu/overworld_shiny.pal b/graphics/pokemon/chi_yu/overworld_shiny.pal new file mode 100644 index 0000000000..659d3fd812 --- /dev/null +++ b/graphics/pokemon/chi_yu/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +69 67 68 +0 0 0 +94 94 94 +0 192 249 +119 236 233 +48 46 47 +186 254 253 +28 64 33 +27 24 26 +91 152 90 +131 184 132 +215 232 215 +232 232 248 +241 248 241 +72 116 71 diff --git a/graphics/pokemon/chien_pao/overworld.png b/graphics/pokemon/chien_pao/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..4cead4f9bc82fb8fe7ac9fa9b751d9750962008f GIT binary patch literal 1074 zcmV-21kL-2P)Px#Fi=cXMRUcZP)<(zpOy{g%LqY(=;^r;br{dfFQ-dLxVSh_?=m({AidXOb^$9 zv4{kVNRPjYe`0|j-=&Caz!Cz-fE76exeBx6vsmr~_y)$% zzWe;{@DD6xC(2-G!NOh{QrK44VvOHa#XD6)qB$Doz|a=XLr z1`?9?2j~7~pm+*b1sO|%6oNR=|G$6}d0~4G*QLyrd4;}`+ZT08x%GIVfC=UtVJ9Bv_g z8yw-fkCZ-7PP#fc)y{O;Ze3a+boQMwNk}(|M6dM6gF{w{azz`?O@Nm+w_va;?u6RDi zh@-@3$hpK01F;V6HTeY$eVimUHSmn^5y9N4fgz4T4YLj|9Xa=s2m(=uXo!*J6r%iV zo^y;~n6{lRCf*48_`#9ZB*L<&;j)BF8@a;^Ll8{R&=5QbG&r_;07-@LVyHy7yIJ~ae)zn=5vCt&@Q;2hIkW4bupJBWv`D9 z@Zu?ON1}SWK3DjH^UTLdsm@DuhqrEG*op49bANEU#gq0I-K~>@SNMW2^P|jq(Hx6) z?$s+ED{B4xQisUg`Gw2#YnFZyk8u@%7?^i@3IMNo3%^!^N=uh$x8)Y!VbSBOfG{sA zZ<#~x5y(5<6=(#d%kYHD1vd{P12?y_oCMSeMA=~Jgg^| z^t%vFb4h?kz^e$@XB1_~6P@tmgQ#8RA|TH5vY6hGdj#^1cLnPGNuS)i{H>4b^E_Q< zsa!i6>%h$`!CgSXIUFeW6i^POwV+cv9^CMrKsBJ1s3*YwwwKR!v?k`tik1H^z;Hdc zeXf|E%YY^;8L^Nv7$uf|rV`u2s>F5qDU(;+4bn%Vg}%yo0>>`^BmI}G1_Tjkj4 s&Qu=t^mnsQ>8bs5W=7xhcIPx#Fi=cXMRUcZ>Wd5N%1HkJ5cTie_f;_f005#rF+vv;xU{C;RYH7sV`C&8DJUsQ zNlGawDcn>UyZ`_KP)S5VR9J=WmW@usFbss7Cbjd^wD146oKwcO)=6O1Ku9$OO?(&U z>^PKRxZ;W{uDIfgdl>Vl{A~KcjAK*sW_~vPU`1j7jGtX@A#e^7tBT&wZ@A{K$&uAg zlG~ceDqFmnpG`m5(M*$Qgin(h?XU8)>5BsMWxjqW8Q#gubU%LYmv=Z6)AI(?KEr#t zot_OIm$$h{a56Zh^2llZGPgIfY1HK{zGN zQ;eoWjP!F(6db-7VYKBv4u3I33JAgn#bJ-1D*&xQf1)^q;^$lp1`e(SK4=AWIB|?) zi5OXHag&pSxtL0eHHSSe1``e`IuTOR3g~cRz8Pe_fELHurj$Z(G9x^GhtKoQASanK z*rUW+0UZv59OsDOS^+Iisf_0~<>S%efzv*TCr$x{QbjgBqg!3G3 zE#5iY^L+sxcZ?I7oDzoh=&;Ahmj=&e#Pt(= zw_TH?#KQzr5yfr76#HctR459sl_v|OI*%Dw zUu5ydS>x-%R18vOcl>(e%*(3U8_Gegt5@IjpGm5MHKRI@z()GN5(0!ns2HG}7pj@R z*Fd;IIoCu;lGnA7q9s_Hdq3Gw8`v@bJzcK_eZhZ=4;P~)>W5^J1^@s607*qoM6N<$ Eg0>M#4FCWD literal 0 HcmV?d00001 diff --git a/graphics/pokemon/crocalor/overworld_normal.pal b/graphics/pokemon/crocalor/overworld_normal.pal new file mode 100644 index 0000000000..5a2611f996 --- /dev/null +++ b/graphics/pokemon/crocalor/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +234 139 11 +234 202 72 +255 0 16 +245 239 220 +247 85 49 +0 0 0 +162 61 49 +66 23 19 +184 180 166 +222 85 66 +124 119 99 +99 36 29 +41 40 41 +74 73 74 +41 40 41 diff --git a/graphics/pokemon/crocalor/overworld_shiny.pal b/graphics/pokemon/crocalor/overworld_shiny.pal new file mode 100644 index 0000000000..851a2e0687 --- /dev/null +++ b/graphics/pokemon/crocalor/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +234 139 11 +236 208 91 +255 0 16 +251 247 226 +247 85 49 +0 0 0 +197 20 121 +106 21 70 +185 175 164 +236 66 164 +100 81 60 +106 21 70 +106 21 70 +130 64 74 +62 26 33 diff --git a/graphics/pokemon/cyclizar/overworld.png b/graphics/pokemon/cyclizar/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..8367387e8ba7dc5e3ef34d5705a364d9040135d2 GIT binary patch literal 723 zcmV;^0xbQBP)Px#Fi=cXMRUcZ0000*Qb;sFJP;5N50IGayO#lD_QAtEWR9J=WnCWucFbsqZt2}IydH=^PmXPaK!qE&p)BX@V$|zb0 z+>Zx5$?bN<6<1tw#TB0mqBZ?r2i@iT+t^uI5|8fMlXh1xOY#@62 zk13?=j2!@e1^|PYYvk#a*?UR#Vbl%*XOTw{f90VY2=sl2*?Y{!GUt$mI0Rjm=YGW6DT z0yu+iI`nlKDPibbCj_POXI2DQ3ic>JPNWmSzvv85&H$8O?>A$Mw3n{eXMj0$E$9^G z1P}nqAxmSRO4SCyJ#_5cstpf`I3MA!Xe zesZ33S8#u@M|dQB+~zS^N5Hl<=}>jkn@nM0*4A9 literal 0 HcmV?d00001 diff --git a/graphics/pokemon/cyclizar/overworld_normal.pal b/graphics/pokemon/cyclizar/overworld_normal.pal new file mode 100644 index 0000000000..1724cd1ae0 --- /dev/null +++ b/graphics/pokemon/cyclizar/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +69 82 72 +52 64 60 +16 16 16 +227 234 218 +129 171 133 +1 6 12 +81 111 89 +200 124 100 +217 104 64 +95 127 106 +70 70 78 +51 52 57 +40 43 47 +0 0 0 diff --git a/graphics/pokemon/cyclizar/overworld_shiny.pal b/graphics/pokemon/cyclizar/overworld_shiny.pal new file mode 100644 index 0000000000..5bdb2b6c8d --- /dev/null +++ b/graphics/pokemon/cyclizar/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +248 238 187 +167 163 122 +16 16 16 +227 234 218 +138 138 112 +1 6 12 +97 95 71 +85 215 253 +3 177 228 +84 83 63 +70 70 78 +51 52 57 +40 43 47 +0 0 0 diff --git a/graphics/pokemon/dachsbun/overworld.png b/graphics/pokemon/dachsbun/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..6c045409acd7c284395b58fd65faabf30b71f2ea GIT binary patch literal 824 zcmV-81IPS{P)Px#Fi=cXMRUcZq-!nz+hg~!O3|WP%Zx<;002HIByKe!%Zx>gK_SasFZZ!Zut+bk zNH6H<__fYzGynhswn;=mR9J=WmyK@ZAPj^ZOJ!d=sb;r~?B{ zZrQci+GGrh{lYHh_xP?bsE65*BYADs@R%>9*+C$uu7NJMEeb_}NI9e$^ggenR#OOl zYg@sTV^WS-an1U&Dy+Qa5ZkIpji>m~_d3grTQDKVSlxIyO#w4*0`a7EU_ik;2HnbN z(|J!YRy%#fO`y`MUe}I3bFlHwaSsAZtv05vTnq0Q@D7VLgc$22r)ge!OMh`dD^ctk zh=q5Lt5CR|HoLsw4tMtd674<*4k)x~AZBz39vr6`og{Y+Zq^2GTic1YXOQBH zWV*ie93xI+p9IchFzBr}#qOZffxmgAr}o(YIsO1OH8i?>NUVzh0000Px#Fi=cXMRUcZFjpFo&23+iLS9e;`{sGsxds3L01*)pU=R?MARxFXDBwsy_<&Fz zHW0q0fQb@+YybcPdPzh6HDnf1F_eIJCc5e_{jr8Akq->+=M_*#d9Y z&u{UY0doG?JCv_eKH<+<19B%vH$e!hhhE4C;5q>4H79Nq=p@Oidum8A1o?M&IjG)2 z7y*Rt7Uc={gdARsq>p|L07M+o=mH2~?C_xi4FP%qP_H^YeNsSo4Wz-;+kkjjCIYMucF5V?8& zvb8Uh7YpDHxGct9h7PK3akY=|01%f1zD8XHTK9zdA$vP~AylrVNC66AS$EgvBVdTf z+Y|t-{jqlobOGT<=CB4WVCn!^lK`4J-MYso#klW(2WaRBsKCR()A+Fasl2fVKXjZh*}I{HjsS?3;YoU*Z3= uf{tHh1@sDRHOT4iU+C1=i3R~bbNmM5Yb$e1MPqsZ0000Px#Fi=cXMRUcZ0000YJ|1PsI#h2hMUywb(LaxtL7Cu5w#t`NVNU)3^bZdY=;-(W z0000002`G&3jhED3rR#lR9J=WmjRCBFbG8rggSP*_rLCboOU!)4W#LeRx5?7ZIp-c z$8j+&<+95zyX>;dF8e7X`h-8I>y&Zk?_ck8gcd3b>3yL_MH?gDMh_@3mL z@!_MwU~qNx2b`AMja7t1lyA2eg-3X;i?A%Up5Tupl?k*u&p6_kpjIek=)(*%0XeUW zibCKCK8#t0zBEHRo8i$NVz_^p5(CB#*g$Ix5%wEZ-$h2Ot5VmKKmJ7N^cFk zwLYaO9|@X+U7X?Fs9AFoh&cpq_Z@o)WV{WByXTSfU7@!`887|*XDD<9CVY3mI}8x< zw%b{b2||52Z)1f60U7@=0q$^_m#9OW$foE)FBJ1pCEENKa)?`zLXB|aCww@dR5(@c z2v=~gO6D96XtaEs^71$-{~0e#!TJ{K=9EJHI4o_2y@Te-e`!2i#F||fTRSYlXoSWJ z5k97M9Jk3Dfk@yd<43d5H2BX#1nzG@i@oCI9o4u$cpy;CqVZu})~PS7~|TiX%7`{$Ig?w=x0 nr?3iSqcQ#ynukB+^IzFtacmdjPt%XL00000NkvXXu0mjfjf*B5 literal 0 HcmV?d00001 diff --git a/graphics/pokemon/dolliv/overworld_normal.pal b/graphics/pokemon/dolliv/overworld_normal.pal new file mode 100644 index 0000000000..617ee34e0e --- /dev/null +++ b/graphics/pokemon/dolliv/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +34 62 30 +101 201 58 +84 111 45 +69 147 55 +191 209 63 +143 150 65 +153 224 73 +182 202 151 +83 97 78 +253 255 244 +15 15 15 +232 232 248 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/dolliv/overworld_shiny.pal b/graphics/pokemon/dolliv/overworld_shiny.pal new file mode 100644 index 0000000000..7a07119831 --- /dev/null +++ b/graphics/pokemon/dolliv/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +17 33 12 +47 83 39 +30 17 27 +32 65 23 +97 54 67 +56 33 50 +71 109 62 +177 182 86 +66 68 30 +198 201 130 +15 15 15 +232 232 248 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/dondozo/overworld.png b/graphics/pokemon/dondozo/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..e2a80f514a3d1fa4fd5120bab1306e93334b0f2e GIT binary patch literal 1929 zcmV;42X^?0P)Px#Fi=cXMRUcZ5PiLb+W%8rYT)4Dz_q;x6e$z2`dZHa0000LH*w(L;0`8E97&Y` z0000002d*{bpQYd2T4RhRCt{2TZxvVC=`_fWKsVAcjqmDCM}E7lbW32_UTkA@uJ?# zTTp9RCMG5(CMG5(CMG5(CMG5(CMG5(CMG5(CMG5(CMG5(CMG5(CMG661|h_6AHx3{ z;^*fF9FX$259HS%KYQ+Pdqe%f0jXqhlLo#!f2K)OJsRO|3WJ#%H(gnKQqTx?VNHXU4LFBTA%gCuuwMll;Egr@ zsR5`y7daudStLSP3_MvDTX{vo(M1T0KV11b@;e3Jp7 zAN0`!4&38QEH?p#W&>J z!ovWQKd-jMP@$DtiV?KHw>>Svpny_CqacJu40wQpa38&P8*o0m0>3N(MS#Z?1TQ8) z6@@Yi6ByKk-$L-1f_yy!Kwqhf5k%j%BVbfO){g*z?f_ z7WlO$1RT)X2k+4UgCep4hJVG+Jp@Tbe=6d#7(udL#E;{6EFkt@i(J=LU<6u9gtmW# zlYqO#SQjwgj8M?TB?apOp7p=x*9O3)pY{X_fg=I}>krVCWg!=FUx^@JE#ibB0fDa6 zx>~E0p#7ROLKpd^kEZGPqv?NVAN{hDE%9qr5FCI>3NnLIG>2&h^ZfPnImT7lKQ7|6 z2&xzHWl%um!`WJ^@fFE5#1CJQYU8z!hSP~bs5<-T*OhF6Ut7s?e%m2YICg*yApIRA zmwl<%5H8}C2x=AaK>>jd)>+Fh2|Ps40B?OXOx_=uFZ8pokA7XrUh-=z*$iAkq!35} z&|Xb&5vLkbiXix|9sy$l0v)`wbOF=aw;}o*U<=mR##u@sHnwqWKqZC3+)gXm0w0TD z&$Y?yfXM;Sv6|x|?kf@Gt3`ZRKu3iKhA=UDBGtx*syzbt(V$=03=KeC48Gk0Dp>EM zsS5-Piu|27=;*}R0h+_sbn4GV94A0Ag7&>u#9IQkkD6V_f)nU9zwNXj_R-i&Y>vyA zq-KAffo3K?_(zL=}pan+(&}}Fn5K}2?DQZk^%KTI<92d zKw~oBm}p>iCHpp(l4~?zeR5Y_zC=(LA19c&7BKiEA*B&{8OOv23o!7RPZ=O^;#HAf z4T0E4JH-xUp#I9W`{=lmbwp3?8!p0d0M}T_zK^A{0Z%UBKZzjc$$|?3NkJ9Y*f_N= zRbalbd!)w{3~WtLn0Q}z;M7MevLGD*%C9>5=zJg?La}u)CI(QK2*=Tk8SsSf;OtSt zYXSKw5xyj-FMGkn7aTQvOh0(;fMkIwKdE%;qj_t-Fy?7#*wIIyjzsGh12g{yq+aQk z=KAa|`V#|j=Il|okedj_0-}U$Lh(tF%tx0brjvkfN%&l=WP!mHRye1lk9Img7R2&* z^wH-dL4G#y%)bE{?l*SlQrwp&^={AKQT{UiRK_C%StCX^fNoNfglq!(Q8=T-2hnK?>*LYFY=QTi-WpL! ziqWp{CH{WrJO=s8UwAGFcFYFcGcZq_QwoV+WfN){_2AQUY3C=?k_8($wABwP9do`y zeRCF$@|W=^^PU>0Bu^ZYnlt`6U7!g|&C|rkO(<^8U$O<8+6pP`50HQZ&v6X!N1sh) zzPZPje7ge!_9cfu;Fq>Q3$)rA5s)`W0SBJt8{v;Wo&A6>^+`aPbNDlUaU)qxVeeb_ zT|NF+_@jTH@PMCg*g59M9R84B#+|Y>`u7=Q{EzSbJ!Rh=;Cr5apJ4n0-V%GrX>Rd! P00000NkvXXu0mjf%7AIm literal 0 HcmV?d00001 diff --git a/graphics/pokemon/dondozo/overworld_normal.pal b/graphics/pokemon/dondozo/overworld_normal.pal new file mode 100644 index 0000000000..c29e5725ce --- /dev/null +++ b/graphics/pokemon/dondozo/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +16 125 189 +132 218 255 +83 92 106 +224 224 224 +192 181 189 +7 20 41 +19 177 250 +90 206 255 +0 0 0 +21 55 113 +224 224 224 +14 38 78 +28 73 149 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/dondozo/overworld_shiny.pal b/graphics/pokemon/dondozo/overworld_shiny.pal new file mode 100644 index 0000000000..a0d5a789c8 --- /dev/null +++ b/graphics/pokemon/dondozo/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +181 175 72 +255 253 115 +83 92 106 +224 224 224 +192 181 189 +7 20 41 +253 241 108 +255 247 138 +0 0 0 +172 172 172 +255 255 255 +109 109 109 +230 230 230 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/dudunsparce/overworld.png b/graphics/pokemon/dudunsparce/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..98e582a5273e6a81b188c3d08f6a65118d01c7c2 GIT binary patch literal 926 zcmV;P17ZA$P)Px#Fi=cXMRUcZ7&u5-&D$}LozA#NR6QT^<#E8M0IiQWT4Hnk^1}B2|DnR&%Gm4x z008B=cWW!9umAu997#k$R9J=GnC+IFFbIYx38*-l-v8Ye2)ce?GF!XHp3)yoebV@X zfh2vs{wE9J?tq6a#D>7;fQK!FR2SGB@UVs0$Z&JO(-s2Yy#Ws!c3oc;*c|Y%Vc&OM zO<;4t!^R2js%xY<;Az7FaH#MBVfdHzbBzLA?N&r9=bx^jSY`eezh$B?jbh1FNbffp zm!GaYU<#KKTl}6CeNoI;NYk5)(|d9Pz%gokar70o_)VjU1=<@};8~##Q10Rvrr32% zyDlbAVT<1nVCJ*~Cm1;YvlGBPuY8`J0H9mU?Ncp&KLQqr15ZDoE0F7A>wY0u{J-r(zk+`^1fbAmQaJR#q}%?4_q<>=6VZoBao9*^o^q%K$UA3k_+c`7b^JJg-|mhGnc@?99VjHoHJuh zl6ikP*JdIUNaO}k=iCFzh4ZQlQNhP9gfgM#rUVA&mSwu((j6n1bB^Vi8-y(I!P+TzwD>ldGh_#d0|jPx#Fi=cXMRUcZ7&u5-&D$}LozA#NR6QT^<#E8M0IiQW{qn+EVsrNY|DnR&%Gm4x z008B=cj)F?N&o-@zez+vRCt{2nqhO>APj~LNRCY%_W%FwBp{w?cXg1uu$=YugVM{r z1WQ^Z*yfd8Gr@16&;Eg3f{J z0WOa7$`!00;OaOBICg-GgY$e-IZ!>o#lhQco;40s4{&j40ne%&q8{Mt-~zZP^b5kG z@INw&pV#V#Lp2mY`ZN{euBVRz5Mf=b8LB&pt>zsMU`qZsfqagvf#Y9?Sz|y+}SG%nw9m zT&o{V-0rmOffg{(`o9YTaKG>R`@LTt;o(65NeyZA{qpg!1974GFDP*!yKvX{JCKte zK+a$Qq8dW-hyG0i5aUvp5XP4m;heyBd4CF{8Pn}oGAKmJ{6{mm2$u|)<&q3Y8lHdF zhw@M71co!Z2vY{!Fw1f4&w%`s6t(j6^l5v?0E{idlth*_FzX^HAsn<=^^t@5b^#b% zgmV{EYk;H+il6lF=l{_~SltDsuK)DjkCT~O7u<|kg1Kc^pD zgvWP5bLdH_lbN~#s4l_>y(j}X zr|N>7lXO9dx$05W^UH*z$zPxC&Nuql8vefHoI)qhO+>_9FAztdn^n^VRe4_* z^q4X@^s8U6H4~n_VLj2G2k`4)*@I7OeoD_dmroTbx}YlW>w<2NDZ7eJwQ2C zB;E@u@~$ojdA51sl&C>#PE+YY&#j|})^r{aNYp@Z0uQ1aK&wvxw*H^uk--VZ_(~~%{J!zMvvm~$@IRQPA)%4Iq6o4O3!;a2-*Lly&Tf>six4S zcRqz*E3efYH3+Ra_1{s?gw}NTBGkwQ%?Wdro+Gf(pL8!xqIcB1(&HbcitMnITJz8K zU#=ldZW8EzMqlO)FV`nlr1Tf_8vTEScHZxL-G*Tp#wGX-cf>?eL*eU~00000NkvXX Hu0mjfhBOM+ literal 0 HcmV?d00001 diff --git a/graphics/pokemon/dudunsparce/three_segment/overworld_normal.pal b/graphics/pokemon/dudunsparce/three_segment/overworld_normal.pal new file mode 100644 index 0000000000..00ea281c13 --- /dev/null +++ b/graphics/pokemon/dudunsparce/three_segment/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +24 56 72 +89 205 219 +49 143 157 +206 184 71 +84 61 31 +242 229 113 +192 168 0 +173 143 56 +253 242 194 +90 98 115 +246 255 255 +161 194 221 +202 216 236 +0 0 0 +229 185 119 diff --git a/graphics/pokemon/dudunsparce/three_segment/overworld_shiny.pal b/graphics/pokemon/dudunsparce/three_segment/overworld_shiny.pal new file mode 100644 index 0000000000..201d38a15d --- /dev/null +++ b/graphics/pokemon/dudunsparce/three_segment/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +73 28 61 +229 153 194 +215 78 164 +206 184 71 +84 61 31 +242 229 113 +192 168 0 +173 143 56 +253 242 194 +90 98 115 +246 255 255 +161 194 221 +202 216 236 +0 0 0 +229 185 119 diff --git a/graphics/pokemon/espathra/overworld.png b/graphics/pokemon/espathra/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..cd5feabf2ac78d73e6b7f6b6baa75c4c13b5f4aa GIT binary patch literal 1138 zcmV-&1daQNP)Px#Fi=cXMRUcZN<~jVFfjS~`2YX_d{5LG6Yp6;jok@zKoQN^)93!A<0 z-{k<7ZYquiS*8PZV_?9w7qXvnw)Yjsg53UWjh#EXces`EIcGwnLc0-+1hE5p&S-yr zQpdoEe;WYL=J}*<#Ww^|g<*Qm^Zdk6H4TipwaMW}oYAH?IkxI47B872I(66A&|u!gY9|;%5t-{2c~^=MOjx>J$yRV3hd-E(TXI zs2K)68EhaG({(0Z z3x6YCWmuBsU4MiwJQ~Cwysxp*(aU3vklj3AIQuQX7R8h(c!R;?CbvK0+6nD*T-?bT zd7qQjcZ}n>Sr&)#HM9Fe0I%1p;&_q+pzXzYARicf?Kj&V--xS5cIj$yO$J}*0PeUr zL}Ku+)4l3M*<3L8-k>=(V~~{D(_$C02;iEKn$wG z_@a|kZAXH12yh=6MA5|2KN-l4k(i7`YxKU1FJn^(&O0-l+GV4M#fQ~}=BofEp+pC7 zJEULus;~X&5a5>Z68I&e{lUR?VC3K@dv?7n?3LKI1iOwUhz;3=dxThFrHR)g7!5^( z7N`HSze!`CkUtv(v@soZcJ_l`yzJnnAgOr9UQq@}Cvbg)R~nOd9^&0$G{|DG@;7N` zI8iRF0owi1Nr75Ot;Szdy_a<;+{BxyE|@y_+0|gH1NZ~i z5oi@XY)yLX`i9FdS8)hp{v;JA|KcvKl=!*)%90H>`=6#9V2`Uo?8TX zXi#k5-XE0HU?=%u#k0SOd;SyZ zMi~9QQNI~soLI?2t8OB_37XpZvX%Q literal 0 HcmV?d00001 diff --git a/graphics/pokemon/espathra/overworld_normal.pal b/graphics/pokemon/espathra/overworld_normal.pal new file mode 100644 index 0000000000..6607d0ee9a --- /dev/null +++ b/graphics/pokemon/espathra/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +74 69 79 +64 48 48 +249 249 249 +0 0 0 +227 227 227 +190 164 225 +82 233 187 +147 116 171 +197 138 82 +121 82 30 +207 174 150 +241 219 197 +196 183 21 +255 252 96 +196 183 21 diff --git a/graphics/pokemon/espathra/overworld_shiny.pal b/graphics/pokemon/espathra/overworld_shiny.pal new file mode 100644 index 0000000000..5747724c55 --- /dev/null +++ b/graphics/pokemon/espathra/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +76 73 79 +80 64 58 +249 249 249 +0 0 0 +227 227 227 +190 164 225 +82 233 187 +147 116 171 +106 86 81 +80 64 58 +137 120 106 +131 124 122 +143 116 90 +193 159 140 +192 181 118 diff --git a/graphics/pokemon/farigiraf/overworld.png b/graphics/pokemon/farigiraf/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..4713be648802e07ddab5f12c8b51463483625fcb GIT binary patch literal 853 zcmV-b1FHOqP)Px#Fi=cXMRUcZEG#P=6%7CY07^&h_^ZAMGoy8XAg95R;d{MU5<`Gk5BIusR=sAL480D=L)6j z(#E>H+srXU`pudEkEfIXlA0xplfDQq5~vLJc(-}c+Znr|{ER)GKJ7AReet!tq9V}a z!)V2Y?G`$@#UBMgFUJd35-1M#_^^qv&C4=x`ZQ|tl*|Zhj`K2;KGLZ~?{GGOxWr72 zI_XvMIaPQnC2@b1W65RPK^5rn;Q$t3fz-(YT%MrhT&TOsanE^Qsw&XqhldJz-!pZ} zLga8-=zE4CT;;gs21B4+ehxnbLR+_OZTd=Tb6TajzG=0-%5mEov^Mty7byUnA7*pi zw{5TbI^ghtoMDvpn;iFAxinc|mLhQYVTLRajn&-aT;sQR|HR+}$|?5v#{;(qyl40> z=X>)MtEJfEY>{eBRt9Z8rb;UShlko1i83h?9gejxHqU%SzYTIMI)2r0CbQ&kpE-2&U=Q8@dob#`|Z0BIRJ~3 zgSxi1Qj!$`b#Pr^Ev=Qie3-NzW>uo(Br}saDTH+eMZe2AK(28s0Tv$tROVGP!q!>0 zkpjs4ep`E5nt?Fu0rGfzPi&2U$JizC$z{$0xHIN)K9~VK8Q*VF#=mz(egMP6)Het} zBfwSOE1tE&QqGLGtPUs}(F*ptOc4kh(-Zy;v!~-b8&Ix8{MyTk7S?y#8LOw`zo2aN fef6BP|G)hK=`$!IgnZ-(00000NkvXXu0mjf{&I^< literal 0 HcmV?d00001 diff --git a/graphics/pokemon/farigiraf/overworld_normal.pal b/graphics/pokemon/farigiraf/overworld_normal.pal new file mode 100644 index 0000000000..383f2d1641 --- /dev/null +++ b/graphics/pokemon/farigiraf/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +44 44 43 +28 21 13 +0 0 0 +74 74 81 +76 68 75 +160 176 200 +243 239 154 +232 232 248 +203 196 123 +224 138 131 +243 239 154 +203 196 123 +145 85 90 +167 98 52 +244 142 81 diff --git a/graphics/pokemon/farigiraf/overworld_shiny.pal b/graphics/pokemon/farigiraf/overworld_shiny.pal new file mode 100644 index 0000000000..1dff28acb1 --- /dev/null +++ b/graphics/pokemon/farigiraf/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +40 43 46 +9 7 4 +0 0 0 +74 74 81 +40 38 36 +160 176 200 +243 239 154 +232 232 248 +203 196 123 +85 160 224 +186 243 240 +138 196 167 +34 119 189 +236 101 77 +236 101 77 diff --git a/graphics/pokemon/fezandipiti/overworld.png b/graphics/pokemon/fezandipiti/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..7648eca4d83973904c0835e621866df129a90f4a GIT binary patch literal 951 zcmV;o14#UdP)Px#Fi=cXMRUcZ%c>CW%q;)_0H=pAJv%yDAxV-scgkm?c0DQ5($c_A78)HK{{H?g zEiFYQ9Wt2MHUIzvHAzH4R9J=Wm)mmNFbqU#L%dVv|Nm_lkm9&8KxpiTPG`zYoXf(% zS&9Vd5dM!p#_ewdc*6tyR1f!$Jm5svJSwyRNCqL55=JvRQz%G2IHQxde}PhgYN`X2~Pmh0UnhO1A2vrZfvqJ zuuAmhd&&#-YYC9G1dgh0ZwmmPq(-I%S3eAtU|_EOrSw$5Aanqzwte4QwE{dHgbf=t zXY&E!5e(BG3Un#ZO@OsNB2{d(N^!iU3xABsdcK}NE&xLC*#Mp{hvmC^sC|fT@EyAC zPYPg$mH-QV@DW=|;R9C-@br-I|CIqx=K}06E&x_K9ehHl)$sHr)_8FC*PZ6+M*-Y} zmH>_}GyJCh3`q34(>+}Zpnu}q23YHZV$M0zcuVJ_=pY<(*y1}!iPJL4&dpJF7uYor)T^kRQcDsd>%lEys7|>o~E>TZuV0P zaCJ^R6$`Z2`Gy`OF;)UC!^NtvB zxHRu9`TgJi4&(A$S{oGuutMcvDll>2D8DFal)g+Z4V+)dt?ULPe({@gQ$&LPq zJHi}}vww=ccihx};$=hZ6EX9-XS6&l6Q8~lko>dCx;Nll?2HR-(TnEtop61}+qd*N ztIC{=e15f~Y|5V|zs_i>IrDhg)X$7NkNx&P`Xl@m*Kx^@yBEb@JuLN8)*wd7>x^r{hNvy_?Hxq*HKm7P@SH<(o!E!e{mkElNa|eHZ zKOwX6ZuO@_FElhi%s%Vfl%gF|5q;jNYx-TQjP%bF6sBMLBU#J%{;puOx5YViP!xN* L`njxgN@xNA+-(U` literal 0 HcmV?d00001 diff --git a/graphics/pokemon/fidough/overworld_normal.pal b/graphics/pokemon/fidough/overworld_normal.pal new file mode 100644 index 0000000000..cba45d45be --- /dev/null +++ b/graphics/pokemon/fidough/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +107 100 92 +247 226 117 +0 0 0 +205 182 70 +250 244 218 +225 219 171 +107 100 92 +232 232 248 +133 125 104 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/fidough/overworld_shiny.pal b/graphics/pokemon/fidough/overworld_shiny.pal new file mode 100644 index 0000000000..f2998a4028 --- /dev/null +++ b/graphics/pokemon/fidough/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +108 68 62 +243 210 54 +0 0 0 +202 176 53 +222 189 143 +167 130 101 +107 100 92 +232 232 248 +133 102 80 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/finizen/overworld.png b/graphics/pokemon/finizen/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..97507c58a5e077bc5adf344e24f45801f6abaf48 GIT binary patch literal 740 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 U^V%g9aR2}S07*qoM6N<$f~=8Y8~^|S literal 0 HcmV?d00001 diff --git a/graphics/pokemon/floragato/overworld_normal.pal b/graphics/pokemon/floragato/overworld_normal.pal new file mode 100644 index 0000000000..c527ee749f --- /dev/null +++ b/graphics/pokemon/floragato/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +33 65 20 +79 151 57 +63 120 46 +214 239 192 +91 95 75 +167 171 148 +49 53 43 +41 97 47 +29 67 33 +232 232 248 +149 21 53 +211 56 103 +93 181 69 +16 37 18 diff --git a/graphics/pokemon/floragato/overworld_shiny.pal b/graphics/pokemon/floragato/overworld_shiny.pal new file mode 100644 index 0000000000..95ca72f2d6 --- /dev/null +++ b/graphics/pokemon/floragato/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +43 90 37 +93 181 69 +57 120 50 +221 245 146 +81 92 46 +154 191 85 +52 58 37 +52 85 74 +32 55 52 +232 232 248 +79 40 130 +125 85 193 +154 191 85 +27 39 36 diff --git a/graphics/pokemon/flutter_mane/overworld.png b/graphics/pokemon/flutter_mane/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..41690f8600e9662c22b59adca96a58b2367fc8ae GIT binary patch literal 931 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 literal 0 HcmV?d00001 diff --git a/graphics/pokemon/garganacl/overworld_normal.pal b/graphics/pokemon/garganacl/overworld_normal.pal new file mode 100644 index 0000000000..08dff16f42 --- /dev/null +++ b/graphics/pokemon/garganacl/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +86 77 87 +191 180 186 +252 252 252 +153 134 148 +0 0 0 +195 146 123 +68 51 46 +150 103 90 +234 136 28 +246 226 26 +100 81 77 +138 115 103 +228 209 200 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/garganacl/overworld_shiny.pal b/graphics/pokemon/garganacl/overworld_shiny.pal new file mode 100644 index 0000000000..1ddcf0c22e --- /dev/null +++ b/graphics/pokemon/garganacl/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +81 64 45 +190 149 109 +230 175 136 +123 96 67 +0 0 0 +195 146 123 +68 51 46 +150 103 90 +234 136 28 +246 226 26 +100 81 77 +138 115 103 +228 209 200 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/gholdengo/overworld.png b/graphics/pokemon/gholdengo/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..68d32e136ad1c767084a2a6722365bfcd5f1e82e GIT binary patch literal 906 zcmV;519kj~P)Px#Fi=cXMRUcZPd*g@0095nrq!e|)ub`mh!6kOEs=UQGBh_-TWhqWUYtHdb|o~q zzRik{pPU)o+5i9p2uVaiR9J=WnA>uzFbqW_A!8dt^8bI^Ekn{w(IwNImorl`ed!X? zmMmn$^|ckJD^D^-BV?RvDWcajnS(0hh|q)uR&E7iuB+3e zHLpt&PTC(0`dTpsW_%Y24FAPZ7;=5QrPnURv(+RSCz*+nAF5P}p)ljxVx*YZc}^3q z0(-%a?Cmb&*rZ{DIg32a%`W4h)PX(!IcISEyqz}VBg7Es9yb!sRC*0|`ix_hp>OdG zG7f>YMuR@%R1<+2mt|SdV_x`!`}ZFeb`2gY;5z6_EHLI6Gw?rqb6Tg*;GRIjcz}UB z1>s@m)zd%=aFjsEvCCt|7H`h8g25eulo`APa755t${ZySan^I%J|wI;k8Mm2ZZ8pK z2Co5}3`lLF1R}1}eY6Ne$|(cr#~9zac_gM`Fj~Ym&;>ZSn}LEj0dcu1WWfsK8N^Ec zs3E#{)-gV~k)NIuVgp?Oc?8gAI_sdJKWrgCfuZoI@QQB!F^VvN5b?P}=jW7Qu&(P~ zVHljkVD+C|6FBV!gc+cRRap56kfvyIC?xJ31?ruzbedKApC>0{)RL^%b=wWdXc4O4 zoOM$@JJ9J-*6Ve1GvJYc%~jOx-g{pJ2^i~(1RngHpBk*!+qS^qeq*v46e9c#+h6N-f!5b(5a4xZ*HCi+SaxTgWH`iRs~+U?Vq_WZQFtb>gaBVk9}T` z{Jz0q;Rw*9Vq`F0W<~&4Af9wsdAMk63b`D+1d33c!?-%wx%*P52Ua!kj`L+W@IMMD zpNs#_jcpJIL0{j#gGR5cgGaCJp+Od4q{i+7jv*U;8A?AIy=mqe;uit+j gd@sO`OLUjP6A literal 0 HcmV?d00001 diff --git a/graphics/pokemon/gholdengo/overworld_normal.pal b/graphics/pokemon/gholdengo/overworld_normal.pal new file mode 100644 index 0000000000..723bc75ea0 --- /dev/null +++ b/graphics/pokemon/gholdengo/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +79 62 21 +0 0 0 +255 219 166 +213 164 49 +213 164 49 +217 136 15 +255 213 45 +145 122 54 +50 52 55 +84 91 107 +180 164 94 +156 62 67 +118 37 52 +185 190 205 +138 143 159 diff --git a/graphics/pokemon/gholdengo/overworld_shiny.pal b/graphics/pokemon/gholdengo/overworld_shiny.pal new file mode 100644 index 0000000000..6e2d0516cd --- /dev/null +++ b/graphics/pokemon/gholdengo/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +79 62 21 +0 0 0 +255 219 166 +213 164 49 +134 156 157 +107 121 126 +255 213 45 +145 122 54 +50 52 55 +107 121 126 +180 164 94 +156 62 67 +118 37 52 +185 190 205 +138 143 159 diff --git a/graphics/pokemon/gimmighoul/overworld.png b/graphics/pokemon/gimmighoul/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..35c2bceddf74ab013f6e4d03ba8cefad0436c543 GIT binary patch literal 648 zcmV;30(bq1P)Px#Fi=cXMRUcZk%L44001K;UT=??q`+QpkC~*vNqiU0rt21!IgR9J=Wmg#cCAPj^f3D+S8zyIS_0%B*TI-KK2JGEv^(tbwS zUGQ^MjNC2+D)}og_IS|PIny=R@5f8J*-whxVC>VJ14EhO?K#UB$89*rT-ocn13dAlj z=PnRG9Y8EFHsA`x1iU%&?Uwli(ocRYfcpylm>&tmJUZyJ4+xaK3Bp14s%F3y*!%Zu zMC~64WZpZdvkwTATMSpu{nH4*5!m_z5f}jk0)?l3lhV}10_BXQ6vR>%I{;hY=-+O$ zY5{|rasu_ql>;jDdT+U~-glq!=hqYqgqgYo>z{*(m zIFCB#`6AGq?{irp9R3Ug)#dHpf&I{)IMRik6T0)5b^z0;uXF}Px#Fi=cXMRUcZ00008FpvWkK{Tl0V|b<1;_DwSLjV6UDl}4=r^J7MyP28GV|b;> z#NtIeP3r0#WB>pGnMp)JR9J=Wm%(ntAPhufj6(>4{{P?BWRpF`o~pFk3nN8)7!UXX zA=+h`nwpxLnwpxLx>mO4`I%VsG2e9`u;+8hZr%ozeb=#b%Fj^gv)!)V~j zJAnOu2y|Ej0Kj(xT=E7q{A+>=8UTQ~{odD|VbUe2^|{3x z(DKjm>){e$zYX~+Dy`MWeR=^>=>^6hRNK+2eMtV>KWj>D%{gc<0;51DD4+r0ALSVE z@1o`%M5<1K(iLxf?AIaxsxhx3Tws5se(0kEg4X|>L)X|{2Co3TV#^osQ6BlH=m+cg d>A!w|rf=I^4tdN0DT)99002ovPDHLkV1mql^XUKp literal 0 HcmV?d00001 diff --git a/graphics/pokemon/glimmet/overworld_normal.pal b/graphics/pokemon/glimmet/overworld_normal.pal new file mode 100644 index 0000000000..47f6b38dfb --- /dev/null +++ b/graphics/pokemon/glimmet/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +8 48 144 +3 21 65 +52 168 225 +99 120 165 +212 226 235 +31 46 66 +255 255 49 +42 52 82 +153 167 196 +127 127 187 +153 153 203 +99 120 165 +201 196 226 +69 59 77 diff --git a/graphics/pokemon/glimmet/overworld_shiny.pal b/graphics/pokemon/glimmet/overworld_shiny.pal new file mode 100644 index 0000000000..ffeb7a9376 --- /dev/null +++ b/graphics/pokemon/glimmet/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +45 244 215 +23 104 96 +204 224 225 +99 120 165 +212 226 235 +24 36 52 +255 255 49 +39 49 88 +153 167 196 +85 115 184 +104 140 209 +60 83 143 +138 173 242 +69 59 77 diff --git a/graphics/pokemon/glimmora/overworld.png b/graphics/pokemon/glimmora/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..e3a05b066f695ef7b1a322cd6584a96725175cc0 GIT binary patch literal 891 zcmV->1BCpEP)Px#Fi=cXMRUcZHfdG>002Rji(TNVEH;`lQ`Q?EOE55FTTYdYd(J&ZOIn7U|Nk*f zV0Hii08;Ju;s5{w`AI}UR9J=Wm)VlzAPhx~un@MB{Qu|9l^~lf$il868A_4bDh@CMUYI$4 zW`6_F5PSiE+DTY}5*&aAL{g)ch?-3j`d56wgMvfj^&+l9ZUD(d*am3WPlT7|OqK!4 zxhTQGSG+miS z&mQO{g81h1*ZI~|URG=)EBL*KNFT8goh0D>7Jq9*lCz61#E3AHCj(8vT<2#$0bP6b zAg?Q$$GT>hU!^TJv{s)V*tRVJKN&vDvaF5=0;&>0IO_n|9-I+64%qz=IyY{ku32{RD9eG3w7z zr50gPd8>k=_R9G#qwS;)&~>1cJOvd1E+KXSFpH&52nG2WvgDOC9_@jbmk@FYOO87a zt`WWut=0MN!R7Ks23|-60VLYar!zv~6}p-+;i#c$IND1o;+%3R;>QJc5x$LwC*G-n z7ZTA9$=msI)=+qzO2O^4>Xx{aHj3nwHu|){Ey7ho`wUF)bRppfi5vk%6Uee%w))Mn zhj`Fsv8)U%%z`NQ8&9(48r zd*Ibsh#n+zG=B+TRcuFz-kpQ|ecGnFJMr|!X_R7>NaxN&(wXCW6lp{DZ*<+W&{Qup z>RjtSKvg1b#{Qjn)V_ZjwRu!{y%hV)Q0F{e2>KV9QTyI~;QoT4OYuK9{s7%&96uRj R2igDt002ovPDHLkV1j7ik@f%p literal 0 HcmV?d00001 diff --git a/graphics/pokemon/glimmora/overworld_normal.pal b/graphics/pokemon/glimmora/overworld_normal.pal new file mode 100644 index 0000000000..e01a7da62f --- /dev/null +++ b/graphics/pokemon/glimmora/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +54 105 86 +0 0 0 +65 150 139 +93 224 170 +44 54 154 +50 83 214 +27 30 75 +48 48 99 +91 78 149 +141 123 206 +61 70 75 +90 134 156 +255 255 49 +77 96 118 +0 0 0 diff --git a/graphics/pokemon/glimmora/overworld_shiny.pal b/graphics/pokemon/glimmora/overworld_shiny.pal new file mode 100644 index 0000000000..b2310cdcef --- /dev/null +++ b/graphics/pokemon/glimmora/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +61 152 182 +0 0 0 +132 209 223 +171 237 239 +27 190 170 +45 244 215 +16 69 53 +31 39 120 +40 52 153 +47 79 187 +61 70 75 +90 134 156 +255 255 49 +77 96 118 +0 0 0 diff --git a/graphics/pokemon/gouging_fire/overworld.png b/graphics/pokemon/gouging_fire/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..b6b232b9d01c17d549065a189b8d2c19a3800e73 GIT binary patch literal 1141 zcmV-*1d98KP)Px#Fi=cXMRUcZ%A5~)VJ!dbeZUzO0001p5e_-c6u^iWLpwHmfrV>vWX8HEL!*;`=80U6>ozfM) z@qn{5+_oW6+vdy`>+{K-B^oE*h?gSmRe6`Q&$dMcE}Qk%7;r5S?`O{+s1dV-I-C{4 zBCk5@YtBg_ZNbk4GP&3-t|j8V(_j9ggnB$5^w$DM+~*Qefw@HdEsh0L9tR~FJ9x$O zquZEY)fa+4Pu}neJXEvC7-9J7j@D^qAe?#sa~o5N~kE@q$G-bwam^ZvwdD*xK@nkfQJTRDs2z#CjZy%u?T3v77pur7=I{QPVx5$8RgWm!%E47i>gDlqS^ewwB$ z4u?-JFZlz3n34j63QXyp;+Ct!c?(qG_WT2ZaBcLBcu9K7MecLSSiCq?T*50-A0`bE zj)_S=6_LR;|3?HX5jtd(I7ivgvT8Z&?{b!i?rhQm4*BC`@a#}?!71nc%0YqA^FTNU zVDeK9tlDbB!H^W^taV?=C=hP+$y^ z0$sDjh)=@yDz$E1S%i0?;^2J4h5PG%sE|8|bFRxvWS^acHzju}@J(rCaKJ@xYvs~A zHy*p0LhL&k6>5!O5}b5fGlQIXLoqzJNhZp(6lSyNW=dNkhi<&Cab>Rm!O5?|&hOg+ z(j|J{_OkpK4GBAMqf-SwZ!Nu=^{K#V;fP))trDQXyo@&@^lB$J1LOozcaSsSsu(Q| zQ8b0o46g`80P&&;W8r3ihd^E32w*o~1?bE7OEli-lWY`k!ISXjKOBx(<-_kn;MD$) z#dJ1b1jw`>U&CG3EFrbpup|6SzYE=8JAPQZF5fQn{}}%PF)KZC)$uu;00000NkvXX Hu0mjfn9UyR literal 0 HcmV?d00001 diff --git a/graphics/pokemon/gouging_fire/overworld_normal.pal b/graphics/pokemon/gouging_fire/overworld_normal.pal new file mode 100644 index 0000000000..cc60ced1ee --- /dev/null +++ b/graphics/pokemon/gouging_fire/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +202 156 15 +120 97 44 +255 236 125 +192 25 22 +0 0 0 +136 17 14 +57 205 20 +192 136 24 +67 59 54 +123 129 133 +107 113 100 +198 204 191 +230 235 235 +198 204 191 +0 112 249 diff --git a/graphics/pokemon/gouging_fire/overworld_shiny.pal b/graphics/pokemon/gouging_fire/overworld_shiny.pal new file mode 100644 index 0000000000..2d1a121559 --- /dev/null +++ b/graphics/pokemon/gouging_fire/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +235 148 37 +199 100 36 +249 189 116 +93 92 92 +0 0 0 +51 50 50 +70 220 210 +152 96 57 +67 59 54 +123 129 133 +107 113 100 +198 204 191 +230 235 235 +93 92 92 +0 112 249 diff --git a/graphics/pokemon/grafaiai/overworld.png b/graphics/pokemon/grafaiai/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..773a3b7989f590c7eef3958740496d31a72735a7 GIT binary patch literal 751 zcmVPx#Fi=cXMRUcZaAjqwot1E9WdHyGKR-+;C@4lkRI8<|=Hug6MV5-fqN2;DFqE^g zEM(U>cJF;(yZ`_KZAnByR9J=Wm*H}(APj{?Be1CW{%?D8g0@{r(ApojoiW{6cm2|E zNMe}ny2l=S?6Jold+f1aVGb{OyT|{x0N1;rcm2TEJDfv1B9hPB#pJ5PPXrJmyB@U1 zrQEpAOLPX~2;j#Gzwz4PhXQCE5!v+~)^nod#${dv4xAeyG=>Vlaes99SfH3Kpv5IH z%^CA%X3V^=40-rn_9rlPreDU943OM1u?6X|I!(rYzw+F8CU-5SbzT-J+imw-5 zseGl&Toig=L~?V<$76VN>J@)p<^D^d~&{ zDhAwAE5!H!?K>vlWSzo^+JfONjS+>E&0}n~gtE!O3HD?)u`UZ2B z1Dk2q1o8&+ev)QQKa1n(#*Jca0Jy;=!{{^Kfl&d`Ph?d{#iE=?TpwwFbF!ULdC)Q-*XpQ*JZ)5F*YDr0+8cB_ hpBw8J+!pv3?H@4=BRFM`>F@vm002ovPDHLkV1nS5Wc~mE literal 0 HcmV?d00001 diff --git a/graphics/pokemon/grafaiai/overworld_normal.pal b/graphics/pokemon/grafaiai/overworld_normal.pal new file mode 100644 index 0000000000..ad40b14cbc --- /dev/null +++ b/graphics/pokemon/grafaiai/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +112 101 101 +169 157 149 +112 101 101 +0 0 0 +63 63 76 +40 40 40 +70 66 84 +171 165 172 +230 227 227 +87 69 150 +138 194 162 +162 203 166 +48 148 179 +177 44 100 +215 56 118 diff --git a/graphics/pokemon/grafaiai/overworld_shiny.pal b/graphics/pokemon/grafaiai/overworld_shiny.pal new file mode 100644 index 0000000000..16c8ac6f0f --- /dev/null +++ b/graphics/pokemon/grafaiai/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +112 101 101 +220 220 195 +172 166 153 +0 0 0 +101 112 102 +40 40 40 +64 34 100 +177 168 168 +230 227 227 +182 74 96 +169 169 226 +213 204 255 +255 234 86 +64 34 100 +148 97 222 diff --git a/graphics/pokemon/great_tusk/overworld.png b/graphics/pokemon/great_tusk/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..eb3ee7abdf03cb597e5acf670401d3d29262d94e GIT binary patch literal 855 zcmV-d1E~CoP)Px#Fi=cXMRUcZd>JKi8#5FfBt=4Klp{1qKuDl3QDNI*MPSmV-P3#{=@!Vu8p zHXqFHb0!Ur`6lPcX7R+K&PfREE{8tviJ|h?p~kVmY)4nxo1HR>Fia5f~@N3_4xSmSm)yyu8X`(9P{xUQA~TyqQ#gPqP?Vmqsl z*mE<7K1n!aIyqT4#%2zqA*w8xq=a}yGrTDBHP-?D1LN7OFP{`OamK`-Lz)+9<q;$YusGMQQkbVmKZN@!N4kjYmV)pbK z2-{Tqybj=sYc_N~h??9t#nK0E;#r{Zo69|ou51Ii5qXY7=7K7-5hLZF}6wuyz8(k_4%f2B=4t$U!hk2c4cueELZx)AP!{)fdUs<^2xAn;~=A!Qd z1KIqEP)Px#Fi=cXMRUcZm`c63fzkKSY{{V90002!>+iU=zg1vyiIk?a#M3J;HZU+iK0-w> zFhDRcK+Hn%1poj7q)9|UR9J=WmjRC=Aq<6`)s~i-UH<>Sy}qKkUFlFqFS*=Bq7&oy zgx5j=Pp5Z#w|9HD|Eeu7;lJOOkEz83r}5?Sr;5bD$9W#Wc^W|)U&0?y%mwEEe3=NA z%Xt<-8h*l0X@>G4E;IiLPs306Da}yY1@W>lJU;3-0RVttq@Tmn<- z?O~f~TuQs&X)_Lgc0^G#hvu)59arrbH;0%2t1~=lJaDdDYs5)gFK;Cnql+iHb5fj|prLaSm}rrKImbmwdyQy#U7B-( zMc?GiA3okMvV`{xQQzfgFM~6Vjg|{=;k}c5%57_bz=l!WxQ1(I#&J?8;>0_;FlOAg zW@4)jdyISBBiydbc3b1pCBY=Px#Fi=cXMRUcZL`hA0dV03A-%d_aX)iAT006B)V9dwoxwkI4y~OSB@edCV>gwvt z%gdCNmI!f|AOHXZkx4{BR9J=WnCq^qIt+wygRClnBx$1I`lrf&ZES`hLAIN^bz4o51h+-TLx5TUd?vOUUC@;I~}H{!gFq zVH}kX>)0t$j}KY}YHt9C|2hL>j0%fi8e>zT#|Kp^9C2t5;PD?57^5l_LLZI|g&rR? zzJb&ZP5lnvEmCbJ>F`m*`~6nMN6=OR4u`<_wurq1?)gXHG6owRuKf30A_N8tz<8M} zk3(OILTdzH8VWs*79u>a90Cf14k5{7E-)wrmIpqgUK4OQGE72i-YTh)-#uqZSZ(qU zIT8mMLX>CR3?|T0>hU~;#|QJ3`e0LRWMEvxGPrP^=Bx@$a0qY>T?Kj^-3J3YPty#A z7%Lox@VE)Ixs`;r?F8_fBrL-thq=>4h4hue-n6%a3iEEznjL0lfn3UF7mYTh?8(8!jPnkpy%rbSb8D305v>aN=-9QQ(<(h=jtxL>&Zr zd=sc;7Rgy;F4{`qjtl1}vd;*O)S9HlrMB5|mPgiXZxgsFv^E}J_0ge{tHZg_p@Tw~ zCzc3%6%)umn_R+)TYX!%^Zc$kZr zU^(4M5O*9FDb#8E;Q?ltTUs>A-G3^n$%?byxlUB_ftNG?=q^(5-JqwtpGiaDljyhG9-Yc%6`mffwi^5|;}2J!PGx_WJ=XvL N002ovPDHLkV1oHv>9PO- literal 0 HcmV?d00001 diff --git a/graphics/pokemon/houndstone/overworld_normal.pal b/graphics/pokemon/houndstone/overworld_normal.pal new file mode 100644 index 0000000000..ac1cea7e9c --- /dev/null +++ b/graphics/pokemon/houndstone/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +68 73 77 +122 122 122 +182 179 223 +78 78 82 +105 47 47 +0 0 0 +173 65 96 +204 199 231 +185 183 46 +185 189 196 +237 239 241 +15 15 15 +234 234 234 +203 203 203 +148 149 150 diff --git a/graphics/pokemon/houndstone/overworld_shiny.pal b/graphics/pokemon/houndstone/overworld_shiny.pal new file mode 100644 index 0000000000..ccdf95276a --- /dev/null +++ b/graphics/pokemon/houndstone/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +68 73 77 +122 122 122 +161 138 111 +78 78 82 +105 47 47 +0 0 0 +173 65 96 +220 211 175 +185 183 46 +186 165 133 +220 211 175 +15 15 15 +234 234 234 +203 203 203 +148 149 150 diff --git a/graphics/pokemon/hydrapple/overworld.png b/graphics/pokemon/hydrapple/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..2b2da7ff79413d04b8887c30ca418055c9a855cd GIT binary patch literal 2096 zcmaKt`#;ltAICr6uQ79+!<^YfO(k39R8C6{L$O;b6-Ls<6*-2G&AD`Pid+|2Ws=aY zZZ$%igrtk1LR~SZl2&ufdAr^BA8`Nje!pJt*Yojs{rJ8@ad(!N(UJiG$h(joJOO~{ zo0=pou{jMhDc3g_6z%D34{E!0zHJ&J<&c+SbX&O@Q7PW%Fg4enbvxQ0jowWBC~&=z z(b|`bLk&_ne}`=zD+~?!WRjja`p-MghXFv=x;Py0iZA)`$JMAumU5Z@5@d(rMmI)c zFU;ODAKbI|t3cr0pI+ebWP#>n9#$Ciu`Z;);_#p5VgFyyIsrfYfxm^NuDGs&>UUj} zJ0AHsTc2(riBNps8+sq!e;iA@L)7Y`xrukv<0N14mln-#Zzw{I8&CMw^K*|60-fgNB5q5knOCmm4?@bV$xd$u{V52ynzedS8T zA)E5z)TF+B!klBaw{)>&PGkL^x^-qGFD06KOM7y7E93P2p7ZCVjE?g@IObf9*03V0 z5f^ga?^5?A4|9oP>y*}T1y-^_%0hrtZP!uhkomvTyx?}ds0O*I*eurzF++(9d2;fu zqNLRBa8_Mm)HmxMOsU4dy?`%5RU45mLuq2(cxJbRjWN6Z*?6V3GuE_Wi*z32@)oumM)>m_P+-jW0_2R(qM@n;N2>+$|TO4>ezUC zglHN)yGHc0n{%=POW34)G3W+_7wJRUMBsM9b4pC%N=Nqi^S;WRL0dQ~smCt2rF3ID zjvJdC;AW(~8S1Jzbn?aGl@1kJw^3>HS?}27i7>CHs-}zijmLJF>6f>>B;>h&qQ(-N zQv6%;>2m3wqi$oTF)^LRziG+WXZTLEFS_~ZziN|9a)PU@Ck`GFI}ltWVH{q2H*0GB zbw9_tmo0N#+AYZ!ocSwPSBKqIFOU4Gk9*W|G-s+hku1fiITJmac~5sssD99k5)h9O zUL4&pMy*RRI$45sh3%df?q!iOST6@;No$IPKhTH?sR^cR%`R~F;zLn^En)br2deHM zL*d&Nh}@&+fUKR4hFyCy5U#YtTr zb6p(34|GE3tXf|K7T&MU&cikv*dRGD7&uElfDV#vEA9#lw(WhNwj&+$qQc6RQ=u3L z=SWW6c@6WC(2lRt!04h8@X6xi0%TWq((7-nPnCSTgy8vWY`JS#1uWsBUfKUPe+P`o z`6*YDlfr7(N)P<5JB5CJBTsZ4ooAiJb-*n}1UwR&_YqKDjktj`x8?Fgwutf1!ERhZ zjr4AW%yPoX95rbaNtxo%q{@gA0fv%&YkD0Grq7%=xHN->;)8EsRjW-v?+AjMB@N+X zsCFkAFb`k49;q89ol{~52d9%Umd$apv>U&aNFJ+2V70@UE#&W|4=Wgoav88`<2kVj zD7PIJx-YsydcQtnR^yyG^1sCnAmV>hQ)VIjSAGq+Ehb7TZv#3w7}39&4;exo zK=7Eo%%QH~=!Sd^;F$wYwa5XpOCN+A)8YF2B(gLapGz?Xnk3j$batb1O&}ad#MAbr zw%P6QmJaSC#9*~>3KQ)6ArENUAI0;F)O&UEv*qY&}{LM&3S?H4E zitn9Csg@berK2n~uZl|f$^123Dxe!f)(z3CR@kJkVG+eNdESJc>cl!TS&dg&rntx% z5mGp9G?ycIY3X*bFGY@92&UeuB>wPCe4Vhqmz2*@qfCaoQkBU+31N<3wo@dC_z0cw zcwMBJyJmR}HS;$A>P@_UPwNfZWWl%?1kd`F)AQ+0sShO{=!Loi@8{!|-cA~1K3!fx zi+Zyi5kKm(GT(Dnc1D5`vf#)@pCAo6-3}edrOx_$(7$lV9g2Pk0V?N#ADq z5?tA9+LhKx53%*F8ceCFDdi`%flHE2Uwg#ac*&LBYNXh4e)TE7X;L?~bkcT4U;-2e z7Hi61(g@0fNY%<`0kLuJVBtIF-GO#x9xa0xXq@81!KQdGTdiT}>&VMSxX*5boR3{> z{ZaP_Zs~?Bgj69J##}Z)d9B40*@{tB(Ef1@E(8xHiZVq8q$Z__IV6aHUAT5-+`my? zhy6vFN`v~teiEnY(27_B#bWnq&#A{rT2=!m?YVBq>9aT%w#agBDizm-h!fY;IW|$R Uil0K7o4*~nIJ!I3+WV*e2Uw`L00000 literal 0 HcmV?d00001 diff --git a/graphics/pokemon/hydrapple/overworld_normal.pal b/graphics/pokemon/hydrapple/overworld_normal.pal new file mode 100644 index 0000000000..0f8efb75ee --- /dev/null +++ b/graphics/pokemon/hydrapple/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +53 48 17 +120 92 77 +95 145 66 +176 152 115 +96 16 16 +0 0 0 +94 80 2 +184 40 40 +251 230 121 +217 185 6 +144 205 109 +96 16 16 +166 36 36 +224 72 64 +30 54 16 diff --git a/graphics/pokemon/hydrapple/overworld_shiny.pal b/graphics/pokemon/hydrapple/overworld_shiny.pal new file mode 100644 index 0000000000..1fb8f281e6 --- /dev/null +++ b/graphics/pokemon/hydrapple/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +53 48 17 +120 92 77 +95 145 66 +176 152 115 +95 145 66 +0 0 0 +94 80 2 +144 205 109 +251 230 121 +217 185 6 +144 205 109 +133 71 3 +235 194 14 +255 234 81 +172 44 21 diff --git a/graphics/pokemon/iron_boulder/overworld.png b/graphics/pokemon/iron_boulder/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..ff9a212199ebca3f5f9e0d49b3904775fc816b99 GIT binary patch literal 1105 zcmV-X1g`suP)Px#Fi=cXMRUcZ5D*Y;P(@l=R+5l?I4LQ%vZqWpG`M>q&(F`_sX5?a0P4wvI4LQ5 zT1)<{HPyjxEdT%m&q+iHq)Rsgh$1zP5YL!>n1Yhs5?4 zPy!)%Jbvxhe(l%(Hzv*RPx#*%|9FH;9z<2~`$PV34LwKN(Fo_7(vV5LAImzi~@ZkF$H3M`mjNGqlA zypjP^{F)=M*DkLCs!zwUz`X$ZtqA}fhs0(6^9KqiiA$}!K6<+a4U4pE40g-6{J8cL6M|iVF+KEg!;4zKy}085+G-I z5(srnAKX~C0pRP*rvMv)?>CA((~_wL2YsgIu-M?hv74Xxr8X@)XE#nMR2^FG<;xe6yJ0{%v9pKU~1m0`keAHvS(4P+apR|7f Xt9LV=US*&o00000NkvXXu0mjfQfdUi literal 0 HcmV?d00001 diff --git a/graphics/pokemon/iron_boulder/overworld_normal.pal b/graphics/pokemon/iron_boulder/overworld_normal.pal new file mode 100644 index 0000000000..cf0d9da89a --- /dev/null +++ b/graphics/pokemon/iron_boulder/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +16 16 16 +109 80 69 +90 90 86 +146 144 125 +56 41 41 +182 178 167 +76 55 52 +184 123 33 +207 207 207 +223 169 57 +224 96 0 +234 201 132 +56 41 41 +122 90 75 +254 172 53 diff --git a/graphics/pokemon/iron_boulder/overworld_shiny.pal b/graphics/pokemon/iron_boulder/overworld_shiny.pal new file mode 100644 index 0000000000..4b7b817858 --- /dev/null +++ b/graphics/pokemon/iron_boulder/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +16 16 16 +173 173 173 +90 90 86 +138 142 138 +90 90 86 +173 173 173 +138 142 138 +184 123 33 +207 207 207 +223 169 57 +207 207 207 +234 201 132 +173 173 173 +207 207 207 +254 172 53 diff --git a/graphics/pokemon/iron_bundle/overworld.png b/graphics/pokemon/iron_bundle/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..b8105c80b1ed4f953a4d9e1363b3de35a863d362 GIT binary patch literal 697 zcmV;q0!ICbP)Px#Fi=cXMRUcZNJvNk007j~)K~}zs;a8U7#P35znBOJO^U!;!2h_Q82H#&fM^iZ z)YM2wNQm_Zs{jB3H%UZ6R9J=Wmg{b$Fbsub#~~NUy#M3wNkHtZYRA*6e^$aU44Th` z<6}b`!V^zC@x&8PJn_U6ArNV&pYz`l;jF#l9GQcN1jgA9_-`0M37aL*;lwerY}+Q| zbLpSw`~I^Q~#RNR5*`6;Q&J)6zT~czw|}JKc5ea&d?3=IOkIz6lS%9 z4j%$9eP#hmKA+8DFPkH@AQ3|RA#f)0s5V6Cb` z@PSPZUFF;r59Rv(wY^#$8Cn5v+!*47oK1vc((^s#9{*}kYfUSl6=2wB@W6YAa$)NaAv~VE?|MQP$gB8t<0WoZr#pc|NJAar4P+wSkVZh|(_4~f}j^H4ZvLciosVM fb`Px#Fi=cXMRUcZAY^x7NC;y0_xR9IIGn8(JwxEI2ofL*$Nc<2Kv92C*%u9cj@2g1e(fMyMfXEB8f56Gp5<=+xH{3+? z(qH8)&w4WnkHSF{5hck+jT;wDO36eq0tz>C`5K33ZGwlB6(ca`CW2Xv5hF0=Y}ibm z#?g{Ze)ahOmXqg3Uvc9c5|=J|=p2$crhe@J(Kq_yvb9Yw?Fs!xVkyqCgi{ zyGkjl^6(HCu5+kc4MppPJlFWPfN}7!Gok>6A1~b@fr}0Bzw5yF11Lhn8 zdx$3njCszb;&2T{m|EkH1u_mAkAF$PoWnx)F^P+aJl9gI$s}c;#{UT9U1BE&O!<)` z5|(+s)tW2|d`3Cv5BXz(nrg#O6d?1Sna={>QdQx(v|77^>5=5Ql#)N>#{w9IST#|A z%oATSe9Yt?W@B8s#F6C%8x>W`u}z`*$-^4w1yJN*SSvZBtz6!NJgPqvH>;!y0)hdAMFK4I9wCE&cg$oZZOh%qt^-B5tW3vOu$x86YqRn4?`f~Y;J|d7e3;5@S%ZeD>V4338kEe zXuMyP#Ic!tkaRB83J}X3!1;Z~djNQdw195GT;SL5 iKgb6Qe7e>@(0%}CX)U@}20-Qj0000Px#Fi=cXMRUcZ0000nH&_`UF+xsrQczIK$;Hs86QiG)DJCiW(iT`sDS35lIyN@| z000000Gn9uxc~qI|4BqaR9J=Wn1Pa`AP__|5Rei4|KGjtK{kR)YHzRV?y5p%6Xk(+ z4+G*p9-s0lpYkdHQjs6>zg@)56~5yS|KWyfrUvF*oC&;b@Qy#cFh2efVjLY+jzrK;4b#vhksM1iJnVqnT~b*S^V4kz5=i|`tM(m{yJtCcJ`j|V=CQFG%dPQ1U% z(m4-N_8Z740p`5MHwd_RehKyV22gY0p&z4=LJJYFyG_zNUau5l@FviQ8v_Gx0w9ke zmzXFHpTzUgK(tK#aLoYsR&MUi;&oHmh#0} zlb2PF)3~I4spk)_Fpj{;yGdRRr0Ng%@%@e^XM`+-YtH=%+Z#ZvI7y4iFDH&o7Un_56e(#-MLpNe z>|UEL?<_V)jvj|i8N$QFE8OWgJHqV_{V)01fXQ6(I|?)+iUmC9n9dyQYtGnWC_T!i z-skK(1IBeT4t(NNh|omYFjsH{8Q^McjDY6K@b&+Y&76p zcYVKO;}s7E?b%Rlgo@3$@9<_IGqwpnciKuX-$~#7H{)IFpY}hH$(82x|17@%geNUH TX*Z2X00000NkvXXu0mjf9dIKA literal 0 HcmV?d00001 diff --git a/graphics/pokemon/iron_hands/overworld_normal.pal b/graphics/pokemon/iron_hands/overworld_normal.pal new file mode 100644 index 0000000000..d48fe515f8 --- /dev/null +++ b/graphics/pokemon/iron_hands/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +49 55 88 +25 32 49 +66 78 115 +82 80 80 +203 201 197 +208 167 19 +163 159 152 +41 38 41 +252 210 22 +88 74 41 +121 117 108 +58 54 55 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/iron_hands/overworld_shiny.pal b/graphics/pokemon/iron_hands/overworld_shiny.pal new file mode 100644 index 0000000000..2dee14f755 --- /dev/null +++ b/graphics/pokemon/iron_hands/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +100 103 113 +51 53 57 +145 148 155 +51 53 57 +145 148 155 +208 167 19 +100 103 113 +41 38 41 +252 210 22 +88 74 41 +80 82 90 +58 54 55 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/iron_jugulis/overworld.png b/graphics/pokemon/iron_jugulis/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..3058959c13ed2447f8eacb0cc86c010c1e7aad2f GIT binary patch literal 1513 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 U78W3)o&W#<07*qoM6N<$g4P2Qg#Z8m literal 0 HcmV?d00001 diff --git a/graphics/pokemon/iron_moth/overworld_normal.pal b/graphics/pokemon/iron_moth/overworld_normal.pal new file mode 100644 index 0000000000..23350af658 --- /dev/null +++ b/graphics/pokemon/iron_moth/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +206 117 41 +255 159 69 +77 74 73 +148 85 25 +16 16 16 +71 31 29 +230 65 58 +181 53 49 +49 47 47 +109 109 109 +195 195 195 +160 211 211 +206 243 247 +0 0 0 diff --git a/graphics/pokemon/iron_moth/overworld_shiny.pal b/graphics/pokemon/iron_moth/overworld_shiny.pal new file mode 100644 index 0000000000..5b0f15c428 --- /dev/null +++ b/graphics/pokemon/iron_moth/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +206 117 41 +255 159 69 +77 74 73 +148 85 25 +16 16 16 +91 94 102 +213 213 213 +142 142 142 +49 47 47 +109 109 109 +195 195 195 +142 142 142 +213 213 213 +0 0 0 diff --git a/graphics/pokemon/iron_thorns/overworld.png b/graphics/pokemon/iron_thorns/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..d860a069abed827fe1c566c38be5a4a42bc348d0 GIT binary patch literal 1020 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 literal 0 HcmV?d00001 diff --git a/graphics/pokemon/kingambit/overworld_normal.pal b/graphics/pokemon/kingambit/overworld_normal.pal new file mode 100644 index 0000000000..fc2af0f1cf --- /dev/null +++ b/graphics/pokemon/kingambit/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +120 98 31 +181 149 21 +0 0 0 +227 227 235 +172 164 180 +230 189 65 +47 15 16 +67 25 25 +232 48 43 +127 41 43 +35 29 10 +57 52 51 +88 35 35 +96 94 94 +142 56 58 diff --git a/graphics/pokemon/kingambit/overworld_shiny.pal b/graphics/pokemon/kingambit/overworld_shiny.pal new file mode 100644 index 0000000000..80fa0d029e --- /dev/null +++ b/graphics/pokemon/kingambit/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +120 98 31 +181 149 21 +0 0 0 +227 227 235 +172 164 180 +230 189 65 +18 21 58 +38 45 123 +232 48 43 +49 57 156 +35 29 10 +57 52 51 +95 31 33 +96 94 94 +57 52 51 diff --git a/graphics/pokemon/klawf/overworld.png b/graphics/pokemon/klawf/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..edec75755e41785fe1238cf0607149a40d6e1260 GIT binary patch literal 852 zcmV-a1FQUrP)Px#Fi=cXMRUcZMIsyNcsP0079y?&#?Fes@{6k$YHKH}cn~!(UpC zXHUalS}k~U5dZ)J(n&-?R9J=WR*R0~APlTAb`yx2|Nq;wp%4stboWlGPKu?rS;oMO zJ+OH^?zrQQJMOsSjywKMK#pJIUkzpEa_o}4!oM9t4jtx@C)YE)!oMEiz1zb3LBIu` zlm6C%aFKD0L!w7izFf!f9B1YqTTtf=DXwPh(?7%+y?;(mn#svWp1eo?7-ugXNft}1 zXN$E2<$1tmj#WTXBrGP~vFItz0sX|2Cs~%#69)bmXBTJCRo#1a`Gq-Fg6wy3X9N%# zlMV_la1KH0y5x|j5V&a*zz)7m21kI-1_D)re1IDc(pjlaQ8+R@#iie2S=ZO{5_C7-aaVp)!u zcL0nmf(=eOr4sbN5@7Fv1)n@2rYd{A=Q;r=IB=X9A}vcu4v}v??#xvHv$m|kDFV-t zEyKz&J@a-^$?4m}jYq_#JV|FUaa5M}i1QMrBOKUkg(KHU*A*0kA}|kZ2|6INV6zzZ z(O66^I^vr}g`Qs1;sVkFCDw`Vk;86@vnM;{B3(z&&Ob%q5za$}r2*Us(1f8wr3i&!8#qVsRe*;$cX%UE_b(Qb zjaW~dIUhyf5uQqJDy(ll{HR@$2lf`m_Fdvl&@4!P>yUPkETt^4oglnq4LNv%3fL7m z3zR)HAxvj2)IlbYkn3sdyk+MJQk!C_zA!3gq@-vN1yzo$p=%?zpmmi1 literal 0 HcmV?d00001 diff --git a/graphics/pokemon/klawf/overworld_normal.pal b/graphics/pokemon/klawf/overworld_normal.pal new file mode 100644 index 0000000000..d84569eb1f --- /dev/null +++ b/graphics/pokemon/klawf/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +69 34 27 +233 120 56 +146 71 56 +180 88 53 +56 55 49 +0 0 0 +200 200 238 +232 232 248 +126 119 89 +182 145 123 +88 89 55 +242 215 167 +195 95 90 +142 103 79 +195 95 90 diff --git a/graphics/pokemon/klawf/overworld_shiny.pal b/graphics/pokemon/klawf/overworld_shiny.pal new file mode 100644 index 0000000000..625f90ff0d --- /dev/null +++ b/graphics/pokemon/klawf/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +40 88 128 +88 176 232 +47 84 146 +69 123 195 +148 148 148 +0 0 0 +200 200 238 +232 232 248 +230 231 207 +190 161 138 +235 237 194 +253 229 187 +116 171 200 +141 133 71 +232 128 104 diff --git a/graphics/pokemon/koraidon/overworld.png b/graphics/pokemon/koraidon/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..6b35043046a372cef05fa3ff29272d014f117f45 GIT binary patch literal 2428 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 literal 0 HcmV?d00001 diff --git a/graphics/pokemon/lechonk/overworld_normal.pal b/graphics/pokemon/lechonk/overworld_normal.pal new file mode 100644 index 0000000000..f8968afd93 --- /dev/null +++ b/graphics/pokemon/lechonk/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +54 65 74 +77 88 92 +36 44 49 +70 58 55 +146 119 95 +120 98 78 +144 40 64 +200 96 112 +232 232 248 +232 136 160 +242 215 127 +242 215 127 +175 147 96 +0 0 0 diff --git a/graphics/pokemon/lechonk/overworld_shiny.pal b/graphics/pokemon/lechonk/overworld_shiny.pal new file mode 100644 index 0000000000..6dc2976c31 --- /dev/null +++ b/graphics/pokemon/lechonk/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +246 180 213 +255 213 246 +206 81 118 +140 93 72 +214 158 134 +186 128 106 +125 45 65 +206 81 118 +232 232 248 +249 123 146 +250 205 50 +242 215 127 +209 164 5 +0 0 0 diff --git a/graphics/pokemon/lokix/overworld.png b/graphics/pokemon/lokix/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..c658f75b6bd7ebc2fafbac90cee11af8328297e1 GIT binary patch literal 956 zcmV;t14I0YP)Px#Fi=cXMRUcZ0001`nx#-sP!A6eDJUsCIXqx%F|zPw1K`c2SP-W{>`Wv#~KSM#t3dMw;5M~DJixC#+-5_L_`P- zF+UZ8htA330bKNn!kC`}%s57no&|3?Z6|eigS_;RUGCDq5 zNTz`?hrk{Howk7?hrU!876b2V+W9GP%0uZ_sGwAg{^^~Q!9&{K1#ZSVopB6MYGM_b zR#V`NhYE#wm1-LpbI78;NXaoU zfgx9gob#JN)4_=2CK*tj8!9!hX<*C)qeNI5O5|CgQ!aNpM)yIhDrT+ULaPX3AC^N*;OGevue zFM1j!xeu62fK_1DeO`~6*Ab4tE}V`0mcUbU^UvHcApK*Nkn_YQNJsac=(NO+GQ5w_ z{hj$&`_=F&eQ*t*Mp;qZC>h;U%mdT?4hoHJxpM9CtW%qdE8vW?hLT& z1BCpEP)Px#Fi=cXMRUcZgnfj)yuI4m+Ab(30000*K|fQkTkf67T+;D1}d-R}4qFPQPmrIVa*+d1N{&&iEhLK9>Se;=J+9sW+T(=X5%Ujx)acZ8K^nIOo>_K<_T4 zj+Xy~uYwe!3@?Mp7zyoRk^Y6W|iFgJBGg2P1IC5s->kL0`yhz>wo8QIy&w?|a1=-vrn8 z;_o298DEynC8%I1NO-{9@CLaX;e$iSDZeCliZia|*}Gd6yg6^o@HvNI@m0{5%zXmx zc-tM>8nU&q(Y4g^?%w6PhB2aFB=8GEYR&K|?*(T8_WYOLBb^GO#ZSlk({RSCA!1Sj zNrW4vHN&SIf@vF(WCj>-H_RQM2+jg@2#TfP!a@)Aw0tEnc^e>SmQ~m%_=_ui2*3?L1e9&Q-RBQme8MSF zl(tfO6`K7DVDc`24zVO;8Bt?|8g48AE-I*}GVqS~0T_a*3Zm8cZ47PRkB}t5#bLJn zW?U|Bz~h?3eJYs&PB`gY>x9S_#qVn9I=(I_J$@Nx+3BX=lbG29DD*%2x&Dx%ni3U+jRSmv=|RHB-aakD&Td*|^Bn+Px#Fi=cXMRUcZjXM+n$_M}e0K<3|Ss*EsJ3G#CXet>dSVK_DZ7u)*|3WN100000 z000000ES(Z{r~_107*naR9J=Wm+NlBAPj|LjDd7{|L5H?M3dHFJ6a}9ld#n8$49}( zH`ulf}ImhGr(Lb*g2zw=H^R^53 zBe>7PORaz7(;Hn>U#UarRDjQQN*2-pHzP_O=U3woZrB{7mg&;1-+8~%uX|KzY)ysE zOCaEAQ=N2)tUC2L@B5BVcToG}{l1m9jZwxrq43-!>#@q(oSGo>uGcLZ z95fav9w|0M#GCtA?%3L1_eW&1ecfvUa2wih6}>AFXY+tDf$bId{v(J4dfX4t34;To cE&iE(0_k57aHdUmga7~l07*qoM6N<$g6B^ftpET3 literal 0 HcmV?d00001 diff --git a/graphics/pokemon/maschiff/overworld_normal.pal b/graphics/pokemon/maschiff/overworld_normal.pal new file mode 100644 index 0000000000..27c6224bc5 --- /dev/null +++ b/graphics/pokemon/maschiff/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +141 59 19 +255 202 8 +0 0 0 +195 120 22 +89 32 41 +147 59 59 +206 113 104 +42 25 38 +88 67 80 +203 109 45 +255 255 255 +66 44 61 +0 0 0 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/maschiff/overworld_shiny.pal b/graphics/pokemon/maschiff/overworld_shiny.pal new file mode 100644 index 0000000000..0195e14cbc --- /dev/null +++ b/graphics/pokemon/maschiff/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +42 25 38 +88 67 80 +0 0 0 +66 44 61 +46 40 51 +102 92 114 +171 139 201 +42 25 38 +88 67 80 +203 109 45 +255 255 255 +66 44 61 +0 0 0 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/maushold/four/overworld.png b/graphics/pokemon/maushold/four/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..5154c16a34b0df98b3bfba523f4b41c26c0fe4de GIT binary patch literal 759 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 literal 0 HcmV?d00001 diff --git a/graphics/pokemon/meowscarada/overworld_normal.pal b/graphics/pokemon/meowscarada/overworld_normal.pal new file mode 100644 index 0000000000..591dc9f8c0 --- /dev/null +++ b/graphics/pokemon/meowscarada/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +23 36 24 +41 55 38 +49 70 38 +151 177 150 +233 249 220 +96 126 95 +36 111 42 +40 153 57 +232 232 248 +141 71 85 +216 112 152 +236 138 168 +141 71 85 +227 81 124 diff --git a/graphics/pokemon/meowscarada/overworld_shiny.pal b/graphics/pokemon/meowscarada/overworld_shiny.pal new file mode 100644 index 0000000000..668bfe2930 --- /dev/null +++ b/graphics/pokemon/meowscarada/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +27 38 31 +26 48 45 +51 75 63 +151 177 150 +233 249 220 +96 126 95 +31 86 68 +49 124 93 +232 232 248 +111 78 167 +145 105 201 +145 105 201 +60 31 99 +111 78 167 diff --git a/graphics/pokemon/miraidon/overworld.png b/graphics/pokemon/miraidon/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..2080c760bbb27c27c3bb408bbc0de2e554c4cd3c GIT binary patch literal 1927 zcmV;22YC32P)Px#Fi=cXMRUcZR;k$l004!2yq=iKeqE3!Cp^Z!ZdN~O_UwW&FMUo!mgnm6!M)#w ze7uExywAFQT>t9x0vrMs zI9My_*Au`{1zWit`0Bf+gD6L_!<42k#WHz`21r^w&|W(nv{L;r|v7 zv&gsaBB71jgZB!E%Mx|a0BFHigIOCXS>y2FfkZ!1kZjx@yi-72VoWmV#OBEWLW&|_ zOtwUN@R;=z1#R38yi-7=C9S~Oi*a)$0MkxuB#JBT7C#<5rlKD!Xydlyy#k^vJUdYW z*phMnWJj<8d)oP7vy^}b&qvUdM81?J8@C8SvnLH341$ky{w} z8;}SXgT!J_fEoXb2|yJP*JN%$Aos%&O&jQoqiuz#$+U`K$KzH{vgQQX@ZA4dKzWSG z)_6DwMo-*_8M$BZojYL`K4H*DTLLf<7f^A4 z-Ml9UDCi8tHAo8&YrSTt9S$V`e8;2wyr27|pNac|Z*y0CA|c|(JtyFE8*O7Hm8lJLr{C%COVy~X_r-R{t@2+Z}@il%CxB&Pyws{n~tZ= zttouNccrg7*;GJ1#D)6;<_wTJAh{c3fal{QujYh*v57a#k@cMHtBf!B9tls}tfL5s z72knFP`Hg*OfkD}|QLaDwNJoQL;=H`*h zmzn#7@8W*?@Culu0(TU=$r95U{R!3gh#HvD_)doqtD#5?E6BWxWB!} z_2hoy`?#Mj+5&!!K#pF}yx=?G2lR}6)jxh2 zf3Beye1GVVE&;zrAPWvoVUpdzuK2DD@P6f-0Tw~N*^js)>55xx5YM30!4=w07W zQ%u~2$_(C#FI$VrrH1%K^n&kRjA{pD{Q{(y-UsX2`n>*Ee5-w^gRcU%BbZk{dh)ar zUU^IQy#;-WLG`Z*KuD~3VrH4axRuLh25Jr2@P#|?oc4{~u|L_r$Tc3rZ;bytzSTa& z=J-v(b_BEBiN=ZZs2)D)|1kmVn2O;hCz`Z_tYwI>>t(BzJ!{B@&sN^b+OmKV^pc(? z<8O4}cYJ+gtlhv=zxXcTjR@vBzYisD6n=g2A7YRMP)zwBpCZ`{FQce8W_byf%Z7lb z8ZzOF9e2?niGcDKDiU%kp+#yY;01rWC)&}#@&r}^<00U^2u^-D3U0=iSN|~vfKma% zA?z{@I9DvGyt5)@`JM1wLl%5Btco!-h9na?q##2t^RMx7|5rS~v5#rDkB3fR{Z9)) z1iT%=;YadVVmN;MC5G}c&`(9Kk>>&P>YPTsY%#)7Ln&JD)v(N1_LqXrVoB{390s-+q~vC%UqdBj1>5>Tt^i3vNOQd6W4HeK{(TK!T%;9l{gulV zuM@a75PI(P8m5I{jo@kK7+7&Q)ml#i9y!R8<{8#=t=`c8L3an N002ovPDHLkV1iOht1JKj literal 0 HcmV?d00001 diff --git a/graphics/pokemon/miraidon/overworld_normal.pal b/graphics/pokemon/miraidon/overworld_normal.pal new file mode 100644 index 0000000000..8a07fd2ac4 --- /dev/null +++ b/graphics/pokemon/miraidon/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +86 169 217 +0 0 0 +133 124 188 +158 152 202 +126 93 144 +39 39 60 +198 190 110 +86 63 105 +246 236 130 +49 47 125 +78 67 150 +231 234 241 +193 189 223 +133 124 188 +133 124 188 diff --git a/graphics/pokemon/miraidon/overworld_shiny.pal b/graphics/pokemon/miraidon/overworld_shiny.pal new file mode 100644 index 0000000000..4c43244656 --- /dev/null +++ b/graphics/pokemon/miraidon/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +86 169 217 +0 0 0 +133 128 160 +161 158 183 +126 93 144 +53 54 59 +198 190 110 +86 63 105 +246 236 130 +133 133 133 +165 165 165 +231 234 241 +193 189 223 +246 236 130 +86 169 217 diff --git a/graphics/pokemon/munkidori/overworld.png b/graphics/pokemon/munkidori/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..5213ff14ce996474015291508be4e6f309797d32 GIT binary patch literal 776 zcmV+j1NZ!iP)Px#Fi=cXMRUcZ0000^Nkt3F$hG3KtdY(|Gzg4vz2{_fYi=YQr39NE}z~O z=&o(;r~H(k@?RBt$e$ZLE7bD}D*oJn8}sKJ_Gtwbe{R6Sk_mFo)O)8m!HPqG_)>$M zH|{K10y*bS(uI0dLB*dN5W>q^DCca=3;RCC_=FEOE~YqEQE|jKJ2Q8QBFwq@>sm|u z*!vJ+$@lLJJAc627z<4^kfNL$DCc93p=*a%@ z;27dVY>4{%=QOLhNp$!a8^=jB@#-e8%oxC!nO8)Tf;nzqu02^8GUDRb$X(P^dP%~trk zLS!Ksppn?#EQ zjPs5Xphlug{r9QG zfiQlbM)7rkt!vfJ>&IIs+jYdboNuKr*myF7gg5V{Gy$K0;f;)5_l-zF&TJ+|`@l<3 z8N?wV0bN-SfF@T;+PH3Dgv5R1d}jt$LW7Do-cUr)9q{2D1u&5w=2!Zqg7Kv@GQbdS z>6Z%5H8Ma0XYJn_wxL8b^W@(_P?W$^19Wle@Hd)&s{8_1$Qkfp-%kVp0000W)>9FB}J|dbh?9NWy`!YjZ!)oH$Px$B>BD zx6@8KEnD$Ry z^2WS`A@RCfBd_g8)w|_>e2*BI+(YJW<=LSZ>TvGczV)kCw8w60+|i)p-gR>V(+T~e z^xcXdw_aJ5ec+gGL1V0brsmU_2~5+kZOYqlb;1vc{FS~}-@Rv=bbadCZX59>48K;Y zXh^fJyuYxm?O8*NgV8bT*OGrVKImrfUiiK>f9t*1mh&03cE{@OozGn35Ph51^_JoM zpS7*Yd#?Rsxnbv5QO@j>@a$aMqNTl;i=Kt+exCAJ(D<7=!>4k~=VDb1ml6{kES4T` zy0U)r9f@n}S(vx%JwK!J80Uw|V+?b+g6hu{J)Y`jc}qruH!A%ImjXi?^MOeJzrS1i zCCu25?Xv!{4QT0!s#oXtM}Cug$T(@jJN6w7cm7p9J3n3b(<+yS<&6EG|1bQ<@W4TE U?!J=W5ujlAboFyt=akR{00TJJD*ylh literal 0 HcmV?d00001 diff --git a/graphics/pokemon/nacli/overworld_normal.pal b/graphics/pokemon/nacli/overworld_normal.pal new file mode 100644 index 0000000000..aaf398a7e2 --- /dev/null +++ b/graphics/pokemon/nacli/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +86 77 87 +191 180 186 +153 134 148 +252 252 252 +71 39 39 +142 95 87 +192 147 124 +213 184 170 +227 208 199 +0 0 0 +238 172 49 +0 0 0 +0 0 0 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/nacli/overworld_shiny.pal b/graphics/pokemon/nacli/overworld_shiny.pal new file mode 100644 index 0000000000..e6f359d021 --- /dev/null +++ b/graphics/pokemon/nacli/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +120 67 14 +234 152 70 +197 109 22 +238 173 108 +71 39 39 +142 95 87 +192 147 124 +213 184 170 +227 208 199 +0 0 0 +255 134 53 +0 0 0 +0 0 0 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/naclstack/overworld.png b/graphics/pokemon/naclstack/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..5698f25469bd196eca6601e99b9c5b0a22a56f67 GIT binary patch literal 672 zcmV;R0$=@!P)Px#Fi=cXMRUcZR!vt#GcM%O$itF*mS=O*x1Of=~U%SZinWf(N0Un+2Q;z$MK53xT!X`$@t%Z!;}|QIQLQ zwU}uf`^SR3HD!8F)O%Nanx5Hv=j4l74>%XtAn{P(G3fq@03Hdsz{niCh%4ThU<0Ff zEbz!$f<_QDKd$^Z@B=@DkbuF*$T7wy;fl`zqK7m+gO7TEi$E!W;~^b>$Px_-co(z< z@Npa#F@zX0=oT*l$c9ih3PP~dPR}@ z2WSMXpDdlw3%Cf{9wA>Z2$pauB;Df4J3@r#&*SF_h~)YJji9N3Tw0t8tNSm4wgo7k zZ%mDrcj_jeRt2TSpYj2Z{roB6yMU-K;Dqj<3J7b!+TwS4*<#6eaOx1r7rGYljiC4c zb-466b!W^_BWQV3d#g5DM=$x(<4}%@>nbFY9ykSqGg4MJ`}+dio1pibvbJ*9lqTx~ zR=Ns$UM{#`0#!t0>v){X)0b4(DI3fHZ91goAvPUN-a|^yOrz3D3b(c;U}!7b~<}Kwa>9teXC% z8C7^4ROYy{lL`k5cn*(Ncp7~v`=@szf9=mI+|5UQJAMH&QXLH#Nu+rI0000Px#Fi=cXMRUcZ0000lGCWIIaAR|fz`elT;pG3u2%~}(u&l6SVPs=-i~s-t00000 z000000N@HNuK)l6+et)0R9J=WmhEnXAqa&FTCCmu-|qmm$*e$Uvt>)3v)eo@fhkaEr*fdhy+unIIs_hIWZJxDzNH5u1&|Koir@u6-n!@0 zo14x;9Od>$t0dA${ zT+0oX*H{3^Gn%A6f2{9P9w4xP-d@CN5oiAqU;_Yw%mtPJ5ugIJ^6T5A1IYbVgEC(Y zVVaT%up3nWLSO&{fC;N~xULV#0~7!mk;J2ZM?EK)^Df|Us0WnR{z5=rK$U~6v<(PV z2-se&cSV>GBf!VHl!%O645&Uhs;xHx**WhESdkHU2~86e0FDhR$OcdigE#=Ke5mh$ zi+p>>VE||t^F{0fjtxlUz+dbAX&5vYaF1zUuN8V71CUFA=+~!=?Fo+`<_z~I>G~oS zJv#(kzUg$m^v==`2UdYgSIQ0DN!$L$|K0+RPtpwN0Stp%c|M;8us-6E4i~uTHtF_| rpPx#Fi=cXMRUcZ2L}gHI3hDMGg)A2S4KWCQz(>}mtm(HN{c5fD=AA%OaRmQ0G6=- z+D85T{pQ=TzW@LOWJyFpR9J=Wm+g|PDiB3&QHkKk`@ikk-JsJ-1DX5pR*gxSnJjG9 z213j*{2hPC-|;?({u3X^_GLXzoqqcqC+FNi(`2>m@o}EVVOhqSYLAo4b(h8V>v8XC zaDMV`!l^Xuarn*i^7+6}RDa89a;Yr0vHUt*1f6dOXz^Qc9@_ybTnVn705j*}`R{}4gv%f^G z@f1*T=@^2F_|C!OGGKx$U>-%1d3JBc9lf)U{6R=}(4DScDRixRvWDE`FZc3RI>8LAnw_``v# zdI~`T6e~#c_XH$AUZlkJ*CTBLob(w$^H+de)YEyMDo!y&!p#8kIrD4?|7h-FnWL+M z%ZQ`sdVX-MDIq=Q2nizzrzrX8aXoGjxc=w-@G?j@4QhtMrF`l*Z%3JD_*(&PP9`VG zg4L_Em4;mZky zm-%vnWeMQR%RkSMD1)as6-jE`FaPk`rEJ0F&ENl&VeN)iu20;$K8;E$QN1IE06qe9 z-5)>fW=>sNo1qyRXo{)i_(DD0mEYprwLD6Y*$6stuV z=<1)vLa0wdkZiP80)*Ps{Gw5Ve{pGQu+#!9Ia+-RTlK$e)ZqO~I}I9(>wkOv16@KZ UkiFO-f&c&j07*qoM6N<$g6X=~=>Px# literal 0 HcmV?d00001 diff --git a/graphics/pokemon/ogerpon/cornerstone/overworld_normal.pal b/graphics/pokemon/ogerpon/cornerstone/overworld_normal.pal new file mode 100644 index 0000000000..a07f75d10c --- /dev/null +++ b/graphics/pokemon/ogerpon/cornerstone/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +7 7 7 +81 56 34 +51 51 51 +89 96 106 +87 70 62 +48 83 40 +148 152 151 +97 167 27 +74 139 39 +44 43 41 +75 76 76 +0 211 249 +0 150 176 +255 218 70 +253 253 253 diff --git a/graphics/pokemon/ogerpon/cornerstone/overworld_shiny.pal b/graphics/pokemon/ogerpon/cornerstone/overworld_shiny.pal new file mode 100644 index 0000000000..a07f75d10c --- /dev/null +++ b/graphics/pokemon/ogerpon/cornerstone/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +7 7 7 +81 56 34 +51 51 51 +89 96 106 +87 70 62 +48 83 40 +148 152 151 +97 167 27 +74 139 39 +44 43 41 +75 76 76 +0 211 249 +0 150 176 +255 218 70 +253 253 253 diff --git a/graphics/pokemon/ogerpon/hearthflame/overworld.png b/graphics/pokemon/ogerpon/hearthflame/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..782b969b22ba471a38b332353318e00523f1f662 GIT binary patch literal 1022 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 N002ovPDHLkV1n@w!w&!e literal 0 HcmV?d00001 diff --git a/graphics/pokemon/ogerpon/wellspring/overworld_normal.pal b/graphics/pokemon/ogerpon/wellspring/overworld_normal.pal new file mode 100644 index 0000000000..ac44883772 --- /dev/null +++ b/graphics/pokemon/ogerpon/wellspring/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +48 83 40 +74 139 39 +97 167 27 +0 0 0 +81 56 34 +2 104 187 +44 43 41 +87 70 62 +75 76 76 +59 213 249 +12 65 129 +156 206 220 +206 221 255 +253 253 253 +255 218 70 diff --git a/graphics/pokemon/ogerpon/wellspring/overworld_shiny.pal b/graphics/pokemon/ogerpon/wellspring/overworld_shiny.pal new file mode 100644 index 0000000000..ac44883772 --- /dev/null +++ b/graphics/pokemon/ogerpon/wellspring/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +48 83 40 +74 139 39 +97 167 27 +0 0 0 +81 56 34 +2 104 187 +44 43 41 +87 70 62 +75 76 76 +59 213 249 +12 65 129 +156 206 220 +206 221 255 +253 253 253 +255 218 70 diff --git a/graphics/pokemon/oinkologne/female/overworld.png b/graphics/pokemon/oinkologne/female/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..baaa8874c5bdbf1ca88492c4e8384f45ad5eb600 GIT binary patch literal 597 zcmV-b0;>IqP)Px#Fi=cXMRUcZ0000c9v`)BU4&UuKQJ;{MM@A55PdB{=!l@mU~uT@_^*>-^4EU= z000000Cj;*KmY&%(@8`@R9J=WmfLc~AP7JM5pSFQ|KBZO)6R4S>^`+KlBRh$s0WR1 zj$_A;9XodH*s){Bj=vB9{3rLD98ozx-s4JrL6^gM0-h+3w>X}_O#aOcBhG#)nZ>Pe z?wtisrvR5rX&PV@;B(;FNseK}#gD`eX>J&COdtcKbi#C$fOGel9l?lm2IZ`RIn%TN zpCctmQ~(I3f5F;4wM&PzlkL+dO!J!l+WYp?Lo4U)!5Q#h|I^U*)DU~4TkoSs$@KOpBqrT1bL zXmgq2>v>(L?2;_qOWryk{a?td+xdQ6(*h#SdqfPqJ!JCAFZs|*dAy>WSJwF$;dyly z?AOznL7xx7BKh;)N~DH`eh5ZfM@Us7O~((p3XZS~usM9{5seJqalhh2Fv%`) z3JAF8A95IaDoFHt4n%y6ph@Pp5Rtrt76-b+Jf&8+=uJ~1KBkDMce8-rwS7>4^D!6~ z0QYUTxA36{9e7`S0_VSSw}IPybl|QqcYt6TDnPFQd-hjS7MiPx#Fi=cXMRUcZ0000S79m15PBADtKtNDnSY;3p5PdB{=!l@mU~sRKVDi_0=;-(W z000000A!|U82|tQ%t=H+R9J=WmeF#AAPhxKAfUMY|KDvAw9|G;!tPT$!<||mPQVjH z*KJ!_Sy@?GSy@?G`3nKyKRMpyh|2l&9=B(n zMHFlM(Llg^@Plt}q^$f4`yOlnx^mte&83VD}ga}T>*1$*oUYz~(mQLo@9?j_y@bCN#o1_JK+ha9?| z3KBiP$Rggaphf1l5RvRbiv!&;-$FB7^oAu7?@L6~n%O{WIzDK?`525FfcvnC~*}g1e}tI;cn55>=GqY cm-#pO1So+Lk4CZ6?*IS*07*qoM6N<$f;a98c>n+a literal 0 HcmV?d00001 diff --git a/graphics/pokemon/oinkologne/overworld_normal.pal b/graphics/pokemon/oinkologne/overworld_normal.pal new file mode 100644 index 0000000000..e8ef3923f7 --- /dev/null +++ b/graphics/pokemon/oinkologne/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +28 22 33 +66 54 78 +49 40 58 +64 64 80 +96 88 101 +16 16 16 +125 45 65 +232 136 160 +200 96 112 +175 147 96 +242 215 127 +232 232 248 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/oinkologne/overworld_shiny.pal b/graphics/pokemon/oinkologne/overworld_shiny.pal new file mode 100644 index 0000000000..805883eed3 --- /dev/null +++ b/graphics/pokemon/oinkologne/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +190 137 169 +255 244 247 +220 192 209 +240 132 186 +251 187 238 +16 16 16 +125 45 65 +232 136 160 +200 96 112 +175 147 96 +242 215 127 +232 232 248 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/okidogi/overworld.png b/graphics/pokemon/okidogi/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..6bbcea7ab38c384789b17bd0753cf6bf7406101e GIT binary patch literal 1236 zcmV;_1S|WAP)Px#Fi=cXMRUcZS|Lf2Id>2e5z1$xPDw{CEiC{50C}f6RCP7@*jODo6~MsI=;-(m z5)l9Z05B+E?EnA-Qb|NXR9J=GSAnvlHVh01Ec|@U|9@_GB?z``LNaY{=IR^5Gb`j> zS(3TO<9|D*>2v%W+ut>&`Te2|{+026HALz^rfHcz$1#~YlgH=yzcOSsw}LxEwk-41 z?EEE;o6UeFRXk8lHNiW)*EGtwJDdcURaNmT9x`9_9w$BD5J|~QQY+vF-`$_jh6#6v zW9X_WCH#7V?A!hUe$FbBTEPwO{8TIRuW=)oR*s~UIEVPZ#eIhPY0@gV!I>bs?y?5i zdygAGI9@kgtHNgLOy1#~(W~IvX^cwFs40SKy9j+U9MH0y|*XCG#H#jViWt!%n zlFQGWl-c?fZYHERTZD0wN9W=aS6R{mhH3Ir>5{j{H8@9$Uo~%Kn{j2GIQ;@Q6IFrh zjC9Soi)wIjiO?LM++Dt$cWIq;=qYj_8xZ=I<+RFMz(Wtfh(f2VPwP?OGxC` z<9kX}-bDrO=LP$_aI+-x>+tRRB22)aG6#H7$J6om3N=kxU>d4f3{k5 zYr2*|&qWLn#hq%eh(6?RyTth4+bm|x)56d|8|0{0BLX< zG^JLu35VOj@5J%?2v^GoFEGy#^`xmbV1Ty*Ff7eIRg7&#&;sUatk916m{N zaB+fsbX-R8_1~v;h}S7j0fm&9JNDZW+yypx2?9K)_WB+O5QkNEyz-7&DTPPmem$BT z_ZoRrIIP)| z_fHs@W3@_6fuIX)@%(K0tp<}~>KN|0$y3Xb2E!-9W}VL>EFD1?_`(JA_{9$a*<)h` zi+HyLDX>(y*Q-;`w|QYOv(aOtUBe zN&3Qbfqi6{H-;we?TH)MedQdZ?60C-rY#c0d^;~^! zs4f_K9IyEwZ3X#0V0b>Iz@Y*o*eL1v?N3eMzyY>qu(y>0eYXKG+NBJ`b37djY-!)Q y7z<>fU2JY;aS6VE_Y=#1=%U=de{b;zj=uqH7CfK= literal 0 HcmV?d00001 diff --git a/graphics/pokemon/okidogi/overworld_normal.pal b/graphics/pokemon/okidogi/overworld_normal.pal new file mode 100644 index 0000000000..46d3fc547d --- /dev/null +++ b/graphics/pokemon/okidogi/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +90 33 73 +146 57 119 +16 18 17 +202 103 162 +78 73 71 +45 45 45 +0 0 0 +121 167 58 +84 117 53 +248 216 88 +29 57 21 +192 192 208 +232 232 248 +16 18 17 +0 0 0 diff --git a/graphics/pokemon/okidogi/overworld_shiny.pal b/graphics/pokemon/okidogi/overworld_shiny.pal new file mode 100644 index 0000000000..947e5aacdb --- /dev/null +++ b/graphics/pokemon/okidogi/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +90 33 73 +146 57 119 +125 59 24 +202 103 162 +254 161 104 +180 102 61 +0 0 0 +121 167 58 +84 117 53 +248 216 88 +29 57 21 +192 192 208 +232 232 248 +16 18 17 +0 0 0 diff --git a/graphics/pokemon/orthworm/overworld.png b/graphics/pokemon/orthworm/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..5bef2cc020017e06768c789c70551c50c777477b GIT binary patch literal 1149 zcmV-@1cLjCP)Px#Fi=cXMRUcZQdnF7007a^+LD-@_nMUVWLmvRN|w>$meJyt(c(!dC;ZO3y^@T9 zH#YzP0H!6PdH?_e`$DOo zWm!mne*UYrNc)9O(*Az=-;EY~tF)oTnNGAxyD>2aRApUnN6!G4ZMC*xhpgK&1D(qF z!75`wqQ_%*?grrlK=H2&3!h&{q!<4qf-xZ5caMGF-A;J;95DG;PE5f5o!cKa z5zuXE3&6U9HO7D>(>euU0-4}4dikgIhq_wPgbDxAjXv z_4jNd{Jc6`bQuMd4;=ydt%~sG`z#m&CIGRQ0louF08NA;fODz~0sv?t+yRUMdE(cr zIOO1QzvUai)8K7{cNLURK6VDzCc@ncV?bV*Udf>g!O2X^`UT*J5w_vwOJ{Ifs|bTa zGXy*%=Uh0Bzz&y-ehc_%gk=L?FK1tRfW_x3taaFT0T==b02|YG9Few5j?4f*jc^d} z+{=+rgdTwHr)3zS1GoVsb#5(UfIGksBTO+=fFX7hENnk5!w6lORlpGVnhD_wNU_+D zv@9%db&?C^%8T8`Mls@8ll?<~b%2 zrsEw9f#Y$2Lag@HAS3kh!pAT1lM5F>5(M?Hk43Kl<>^K#{6_`Yzw4-pFt|zM@qTND zNGN(;{1=0O;PkHq-SqhtBN5(+i->loymmey8SoSu5MgB}2Q&QJBh zSqgNcu-7U{71Xj4GeOxP1FXf`phcJsf*p8C9PA|V=dTS0PW_bWd>9}A9fxd#_v)Vy z` z@-`Mnt)2lp@q+~>dT4Z%Lif6y!6=oOcR_z-s}}(45bP>(JwPtT5&!8t(dPj7XGE%? zJ%pWY1(U=&OU@1|x1#!Udphb|Mo@~>Is%v+V$XM_oskHtl-QHgEB?}5K~0cLhb&)r zfGdv{S9u5FDpcvH3c1Q4zR1cMK^Ix^moGe$0R%cEIbJhJ>Z&z(3b~A)Iso7;I1QpI zDFn7dh))OWU*!Bx3XOa?+6>AaOuk;Hvnr!SChMroaN=Zx0RqTlPESw(I@wUM$2;l0 zY-4lQN{1|WX+Ehk(=w`$IW-6$bJ}6o69nZ%FL9TR>|X=9Lzcl5XO%(gPwP0BHZuq} zAa&S>vMpa~U2h_FNb+EgyZ@b?0IEZ612uOTsf{5S0nMr%h=nB9+a P00000NkvXXu0mjfDlY%P literal 0 HcmV?d00001 diff --git a/graphics/pokemon/orthworm/overworld_normal.pal b/graphics/pokemon/orthworm/overworld_normal.pal new file mode 100644 index 0000000000..3146fa0d74 --- /dev/null +++ b/graphics/pokemon/orthworm/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +82 88 92 +0 0 0 +209 209 218 +146 152 156 +247 154 148 +247 100 90 +189 73 74 +150 209 226 +150 209 226 +150 209 226 +73 41 39 +252 206 186 +189 146 140 +129 55 55 +0 0 0 diff --git a/graphics/pokemon/orthworm/overworld_shiny.pal b/graphics/pokemon/orthworm/overworld_shiny.pal new file mode 100644 index 0000000000..16d023df87 --- /dev/null +++ b/graphics/pokemon/orthworm/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +82 88 92 +0 0 0 +209 209 218 +146 152 156 +183 255 253 +124 219 233 +108 168 179 +52 83 104 +150 209 226 +184 223 235 +30 48 53 +231 217 207 +192 175 160 +79 125 134 +0 0 0 diff --git a/graphics/pokemon/palafin/hero/overworld.png b/graphics/pokemon/palafin/hero/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..8d6d7e5c750679d591a754afd3be369aaf0ef3e8 GIT binary patch literal 1104 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 V5Oh%HPz?Y8002ovPDHLkV1gY$5rzN& literal 0 HcmV?d00001 diff --git a/graphics/pokemon/pawmi/overworld_normal.pal b/graphics/pokemon/pawmi/overworld_normal.pal new file mode 100644 index 0000000000..ba86a5077b --- /dev/null +++ b/graphics/pokemon/pawmi/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +173 97 39 +104 57 23 +0 0 0 +236 158 63 +232 138 36 +14 148 130 +0 108 92 +250 233 189 +185 167 132 +232 232 248 +101 74 74 +239 181 59 +245 213 86 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/pawmi/overworld_shiny.pal b/graphics/pokemon/pawmi/overworld_shiny.pal new file mode 100644 index 0000000000..0d0ab2a95e --- /dev/null +++ b/graphics/pokemon/pawmi/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +220 58 50 +138 40 50 +0 0 0 +255 119 147 +237 82 82 +14 148 130 +0 108 92 +244 226 188 +228 167 137 +232 232 248 +101 74 74 +239 181 59 +245 213 86 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/pawmo/overworld.png b/graphics/pokemon/pawmo/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..f2eb40bd17dc21585a04d34114051d42ba13b599 GIT binary patch literal 635 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 FV1jdCFu?!- literal 0 HcmV?d00001 diff --git a/graphics/pokemon/quaquaval/overworld_normal.pal b/graphics/pokemon/quaquaval/overworld_normal.pal new file mode 100644 index 0000000000..0dcbae55dc --- /dev/null +++ b/graphics/pokemon/quaquaval/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +27 67 84 +85 219 230 +0 0 0 +51 63 147 +57 75 238 +65 155 194 +40 42 77 +213 228 240 +135 59 26 +227 70 15 +162 71 32 +247 249 250 +219 175 0 +219 175 0 +129 130 130 diff --git a/graphics/pokemon/quaquaval/overworld_shiny.pal b/graphics/pokemon/quaquaval/overworld_shiny.pal new file mode 100644 index 0000000000..127e88a727 --- /dev/null +++ b/graphics/pokemon/quaquaval/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +27 67 84 +85 219 230 +0 0 0 +125 128 176 +163 168 240 +65 155 194 +71 74 124 +213 228 240 +91 65 30 +225 131 80 +199 107 46 +247 249 250 +199 107 46 +237 169 54 +129 130 130 diff --git a/graphics/pokemon/quaxly/overworld.png b/graphics/pokemon/quaxly/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..179e0eb60b84b38781f9030f8c6c132d90c86e60 GIT binary patch literal 548 zcmV+<0^9wGP)Px#Fi=cXMRUcZ0000?zRXO%%x%loD~p-2#o+k(_#th0)#UJjf`b3i9QOPC09&Hl zuK<8p7#@IQ&;S4dqDe$SR9J=WmfMcQAPht?w*aBZ|NrfdN%sxgRVuaG71KtQdImEF z(#E-^rKP2%rKP2%e_Z4%^n8Rf791uAjxn<5E|07?IdGa9OdhWK9C2p& z9QV_J7H30_dCRdBX#$I*I2i#oUdppUp#hycN&)%eR=h9M0yYm3yNi7D047J_(O$a6 z*}zLwe2@a#99NAX`G%6_ m(3`hS?~Z?|#7mR>A^iZ$`xIWCl&xd{0000Px#Fi=cXMRUcZ0000Td(sqInmdu+AC8_%%H1We!qw#P`1ttSuK@P@{r}M%fLIuT zf`R}50LX}6vj6}BAW1|)R9J=WnCotXFbsupZlnbA{*OD`gl^h=K~z;W30M8~`IzIR zPEe=mjyvwSFzpS66$SbTm@c5jeHPB9Bmy^S=tV>Y*o#4aZ zH4f`qLnVXCJ>hW9+17R4jH}M$kv|tXEK9Aus;>(kpQhgHwr;ie%N#0xE_1ZjtGd4~ zCz#sS61FKn|C@`a2ywb8E&bq{iJnqJhcVh*Ou+eQz0g(BaZ)6MKe&*-~QfM9UtwC-8cHEy!r2D2xX-z4@X06PAYeVeE*kp5 zCH=DldhItlpekwtPC1?wpc))pss6g2JE+vA{sb@*_Wtp%Qf?X|R6xJzSih+H#nvA+ z3~Xi$>-t5(#AsQ>@~ literal 0 HcmV?d00001 diff --git a/graphics/pokemon/quaxwell/overworld_normal.pal b/graphics/pokemon/quaxwell/overworld_normal.pal new file mode 100644 index 0000000000..cd91098e63 --- /dev/null +++ b/graphics/pokemon/quaxwell/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +29 123 210 +20 90 154 +59 145 222 +31 142 158 +74 202 221 +37 175 194 +213 228 240 +248 248 248 +219 175 0 +246 251 253 +255 209 28 +128 88 24 +129 130 130 +0 0 0 diff --git a/graphics/pokemon/quaxwell/overworld_shiny.pal b/graphics/pokemon/quaxwell/overworld_shiny.pal new file mode 100644 index 0000000000..f799dbde39 --- /dev/null +++ b/graphics/pokemon/quaxwell/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +111 198 179 +22 111 118 +121 255 232 +36 46 132 +82 125 226 +55 71 213 +213 228 240 +248 248 248 +219 175 0 +246 251 253 +255 209 28 +128 88 24 +129 130 130 +0 0 0 diff --git a/graphics/pokemon/rabsca/overworld.png b/graphics/pokemon/rabsca/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..a9d99e1b49c2cea843be8375bc744bb1cf529065 GIT binary patch literal 869 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 literal 0 HcmV?d00001 diff --git a/graphics/pokemon/revavroom/overworld_normal.pal b/graphics/pokemon/revavroom/overworld_normal.pal new file mode 100644 index 0000000000..0e83397e4e --- /dev/null +++ b/graphics/pokemon/revavroom/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +28 28 28 +79 40 79 +0 0 0 +66 61 67 +121 66 127 +195 193 195 +62 48 60 +131 121 134 +217 215 217 +85 73 90 +255 205 6 +0 0 0 +0 0 0 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/revavroom/overworld_shiny.pal b/graphics/pokemon/revavroom/overworld_shiny.pal new file mode 100644 index 0000000000..0b40638c18 --- /dev/null +++ b/graphics/pokemon/revavroom/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +28 28 28 +51 45 85 +0 0 0 +89 80 49 +77 61 150 +247 234 143 +62 48 60 +180 161 96 +250 241 184 +85 73 90 +237 142 178 +0 0 0 +0 0 0 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/roaring_moon/overworld.png b/graphics/pokemon/roaring_moon/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..8ce7752709d7e34cae38a37b2a5d29b7d4b6a40f GIT binary patch literal 1109 zcmV-b1giUqP)Px#Fi=cXMRUcZ8f|$u$-nuCy zBP1zIT0V33asU7W(@8`@R9J=WmeF#oAP__ac7R3J{QuwH?g0_kRZOMsL#i@KtzwVE zX+U(E{^BqG;x9A|qdWdG0Ni7p)BByXpDO%kgFge{&F1kamwCbx->m=M&$sj+0vPvT zNNtL?oayf#)$cMHrxrfz#tA$1wdn~X_W__*ehE{M>Y&RQ8eH=x;Kdk?5yS`j6CD8J zr18@M+B<+NgNELeFFXZ*p%R)kV`y+IG#TP?e5^ZIIMWFr&Piv0%^kp%!GiY?`+PnF z{+>@;99VPDVB@f+9?I=j?&$`zq7EjJ5CV)Te~cZ#g+UAm?&q9@Y9Q!*=}_$qHhph! zI49axNeG_D0T;MZcx-9Gi;`X zlxYceIeE*GSVx+%ZTwWnZqnEkMq|%z^OspzmD;OEWvLb z-*ttI3|iET;0uy;m)QVyg$(oxAe#!DH5AO5Zf7 zo#@!*2AI;<2fZZJSISnONccblAU@oP`?dzCH-jH^6vM1$Je?rLc{=Ky!Gm7H$7JS$ zX=Z(P5Bki6DtCHj6MX#0z%Ogae)@F%G=ql`Ry|h(`9yC9kNS!+yP2<;dh{m=Yuct~ z+R~QPx#Fi=cXMRUcZ0000`P*6BHI3pt?i?pQZKtQmtxU|*1)%MxQVn~SSaBz6w z%})RT0MUH14FCWG+(|@1R9J=GSb>tQ5ZF>^5LgGN z$s-$rnPwFy0m_#NAf^P5jjso!ME9CN6R0B0x8z?_O#A_qKwoh`3M~A#NLPv7D6ZpC z<{I<3>4O!^d;XC~ye!~P;R`AJb2 zLv$8s`g3w1C(7tA`dC20v9cTq?i&jLu=sZzWt(3KaEj2CGQ3_d$cb+*%P0(T6PT~_ zAO5t*xyqD{*!@MH2&}jW93$jul%X#ECO#fU92hT^k_Ol3 z@d+n`5y!1u1l87MpMoI}w11E)6SV&lmq}=M)LPG0GaM97w978{tu^9PN%rD~&Tx|R+ma~8e>I|CWwKOvO z-ntK-Yn93Jtl;k8 zT<9{b6P0@8CqAPFEpS%^BtERNe%e|Htp2si82)SA2|0JJ+Q(>fV95wX%Ki)|4N{|u@*~(mr=pJ^M6uqd_j^xTUAJgUE!sL`h8Dc z%5W;M^)CHwfs))rkSLn3#ALv*q=5Cop-mt!ed?X9_Wpq2Xa4kjhV%nv9Zdedz?1@p z!FdAuH9i?o&jBw8e&WxvY8ad$uNqXuH0TqQTW!!<3xc2d*FjjACGP~gHwN=>c5Cb3 k^)KDWSEU&|G58m+U({bI2~y6s$p8QV07*qoM6N<$f@j+jYXATM literal 0 HcmV?d00001 diff --git a/graphics/pokemon/sandy_shocks/overworld_normal.pal b/graphics/pokemon/sandy_shocks/overworld_normal.pal new file mode 100644 index 0000000000..3d38ac9e7e --- /dev/null +++ b/graphics/pokemon/sandy_shocks/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +80 80 80 +56 56 56 +35 35 35 +139 180 164 +232 64 64 +176 176 184 +180 213 189 +213 246 222 +105 92 126 +254 234 98 +72 136 232 +112 112 120 +224 205 79 +0 0 0 diff --git a/graphics/pokemon/sandy_shocks/overworld_shiny.pal b/graphics/pokemon/sandy_shocks/overworld_shiny.pal new file mode 100644 index 0000000000..151c472b17 --- /dev/null +++ b/graphics/pokemon/sandy_shocks/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +80 80 80 +56 56 56 +35 35 35 +128 120 104 +112 112 120 +176 176 184 +168 160 136 +208 200 168 +80 80 80 +254 234 98 +112 112 120 +112 112 120 +224 205 79 +0 0 0 diff --git a/graphics/pokemon/scovillain/overworld.png b/graphics/pokemon/scovillain/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..a0dcf404339449e710fe9b0caef6d2b0ff5c94d1 GIT binary patch literal 1037 zcmV+o1oHcdP)Px#Fi=cXMRUcZWF8#%YcirVBqcB;LV!zA#6$o90BNgxLV!!~`{UhM04Yu-LV!y= zP(sbk%^}YMLjV8+i%CR5R9J=WSBr9-Fbu?4Ae&eI|8KjJ4fuggn`GMQOmy5`hLz-9 ztxb|)_=%tRiJ$nEFcSZo#23Ph<7jPL!e7;A%GF4tTO$1B-5~joa7i?zmkHKJ*r zaCIaIKNZkW@TRYbYGBn!I|W8ovhp571k*@T-8zA+53KIFhXU;MAMGj3C&Ef(h$}T%eL*O_W~>%n3>=v9(NbT#`*ZO-!?P ztOUlIlm9%Q3;(XZf?(_-jp&rGYvRj139JRMV_b=VaHB0i77zU9IGlpui@ubg@S8Ov zLzL5~LCUBUSWMVhnU?o3!A1cH_MYSisvQb@V8IrqNMAZqNcpdeRVTyJv-V4d%xkI7=K>Of0|$ok$)Va(I3r|vs0CgV#)wsr z7@&LndT8kxp#;wy!U~K_44r8X2bFXFFsRU%!3jYc$n&%ykCw<^5*C~jvskI4N?@EY zgOme~4+@XTYlZNbO>j;fy0T~yhH5D0aZ?NiW%{U4a1r!Cz;Gp8i2$=2TvqCQEig=2 zhb#jic`n=HPYHecMcmpkb10efD)fm5aq$Mkpj@9T1Y86iUY?f~y%xR`;tj8OCGeau zt3Z6ovCGK~vU@Jv6b@Z;R{F>+2*!l<)K|f5grH&XoLrc($jl@n;7`DrB%P83o$!Tw z9-bn>ONXvGL!-2F55I54prEgocTQLiw;V9-RCHGp170~aoD=r?dghIN}Vo z>$`Z2X!9rV&2NzA@Yx{nih~?r^)YzUox1PGAL4ZE2ln>&fWY?^&0A{QMmM#7SBA8>1N9xphj?>T; z2!dF;R}Z`?@Xq__pJ8exaAWfp4Y~qfxB+k1CyldByN00000NkvXX Hu0mjf#L(ac literal 0 HcmV?d00001 diff --git a/graphics/pokemon/scovillain/overworld_normal.pal b/graphics/pokemon/scovillain/overworld_normal.pal new file mode 100644 index 0000000000..355e603188 --- /dev/null +++ b/graphics/pokemon/scovillain/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +100 30 28 +247 107 50 +162 52 36 +37 48 36 +66 128 75 +81 196 68 +0 0 0 +105 171 123 +66 128 75 +240 251 227 +221 88 0 +41 78 37 +66 128 75 +60 80 66 +205 205 205 diff --git a/graphics/pokemon/scovillain/overworld_shiny.pal b/graphics/pokemon/scovillain/overworld_shiny.pal new file mode 100644 index 0000000000..c9eea1f6f1 --- /dev/null +++ b/graphics/pokemon/scovillain/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +100 30 28 +239 81 49 +162 52 36 +40 61 56 +63 129 71 +81 196 68 +0 0 0 +240 220 104 +223 204 96 +240 251 227 +221 88 0 +75 24 17 +87 150 213 +72 101 176 +205 205 205 diff --git a/graphics/pokemon/scream_tail/overworld.png b/graphics/pokemon/scream_tail/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..d99bfcce5f252a31c88d48f50fe0fba439642de8 GIT binary patch literal 670 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 literal 0 HcmV?d00001 diff --git a/graphics/pokemon/smoliv/overworld_normal.pal b/graphics/pokemon/smoliv/overworld_normal.pal new file mode 100644 index 0000000000..d197197d00 --- /dev/null +++ b/graphics/pokemon/smoliv/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +231 225 140 +175 162 91 +96 144 66 +221 215 110 +120 182 67 +155 197 86 +190 208 96 +232 232 248 +151 159 84 +216 96 112 +0 0 0 +0 0 0 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/smoliv/overworld_shiny.pal b/graphics/pokemon/smoliv/overworld_shiny.pal new file mode 100644 index 0000000000..a840789865 --- /dev/null +++ b/graphics/pokemon/smoliv/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +97 54 67 +30 17 27 +62 87 34 +56 33 50 +92 120 65 +129 174 66 +220 214 96 +232 232 248 +190 183 41 +216 96 112 +0 0 0 +0 0 0 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/spidops/overworld.png b/graphics/pokemon/spidops/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..5e19fe8a7e0c1ad1c6f65af15d0651c6b3ce0f44 GIT binary patch literal 747 zcmVPx#Fi=cXMRUcZFF71)lqg3%C6;_c0000)TO2JiH61Q5a#=X$|JU6lptvnx)$Q!;jQL?JCy6%* z!D+hfw%cyI?f1;E{UN`e9@y$WALdunPiR5S;-7E>30D;M_(axu2f!Cg=lE`CIDw|O z_TkIn9X^q_-g^MP*pkZt-|ZBa%pmYlDWJ{y0b%|UfnRed3+VDq-#P9$Gx!JNaseIA z9>LEuz&!g(hAs~(k$=u`a-10+z8c=(X=77xvPoQW$lJZgiFSo*bQ~SvdI!ci7jdc4 zw77AgBV<4}DHzSnH)f2JaXLa6^1M}p_wBe9>l(Rx7r;GeLp?v1J zgIAY3V`On=9)daO>+z#Np5u!C7T2XcrFSe#R2TajoL9pW|FJ%LJi8&1t>|xZio1;D zbB|<+J~ufT$$TpDEAiVrA%ZKBG0xR3>$>nxFC8TmGXG4xOo7Fvs;|d+bPx#Fi=cXMRUcZg`is6?Z0w}O#lD@v)X(iK@>uPDKTLmv)X)8p)}ZVnCR&EjYm}g z000000Qln}KL7v%Hc3Q5R9J=WmvL_bAq>T@&_coO`+wcNaxO-Xmg)9~ORh1-_#^rr zw57LgXPj}y8E2ev##;rwgx)5Ik}DJF?JZDBk%0idM`TD$`8CS?_~AMJCy^y3@eM?@ zRNaNK*75=$Yf9{G#gQageEsIYr=?ac%v`iO24ZeY6dnVS3yzZ|5uqpr2;p#Stmc+l z*6*!;j_>+P@#vBpMv5e1)#(m`n?aA`>ro>qt79PMwtGZX#1pvUMdfCuQAd%WO}huM;J-|PoH*Tr56yPPw@tgM z-81amG%Nng6hL`WyYfaT)hD^>yL@z0C_~|+%tt=g*O4MUNP&Ro#%)M!4WEu1Y`hIl zQ?8vqO`vs&*+6s8j|T0CMS8Eji#RC|adT*+QnPSQa4?fL)t93jr8a?WHU%faS7KW+nBJPzrCEMX@FVm=DhE?R$FVcnOwJi&cIw;p#^#AgOK znB!XQ%^4*YeB<02UV(wZvp?%3lV@c*f9|+($Dr8eR(IMRjH`H@TFzFct^q4?Eb$jW zAKC7@(-62dBFCT=hnF6EfJTorXprpQGh+dGWH4P@kgEYJBK(s_jcCb_o>ZbmdjoUZ e*v=yS59148AQXOh@xnR)0000 literal 0 HcmV?d00001 diff --git a/graphics/pokemon/sprigatito/overworld_normal.pal b/graphics/pokemon/sprigatito/overworld_normal.pal new file mode 100644 index 0000000000..20e41599d8 --- /dev/null +++ b/graphics/pokemon/sprigatito/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +133 160 90 +218 237 191 +114 136 77 +0 0 0 +179 218 124 +33 65 20 +66 129 41 +49 97 31 +179 218 124 +82 161 52 +216 112 152 +232 232 248 +141 71 85 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/sprigatito/overworld_shiny.pal b/graphics/pokemon/sprigatito/overworld_shiny.pal new file mode 100644 index 0000000000..cd0636fb1f --- /dev/null +++ b/graphics/pokemon/sprigatito/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +116 137 67 +223 252 135 +81 103 48 +0 0 0 +166 199 99 +39 73 40 +82 143 92 +54 101 55 +179 218 124 +86 205 116 +192 137 237 +232 232 248 +134 81 206 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/squawkabilly/blue_plumage/overworld.png b/graphics/pokemon/squawkabilly/blue_plumage/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..ad152c8b1b4c52ce0eed7ae89305661470816ed4 GIT binary patch literal 893 zcmV-@1A_dCP)Px#Fi=cXMRUcZ0000pG&N05Parc&G+CI-gHHVX{49am{lZ8dA0SOmPqVnaX+|di z00000091rW`Tzg|`$R8njxwqQ|Fpz~Ss zcjQS?e@+N$bWrz1OK>#=NUHxaPZR>UhTB8{wm{g zWr$wxgWm^e>h)=np6Ff16~o;@3n~2&!1@Tbd6?8^`a{N5Q%aoynM86bWnjSko*&=} z@El;Bf4glM@%%%NHLH%{_XgyCpXPZk0|%NMKwp8U0Gf4kxcXbK^b1^v4car_@IC+i z{*~*f1zHaWD}No8Fl>O~N-@32z`$7#9kh%azsSQbkOkwuScU>H&6$@^71oqJ!LS3G zEAN(408t3IUg-_&dcePDocLP0CWuVa0!-+|JJ5>W=&3@OUwsRP6$CDB2j4mb3wi@5 zJ>WlO9E>T|zJl_LClnQ_p0_?gg0MjXH}b#LI5anu-3&pEgYP#{NIO1I06 zKvMp~GG7^g1<${n^j^|TxVHVskM*5@)m;zH*mK594I97~WUj5jDaCkIStc}cTG%RI z003;d1HdU}4r~J&e}9T8Tfgfiw6JBI?GNft0$W@8to}V`vq@)T28hlYI4JfUdTLxoCAC7c^Tqn@$IPLRef;%Q&Ob zEuhJwf9UaXZW-qR#MJ`*vW5`l3*Yo=z2kZ0yypu3Lr*0*q@Y`cp?COpN}(y6&VS&P z^1G~>0ZUrM&mP$(inNQpejA`yYU&I`Z))~cgXZ#(1F-BmKx=T!5s*nOLB@9jcH9gN zuvEdPAY}pNqzg;vZ{zuifO(;9szbLe7iNTADq+UkI{X=bTvnZAiVlc%Qy)4Be9&xGXffwIME|I=}jXCMjR~xmf1F~=E?IvB8q4e(mw-StB6w@Br T_?;{b00000NkvXXu0mjfd=s65 literal 0 HcmV?d00001 diff --git a/graphics/pokemon/squawkabilly/blue_plumage/overworld_normal.pal b/graphics/pokemon/squawkabilly/blue_plumage/overworld_normal.pal new file mode 100644 index 0000000000..8abe9ab02c --- /dev/null +++ b/graphics/pokemon/squawkabilly/blue_plumage/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +51 52 53 +77 78 79 +32 51 74 +52 89 152 +203 131 78 +252 252 252 +44 129 218 +253 194 72 +30 31 32 +77 78 79 +179 184 189 +105 70 39 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/squawkabilly/blue_plumage/overworld_shiny.pal b/graphics/pokemon/squawkabilly/blue_plumage/overworld_shiny.pal new file mode 100644 index 0000000000..f4018770cd --- /dev/null +++ b/graphics/pokemon/squawkabilly/blue_plumage/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +255 142 146 +255 185 187 +32 51 74 +52 89 152 +206 114 100 +252 252 252 +44 129 218 +225 156 147 +30 31 32 +77 78 79 +179 184 189 +170 69 64 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/squawkabilly/overworld.png b/graphics/pokemon/squawkabilly/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..f38929d02075e230fcab9a5d16e76e43dcdc84df GIT binary patch literal 893 zcmV-@1A_dCP)Px#Fi=cXMRUcZ0000pG&N05Pb^9xSe-A+gHHVX{AAiJ{lZ8dA0SOmPqVnaX+|di z0000004cH+aR2}U`$R8njxwqQ|Fpz~Ss zcjQS?e@+N$bWrz1OK>#=NUHxaPZR>UhTB8{wm{g zWr$wxgWm^e>h)=np6Ff16~o;@3n~2&!1@Tbd6?8^`a{N5Q%aoynM86bWnjSko*&=} z@El;Bf4glM@%%%NHLH%{_XgyCpXPZk0|%NMKwp8U0Gf4kxcXbK^b1^v4car_@IC+i z{*~*f1zHaWD}No8Fl>O~N-@32z`$7#9kh%azsSQbkOkwuScU>H&6$@^71oqJ!LS3G zEAN(408t3IUg-_&dcePDocLP0CWuVa0!-+|JJ5>W=&3@OUwsRP6$CDB2j4mb3wi@5 zJ>WlO9E>T|zJl_LClnQ_p0_?gg0MjXH}b#LI5anu-3&pEgYP#{NIO1I06 zKvMp~GG7^g1<${n^j^|TxVHVskM*5@)m;zH*mK594I97~WUj5jDaCkIStc}cTG%RI z003;d1HdU}4r~J&e}9T8Tfgfiw6JBI?GNft0$W@8to}V`vq@)T28hlYI4JfUdTLxoCAC7c^Tqn@$IPLRef;%Q&Ob zEuhJwf9UaXZW-qR#MJ`*vW5`l3*Yo=z2kZ0yypu3Lr*0*q@Y`cp?COpN}(y6&VS&P z^1G~>0ZUrM&mP$(inNQpejA`yYU&I`Z))~cgXZ#(1F-BmKx=T!5s*nOLB@9jcH9gN zuvEdPAY}pNqzg;vZ{zuifO(;9szbLe7iNTADq+UkI{X=bTvnZAiVlc%Qy)4Be9&xGXffwIME|I=}jXCMjR~xmf1F~=E?IvB8q4e(mw-StB6w@Br T_?;{b00000NkvXXu0mjf(AAu! literal 0 HcmV?d00001 diff --git a/graphics/pokemon/squawkabilly/overworld_normal.pal b/graphics/pokemon/squawkabilly/overworld_normal.pal new file mode 100644 index 0000000000..2e9a2a7fb8 --- /dev/null +++ b/graphics/pokemon/squawkabilly/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +51 52 53 +77 78 79 +44 74 32 +88 157 47 +203 131 78 +252 252 252 +100 218 44 +253 194 72 +30 31 32 +77 78 79 +179 184 189 +105 70 39 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/squawkabilly/overworld_shiny.pal b/graphics/pokemon/squawkabilly/overworld_shiny.pal new file mode 100644 index 0000000000..305f25614c --- /dev/null +++ b/graphics/pokemon/squawkabilly/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +255 142 146 +255 185 187 +44 74 32 +88 157 47 +206 114 100 +252 252 252 +100 218 44 +225 156 147 +30 31 32 +77 78 79 +179 184 189 +170 69 64 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/squawkabilly/white_plumage/overworld.png b/graphics/pokemon/squawkabilly/white_plumage/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..c416e4bfd13999d68f2bdc92a352b3f194b163f1 GIT binary patch literal 893 zcmV-@1A_dCP)Px#Fi=cXMRUcZ0000pG&N05Pg`DIiII`ZgHHVX{K3k~{lZ8dA0SOmPqVnaX+|di z000000P=y9-T(js`$R8njxwqQ|Fpz~Ss zcjQS?e@+N$bWrz1OK>#=NUHxaPZR>UhTB8{wm{g zWr$wxgWm^e>h)=np6Ff16~o;@3n~2&!1@Tbd6?8^`a{N5Q%aoynM86bWnjSko*&=} z@El;Bf4glM@%%%NHLH%{_XgyCpXPZk0|%NMKwp8U0Gf4kxcXbK^b1^v4car_@IC+i z{*~*f1zHaWD}No8Fl>O~N-@32z`$7#9kh%azsSQbkOkwuScU>H&6$@^71oqJ!LS3G zEAN(408t3IUg-_&dcePDocLP0CWuVa0!-+|JJ5>W=&3@OUwsRP6$CDB2j4mb3wi@5 zJ>WlO9E>T|zJl_LClnQ_p0_?gg0MjXH}b#LI5anu-3&pEgYP#{NIO1I06 zKvMp~GG7^g1<${n^j^|TxVHVskM*5@)m;zH*mK594I97~WUj5jDaCkIStc}cTG%RI z003;d1HdU}4r~J&e}9T8Tfgfiw6JBI?GNft0$W@8to}V`vq@)T28hlYI4JfUdTLxoCAC7c^Tqn@$IPLRef;%Q&Ob zEuhJwf9UaXZW-qR#MJ`*vW5`l3*Yo=z2kZ0yypu3Lr*0*q@Y`cp?COpN}(y6&VS&P z^1G~>0ZUrM&mP$(inNQpejA`yYU&I`Z))~cgXZ#(1F-BmKx=T!5s*nOLB@9jcH9gN zuvEdPAY}pNqzg;vZ{zuifO(;9szbLe7iNTADq+UkI{X=bTvnZAiVlc%Qy)4Be9&xGXffwIME|I=}jXCMjR~xmf1F~=E?IvB8q4e(mw-StB6w@Br T_?;{b00000NkvXXu0mjfyEdR4 literal 0 HcmV?d00001 diff --git a/graphics/pokemon/squawkabilly/white_plumage/overworld_normal.pal b/graphics/pokemon/squawkabilly/white_plumage/overworld_normal.pal new file mode 100644 index 0000000000..ee7d256273 --- /dev/null +++ b/graphics/pokemon/squawkabilly/white_plumage/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +51 52 53 +77 78 79 +91 94 94 +137 145 145 +203 131 78 +252 252 252 +193 202 202 +253 194 72 +30 31 32 +77 78 79 +179 184 189 +105 70 39 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/squawkabilly/white_plumage/overworld_shiny.pal b/graphics/pokemon/squawkabilly/white_plumage/overworld_shiny.pal new file mode 100644 index 0000000000..8642d6248d --- /dev/null +++ b/graphics/pokemon/squawkabilly/white_plumage/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +255 142 146 +255 185 187 +91 94 94 +137 145 145 +206 114 100 +252 252 252 +193 202 202 +225 156 147 +30 31 32 +77 78 79 +179 184 189 +170 69 64 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/squawkabilly/yellow_plumage/overworld.png b/graphics/pokemon/squawkabilly/yellow_plumage/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..7b744f51339fbd4db266ba43b4412d9b8f0ede53 GIT binary patch literal 893 zcmV-@1A_dCP)Px#Fi=cXMRUcZ0000pG&N05PftS|sgxtjgHHVX{NL;v{lZ8dA0SOmPqVnaX+|di z0000002SgC*#H0n`$R8njxwqQ|Fpz~Ss zcjQS?e@+N$bWrz1OK>#=NUHxaPZR>UhTB8{wm{g zWr$wxgWm^e>h)=np6Ff16~o;@3n~2&!1@Tbd6?8^`a{N5Q%aoynM86bWnjSko*&=} z@El;Bf4glM@%%%NHLH%{_XgyCpXPZk0|%NMKwp8U0Gf4kxcXbK^b1^v4car_@IC+i z{*~*f1zHaWD}No8Fl>O~N-@32z`$7#9kh%azsSQbkOkwuScU>H&6$@^71oqJ!LS3G zEAN(408t3IUg-_&dcePDocLP0CWuVa0!-+|JJ5>W=&3@OUwsRP6$CDB2j4mb3wi@5 zJ>WlO9E>T|zJl_LClnQ_p0_?gg0MjXH}b#LI5anu-3&pEgYP#{NIO1I06 zKvMp~GG7^g1<${n^j^|TxVHVskM*5@)m;zH*mK594I97~WUj5jDaCkIStc}cTG%RI z003;d1HdU}4r~J&e}9T8Tfgfiw6JBI?GNft0$W@8to}V`vq@)T28hlYI4JfUdTLxoCAC7c^Tqn@$IPLRef;%Q&Ob zEuhJwf9UaXZW-qR#MJ`*vW5`l3*Yo=z2kZ0yypu3Lr*0*q@Y`cp?COpN}(y6&VS&P z^1G~>0ZUrM&mP$(inNQpejA`yYU&I`Z))~cgXZ#(1F-BmKx=T!5s*nOLB@9jcH9gN zuvEdPAY}pNqzg;vZ{zuifO(;9szbLe7iNTADq+UkI{X=bTvnZAiVlc%Qy)4Be9&xGXffwIME|I=}jXCMjR~xmf1F~=E?IvB8q4e(mw-StB6w@Br T_?;{b00000NkvXXu0mjf_qLt( literal 0 HcmV?d00001 diff --git a/graphics/pokemon/squawkabilly/yellow_plumage/overworld_normal.pal b/graphics/pokemon/squawkabilly/yellow_plumage/overworld_normal.pal new file mode 100644 index 0000000000..3e57b393fb --- /dev/null +++ b/graphics/pokemon/squawkabilly/yellow_plumage/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +51 52 53 +77 78 79 +79 67 27 +169 148 35 +203 131 78 +252 252 252 +223 236 26 +253 194 72 +30 31 32 +77 78 79 +179 184 189 +105 70 39 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/squawkabilly/yellow_plumage/overworld_shiny.pal b/graphics/pokemon/squawkabilly/yellow_plumage/overworld_shiny.pal new file mode 100644 index 0000000000..2d432a3f8e --- /dev/null +++ b/graphics/pokemon/squawkabilly/yellow_plumage/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +255 142 146 +255 185 187 +79 67 27 +169 148 35 +206 114 100 +252 252 252 +223 236 26 +225 156 147 +30 31 32 +77 78 79 +179 184 189 +170 69 64 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/tadbulb/overworld.png b/graphics/pokemon/tadbulb/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..6937e10e7f4593fa4aecf12eefd34b6562da405a GIT binary patch literal 400 zcmeAS@N?(olHy`uVBq!ia0vp^2Y^_CgBeH`yR~lzQjEnx?oJHr&dIz4ats1|LR^cF zE&(z-OJw)V68iJ!&;R=xzAg@R#kuM6QESpX{?|ljxT>luD+1L(z*z&kr9gA|JY5_^ zB3j>0xjX5w0*Bj2_N~Xh*WWv8vN@dFV#i!F*>g|cDb%P*F&r{@<_vSt*}< z(b%UEW;g#;W_SNR`L#Fx?s+1;ue{39$?oWRPL|vMKikTD=9T~cHN^1PTH6B|$BzKA&xhv;IAiZ_+KcZP#8iANd!~|8Lp_*&x3M&wjNs q2K`^{^ox7NPxI^gJP{`g)aw{tPZDeoT4D?ea|TaWKbLh*2~7Z0%c;u% literal 0 HcmV?d00001 diff --git a/graphics/pokemon/tadbulb/overworld_normal.pal b/graphics/pokemon/tadbulb/overworld_normal.pal new file mode 100644 index 0000000000..251142b687 --- /dev/null +++ b/graphics/pokemon/tadbulb/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +137 116 29 +188 154 18 +252 252 252 +255 223 40 +77 68 64 +126 115 109 +103 95 90 +172 102 72 +255 124 91 +104 69 37 +37 35 33 +0 0 0 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/tadbulb/overworld_shiny.pal b/graphics/pokemon/tadbulb/overworld_shiny.pal new file mode 100644 index 0000000000..3364ba16f4 --- /dev/null +++ b/graphics/pokemon/tadbulb/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +137 116 29 +188 154 18 +252 252 252 +255 223 40 +77 68 64 +126 115 109 +103 95 90 +171 75 73 +255 127 109 +125 26 15 +37 35 33 +0 0 0 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/tandemaus/overworld.png b/graphics/pokemon/tandemaus/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..0f546d45d1760c930e739162db472ab011bb4a3c GIT binary patch literal 648 zcmV;30(bq1P)Px#Fi=cXMRUcZ0000vIz-sm*!lVSR##>D`T4la-glk9h>MpnFfafB0000000000 z0000001L-2`~Uy~21!IgR9J=WmhEoEAP9yJsA+rd|AL2Ks8uN2$ z{`RuKEB=Aiw#@73S$Ni$w8bu2Pa2KaCwUz`1BcRoX zcu1uYCXK@5gOIK#lmwk;5c;)?`-{xi4-U(cMs}xQl(@fz6ooC@y zQ`a*7+@&fnyXvH&VZZv;DjZyV!+{g@o{6W)=J*radlp`-P8#WtS>`ch7!rg@fWm>Q z2~-v5Ve%}zDRi2CnInh9$+K`MH_HO|ZQJ(Y04nd4U!O^%!n&=F2{(5$D4D^>S`~0Er_UBc% z^r;H5I?@3IP9b3s04-g8(j-AF=4l4P5OaP-r*}$FNR@f7QRY;;C7%j1S7;D0M>rio i#d41f3q)3OBL|va3CN60000Px#Fi=cXMRUcZad&{NqN?QOEh*003N4ETWMp{r&yq*f$_TUctY?BR&&8 zZ5C6b5c1D1w*UYFYDq*vR9J=Wm+h9LAPj~DF#*)h{om~-fqslYP~82o=QK`x=Ja`! zyg{XQn!fRkZ+zn$e>KcaZtwBC?I$xEwMCCxW7Hlxw^Uxw*7+m`o#wF5ozr@#+&bN0 zk8>>ZvMe{anHM+Asr0Ni@9=2?SZIaXnmz}0fDT`rn-^%?>u~^Q9C^IKDaJWD$-vRh~49%Xb)GBgFtJr>7H;>&r+R*(yJu zSWff2z*l)P=v)@CzhcB5mra7VSc9@a#RJO;o*VF9eVrpcCZrin)nAYEHtoExUH+aK;22_z$Z!_fahK`wY4TvvhroYm!5{G%p3Kp4o#VQOEh3%XbQJzOJR98B zHLmN{9H7IEO$P0Cj#~)ZhUoKA4A9|JA0q&U5JNx!zdsKAvHK4m@#sME$)Tla=D+wc zA7k{ar;A*?Yc64Cm0s`sSB1{^ND zO@;63A2B9IPUV~*vT2r9)orG|Zj)+d)`qRVnzc0wLWMBgzp7mKJp8Du?E#6(7A1wg ziSH)-wp7S0yeD6wm9~ay(zMI%b&MYN(}frkVg=Y&FipDJ&Kb0yVb9y0hvJ!Qns%gn zM6m8L>tt5>XT0F`VawQO8NQ+qdK+G`nfIS>~x3m z&+=`Idp{Xg{Csog3vY&mzMw<;`6cWc+;f;6rrfqY`i4QOf%OZ+nt99LUVY6e^GyC8 z=beU2w}t+!HMfXdu{Ic8ny(QS z;<|f#?uA1wdunJ4cO|M_-*Rs7k-oVT04#J5HKc~vC+q%`F}=hvkA_p&}anto6J Z#ag4paVEd`fGa3?Jzf1=);T3K0RY`Fx03(> literal 0 HcmV?d00001 diff --git a/graphics/pokemon/tatsugiri/droopy/overworld_normal.pal b/graphics/pokemon/tatsugiri/droopy/overworld_normal.pal new file mode 100644 index 0000000000..33de9fb9c7 --- /dev/null +++ b/graphics/pokemon/tatsugiri/droopy/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +98 100 113 +252 252 252 +109 35 55 +194 65 101 +237 110 150 +232 232 248 +173 175 184 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/tatsugiri/droopy/overworld_shiny.pal b/graphics/pokemon/tatsugiri/droopy/overworld_shiny.pal new file mode 100644 index 0000000000..b031af3764 --- /dev/null +++ b/graphics/pokemon/tatsugiri/droopy/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +98 100 113 +252 252 252 +98 100 113 +173 175 184 +252 252 252 +232 232 248 +173 175 184 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/tatsugiri/overworld.png b/graphics/pokemon/tatsugiri/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..4b22241884c8d70ee82fb8a7a552f4ad32816371 GIT binary patch literal 503 zcmeAS@N?(olHy`uVBq!ia0vp^2Y^_CgBeH`yR~lzQjEnx?oJHr&dIz4ats1|LR^cF zE&(#j)aCzY>TeD(K3tjl;>C~ut6F-z%#%_I*RJ33=g%LY0ywx(Vs;g1PN}DhV@O2n z+feUKhYdKmZ(J$6|M&fGhU+gE)mWWeWqi$N(?nLG9cK%3kiZ`vh8n&?yYRyB|GW!A z%o(pWMZ8L7FaN6kN0C{DQKGRiv=UEQ_cT(+bkL)TQ)1_ zD`Y6&g=XagkBbg`>0)7=?pQZdHek-y zsOaLq*$vnJFjOA6Byq9rPs8bia-LPjn)mO1b7!9<%yRcl!~2GB@rldcYbTh0$#1@E z#$i}^B&(Cm=`lJ4lzxp0m)fCpfH$k!C>FVdQ&MBb@07~HCdH?_b literal 0 HcmV?d00001 diff --git a/graphics/pokemon/tatsugiri/overworld_normal.pal b/graphics/pokemon/tatsugiri/overworld_normal.pal new file mode 100644 index 0000000000..fb0bb31bca --- /dev/null +++ b/graphics/pokemon/tatsugiri/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +118 39 31 +255 105 47 +179 80 51 +195 121 101 +232 232 248 +255 170 132 +140 74 55 +98 100 113 +173 175 184 +252 252 252 +0 0 0 +0 0 0 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/tatsugiri/overworld_shiny.pal b/graphics/pokemon/tatsugiri/overworld_shiny.pal new file mode 100644 index 0000000000..334f722c6b --- /dev/null +++ b/graphics/pokemon/tatsugiri/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +75 48 41 +175 103 80 +131 79 61 +205 90 56 +232 232 248 +220 122 84 +134 56 34 +98 100 113 +173 175 184 +252 252 252 +0 0 0 +0 0 0 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/tatsugiri/stretchy/overworld.png b/graphics/pokemon/tatsugiri/stretchy/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..24451d817f2535d34b8e0f110b2f01e2c454e959 GIT binary patch literal 447 zcmeAS@N?(olHy`uVBq!ia0vp^2Y^_CgBeH`yR~lzQjEnx?oJHr&dIz4ats1|LR^cF zE&(#bo%sKs);%{{<^Orz7cYJ!r4+7RzvIuJKR_uou)HcK8EB5Jr;B4qMC;p-*#5%? z9Na3=W&i*4%P(8I%d5@j?&X&sz6G2#yzyl5R;Psl8X{b+VCtWs%ew%1$FJ6ZSM9hy zU2dm{q;mg;gi;>g@Fk4=&3n4D-v6j(xOe0Y^UZ%t7*k7LPkOnzLA<%;U0eHKmk+M1 zXD~YFB#2(9n4DfC^x>?+>*9R2hZ8D9>@9DrKKyod zyIVn^C-c#evSy7VUy~QVf5G3}!~87moLGSzZ^=HMVCLrEIR*|{0Y_*1)MwAwm&+)9 z`Ee(AcXh+`*_+)CiaA)+^B8A52z7A(RrccX^?7oAo690<+R^HPx#Fi=cXMRUcZ0000E4h|X`8b?P*JUl$Wz|fG8kS{JTTwGk}==eH#ng9R*00000 z00000027LkqW}N{XGugsR9J=WnBkVAAPj{~2#C}7f8WgwXa$0{yXSQKW0>i5>KFAU zB!RjtzvFj&deHwCa5Q{>74O(Not zs(O7OeIi?)J9U5q3=Xr;i+f>|^oeW&DRd%{`Nc!6f^YPIE%RBTxxhmmr~@V)4#2$@ zdpSpM@P8kg_@N{T`lwT>YM{zd0ra#!V4?yRJKe1G*vouSLwDZsU}5JVeZ)K%uKD^?E())pO27(f8nrTT*0rN613zlYm--ffpxF0HtAT^k4bM$+)oN}dK*U%0TWdW&os-gl8JZu&A}%(%0<;OIXL zvd3$LOO=~Iye|3EL(Q&$S>3ix^o4&z*F`S*QsQsQ1*?T4P>&gqGKoV5=@x7adzWzZ z4}3XUlr9lg+BCu&t-7LlWjU#6sa)SW2S^fT7qhtGpGYyDH#8oX#zQ2<3VjI**Wh%K zYp(T)4rBT)%LkrMTw2aakeWI(RUy~qrfz6_PHi1(Yf~enhPkh<%i9c(8CGv3p`R)N6rLXaVw9Al~zLC?`$?9uE4~*Rz&ymIaq5CSUtt>Tkv$ X`WhS$+lpO=00000NkvXXu0mjfAJoVq literal 0 HcmV?d00001 diff --git a/graphics/pokemon/tauros/paldean_aqua_breed/overworld_normal.pal b/graphics/pokemon/tauros/paldean_aqua_breed/overworld_normal.pal new file mode 100644 index 0000000000..a025f63c81 --- /dev/null +++ b/graphics/pokemon/tauros/paldean_aqua_breed/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +14 14 14 +26 26 26 +71 71 71 +60 60 60 +192 192 208 +144 144 144 +47 46 47 +92 92 92 +232 232 248 +58 120 154 +0 0 0 +0 0 0 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/tauros/paldean_aqua_breed/overworld_shiny.pal b/graphics/pokemon/tauros/paldean_aqua_breed/overworld_shiny.pal new file mode 100644 index 0000000000..627a88f0bc --- /dev/null +++ b/graphics/pokemon/tauros/paldean_aqua_breed/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +14 14 14 +26 26 26 +36 36 36 +24 24 24 +192 192 208 +144 144 144 +47 46 47 +53 51 53 +232 232 248 +58 120 154 +0 0 0 +0 0 0 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/tauros/paldean_blaze_breed/overworld.png b/graphics/pokemon/tauros/paldean_blaze_breed/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..aad59d003181585bbb169c1e84fffabc0f6b063f GIT binary patch literal 919 zcmV;I18Dq-P)Px#Fi=cXMRUcZ0000E4h|X`8b?P*JUl$Wz|fG8khK5+FD@^N003NETy zDM=Soz@n*eK@t-`tVS!5i|tN|tmRf#d_IX6Zb_1s<5a#EJirFauble`nBvJd z=&{mfcwIt%J4tJc#=R+YNXXZ7tNYc*Pxod~0ll~&$8Y$4NYfeK{9jNZg^nv{*WrIi zih?RCP7DOKA!TPR=kv6~&6{Q0wulSg@*z!Ucug=6jHq&mFa>}-QDG3y0#rf{8dfmW zrl7C2BYqZ;!y+3zyvY)>Az+B_1rXV%K=rJk{gXW`T4kV`w}=OS_s4&GuW!^Nn=3El|8 zIZ>+st3-D6EKqY~YBKlMTfjE-@&so^cV&X8VG&aVN{vdH;quKtTI1db*RZwHDr+eu zcvxWJ7<&44#};z0DRPfikxlWGVjcDPkuKr%3^Q|Kihv*7-37qJ8P858W6UJSLbJ_H z@dN`yT*(pO;6nf2k(Vg$njtk*Qyf7EeF~wzSt^;m+)AMdp8mHhxP+MD6?BFW;9%10 zhGG|&{-_Xwwbp}u&dl&6J3BD~Fv4qjqG0rUKMq*}A%b^{&0>oGCP}kHdKRuzxbsxA-1Td_* zLu_?DaGSvAZ!RA`-T?PE0S!9?HM>B=lZuTt0_}71O6X4M`|&t%fDWIppSkJHv+WJR te@%GsWp%b}=70xo96#c1e-(Mk{sDiL8kuaKj9dT!002ovPDHLkV1gR3n-~B9 literal 0 HcmV?d00001 diff --git a/graphics/pokemon/tauros/paldean_blaze_breed/overworld_normal.pal b/graphics/pokemon/tauros/paldean_blaze_breed/overworld_normal.pal new file mode 100644 index 0000000000..8b4a90c570 --- /dev/null +++ b/graphics/pokemon/tauros/paldean_blaze_breed/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +14 14 14 +26 26 26 +71 71 71 +60 60 60 +192 192 208 +144 144 144 +181 0 0 +47 46 47 +138 0 0 +92 92 92 +232 232 248 +0 0 0 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/tauros/paldean_blaze_breed/overworld_shiny.pal b/graphics/pokemon/tauros/paldean_blaze_breed/overworld_shiny.pal new file mode 100644 index 0000000000..478334cb90 --- /dev/null +++ b/graphics/pokemon/tauros/paldean_blaze_breed/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +14 14 14 +26 26 26 +36 36 36 +24 24 24 +192 192 208 +144 144 144 +181 0 0 +47 46 47 +138 0 0 +53 51 53 +232 232 248 +0 0 0 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/tauros/paldean_combat_breed/overworld.png b/graphics/pokemon/tauros/paldean_combat_breed/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..40206ce43967d886472922d48e9f67ed3555f55d GIT binary patch literal 928 zcmV;R17G}!P)Px#Fi=cXMRUcZ4h{|g002ivM;aO$JUl$Wz|fG8kS{JTTwGk}==cBt0000000000 z000000Ms3#8UO$T9!W$&R9J=WnA@7`AP9v6cu3~`A9%Acwuz#)S34K=n@l_N6SF`- z+im-e-}sH|Aev(4ay@pC2u&2S2y=L_10=gcvxXDTs!vnxLhe13gUSnZc?t0$d(-*6e%WR5 zkg|whC!^V!J{i zu|=5mUDqcTTob$s6!x+li6JuHt z^y5j6!G+7sfRZ3Hu`op;mEESEXMEm1LH91TLW-!XPL(dWZ4jdUDcWmiKn=eoNH|Jm zRe@r=&8tdX9@_((E~@-liu?)pMYiTxRh*>o62IXH3=%V+0yW%X{+@l(=h7b7u*OJo zwRAGz1FolpDCgxn;B!WN|1>QF=2iDFs2;n9Ts^#R1ZeYCD@oi&zvS^czTg}rX;8E= zXqPz!e#F~e&U>)M(stzp_yZpKRL9N&Ot@7?M2cugV{9F`aCZ4CM7TfLHQ0$494EC{ zetpT2Eu@FNfMs$7R?d~Xhbiq3D$Nd2qqESIZ+6yX6FG38@_vB`kuiO2Mcy^BJ0F|| zBh&>NoyOUi&f{iC;in&i`3?B<6IuS)S=MU;Cy&H#i>LyuFop+lW4sMNZj>9R0eG8v zE}W_9e_Wxm`qOVsKKsIFWi|`IXZOu#c=R`e-;aOkI~lCDhG}mA0000Px#Fi=cXMRUcZ#c1e}QM+Pd(vq6zI&*x3$Hx~IFfB80KuD?p005fgy76;}E0xaf z?)DcJFavvC#Q*>TnMp)JR9J=WmeF$KFbGAxaS<|dtpESpy(n?x#DLsnCfl6}edvrY zK?elb!|<_>ee7-a=k%`$V(apqPUH9%k|(XtH-3Hn>J0jP<2cfLSe~;!AEjTNK$nl< zz%QL}dVLWDA$okACz^7YK@5m1el>w8M3+w{HF+*NjE*gVs0d+*9^XX|JUW0>=m39M zgfK*pk0duei!&%;bVh$3*#L17q9N_^>3pb1W;03*$UIF%NBHAg67jD;=7R(2lw_Te zJxK@fTAN^cHW+~_Q}P=m;``<#d&YZ!=*}7Xfejp#xbYW1g9e!6HIEB6lj{INJ}>h` z`TK0IL{W)>HzR>LA|wz-GJbDmum`*+Z2E-QtL_~WmsplF@;fhnhSUf>m08fCMR-?& z9pD3@WW68!_^P|d#3j}QrXT?T7CmGSc#)G7CSHo9M~6qi9id>jL};Viofwvwq_#<` z_L^h`TtKLRRtl{0#0xUmU%><5j!Tr z64=WRfF>a^8f$^2fz3WAnOlixv&1M*YK0<4vn~ZVDKw z-Gc+Dk^K(>%^;9_fN-b@4k=YO?TZ7E&>BZoll0BV3*HA1as2v$Da zfAaPqMC6AeIUj5KTLp|9h+J9uSHS9ZnW%2BL4;o`>>RPx#Fi=cXMRUcZQ-Fq(_2bde+bJxg92+}MzVhmJlr%Zf*il%M_2YneaKJDq_|P!_ z|NkqM&IS-`ng9R;x=BPqR9J=WnAvutFbswfAaF?1y#L#d7F*tJ+RoLS@ks;Z6ZqF+ zInA>CAOF$-9>3tfAM3hK_=v*#_4T#(70!5Od&{aC>)3-ah3kvQ)th_9GuxYfCelpe zKxCk88@O2EHE>|eGh23`r=(SfCQLQfw~9f;wE?1Y7Z2wU8?(-MHW@iU9<1#&5L=<} zFX}QMD*XwsQ-HX!LK%ohC2_{f$v`J+CksF=AiG8Ec{E*6)m@Gbx6=f|LD$Q7xG4h- zZN~xYVo=baU%Ny@VT-5wkmE|P@K=<{j0b(P$YEK{18DIE_4-1W=r~aDL>~p0G#!rz z9k1s>@+i!Bn+JWi$lEC}UV9K6hz4y3G9D2JRTa`f^huc4&=`h15$G3rF9pWiDag7+ zS>p{J5x%&@wMP8wDYfDq81tAX7X~gZ2XbDfKstkU3F;Wd8t!uv$R*+M{Z<2fKYf`8 z2ZlVzlN_nRMUO8_sLdmGcz_w4Tce9~IO_w6D+{D1K}DhhK@`q-65h=__;_%q${px% z!$0pL5@688XmvVG6*zNX#CZV4=8$C~Pk-=L>Oh}^#aGrC$B2qmyTq1sks)VY99ieL z2t5T>dW*}hd%k3nZQJDd24Cec=D`7O4x*4L>-%7uf(b|6+im~w=hi1DT-;NA$9bNI zoI$F8%xMCy$x~7cQlzr#VwunQ5+0WfSkrxA#1UYZ!jdZE8acSwtwd&gk5>pjkZ0WIxDuFjz!8Ui-%nO}9KOwnQWH4j@(AP%u|~=(hl;OR9p@Qua9L!fJ}Hyv zz<`s$&vx>2oqXRz*|wv=8E1j|IQj&4GTbp-uHJz$4>2wUF6roVKoZC$CS8@Zybu3`EP4#>zAB+0 zJoiv8IZU8UPJ+wP1_yVzPXa3hYVSyYp!%%Q&$tOp5A_;=!p{uyw;SEC`5olh0QY#P zBQe8xn#@1rCRtY&l=|c6W|mrrLSAH27qLCx<%=xkbfE#R_$?kZ+o6?!%z@MZ?XgX9 zQ!X~B-5Rt*H~uLfb1&JHmJR^KUlZyQW3X< zfrGhcyqM|-+*Vva1V&m9!O@*J_+K0YAAcI10sjLdEi^usdXG#10000Px#Fi=cXMRUcZ92^+{002m6V>VDrM=>f{f_sE$RicD(RYp8jMm&KM5`ITQ;IIfh zF)M^Y$_x25Ty&eZJ$$Dfdn zWErwM4FAVp8$^H1nM+IOYMUpf1)n|s)P~;2F_gy+~m-OMQjNs_lE89OOk}0ijySI4|u`gGtN%; z7aB!^%2ARN)8o-kVZ{wd)8~`jGe#uo-I61V2s?&cXrrE7+ew5h! ztH9_#+r}n`KnvsKm}Ci5xg|Fm8uQfqJn_$+_!X`eqZVlz^^C;H15Q?yP?%DK^my=Z z=^;y-t-F37cz{ZGOnv@BVwG-GCt|f5tQU+)cW#Z8!KEpoYh5UER${x3VmmNLhrNOnOF5I4Qs*qJ* zvNKnMlNSsI?VH8wgGXH{fh*5%AEFq0$a@IXt5mrsyQJX-nL%Lj3|x3oK=9xL-!i-< zym0@iPlc-;m3N9FzrW2`TWYf&-(HnN{N}G$Q2<SuX&7Sw0000Px#Fi=cXMRUcZEgB~7y|e${;Zz|x|DDItE^Gf*p#1#&U1OelYNTu_YoeUSWKWw) zHgEs{07{eU>i_@&#Ysd#R9J=Wm%)z0FbqWN;y94f{Qu{!lTy^G6PqQ6l~$P}&)73g z8^JUU4Gj$q4Gj$q{TC7S@!k%-^J%`>{T;3qx7qGs^6vRG&*prOmjZK14)2~n5eGIq zcsw}$J?<1ZoYdc}4qG)I*8;K+z~P+>q{u-H29CJKyr#=1y9?cP-^REL`dmTL9E5A1lTD&*^L?T^W3*w{VM-=G5=D!P&66k*y z%b>^giqivHmPH?Qcvm@`-uo%}t_Dv$J)f5XmWN2)GTfibC#E23Z&{>q*B&^d0J}qh z22XrVAi%POAXRAo>TnIH7yO2afx(FnT&@L7uk~m_Mg|X@*Y)}cCE5)_f2+f@niAon zQUeUuk2ekiobv;N=lmI1Nc0l&rwOvf)0(;LFr}mm0s(Sf)nes>PN?K(-WPB+$a{R| z(g|A3lvpA>{)(BSPQm`4nxLL?{h@H}kycGue@rw^uxyyO4MT%vDccEf&Mk|S1TF8_ zqcMJe=~~D43TTx~@BG*x+xhnf`2BnLpw{=ny?nyp+Cv81|2v(3Xg(SNPx#Fi=cXMRUcZHXu2CT3-MF0OHh>s*+uYXN3Ix{H~qF<-5Jpbe>cpIsaCm{QUfi zZ=04ZP$f{SSpWb8M@d9MR9J=OnCp_PDh!29(lUb1`2KHuazOkDa6m*w9H;`l`~;P{_2A>yBOn;0Yj#5n=LgkT_F0)EyJg2Oj4ND#IyObGx2$ADk} z_z3v<>L85yW(Em1jxYlVfjA95zyOfv&)3=E$^@^jL%x|o1Dpd;_5qWIx`N-z2b7iBcx?g@`(KyI1%P5Mty>?7IaByh(`?LQh|`8?O-Hy7mFIn*#_*hi3om z5yj)@Q&#z-_xTEg5%jAA5Y)P(tHB^OsL>;Um^?uB$AfZ>giKKVNVD$pT?X+n*c2F$ zERe5rAS7W#i#LJj9w0^HK@p`yq}FqH{-@R*zRMu8F*C@YssZrELFDV=k1vu8Z}B=( zME3x*KmJ&$+fkt~q0zg1g~7OM#M+?r00r#pW-!tQPqYL=?*Xbo@y7+0_Y$oY0j~5u z-))dPiZ!*_EP(AnNPXQL67j4d2T$KF!R`a@q@ylD33NY|F_-{K-Qjx-h7hmVOaG?J zr>kEkbk=Qi2=?d#a$0m`-lB})9s_FK;p-VJ9f}U*>yJP2&jbR|0%W}hxZi`4)UxDP z#<_1f3cbtMH&{5F=~t36fPFOph28@0#h@gqv=Ow?OYiXg20$v0eh(0a01Y6-(jdrL zXZ|;<@J4^}xdv+j*}(Z$udnAU(G8%>+xYhYD}zz4W&e4LY4wKhHb^o7k*rew$vnrc z`XA_d5(?p2+zQ~)JAiPFmy0A^8TRyw?=nb94IV^?{ArK$5R7$5@gd0eEB|Q($Oqsz zJs#7=xwv}kzcl!LaD2A_e3p##3&7H6>7_S-2S~@yk#iDLO14skzqj7{m$NPPx#Fi=cXMRUcZPb^CB$i#$SZ4VC*4-XGgE=A{!v|LMLuARk-Z=3&CpwTXC{QUfB zPLpX)lO(%bPyhe|h)G02R9J=Wm(iM>APj|#lNJQlegC&@5^%?@C!y_5+Z*%E=Y{78 ze?mZKS?;*wjyvwS<5fWtU(x?}&?*rS&h&o~VGUoAz(e9I`eczq1QP?onQnaQ2nc8T zpVv_G<_^gC$%)?MTerA`Gkul-t-6BHKr0=9IKhej36K`2Pd*ZG^Z?L;`wH@M?K8m> zK#~eDtno~@;d$h^5-t+OdI)Ip@i=;(wYIC(83NAqMd=?8I_3cQXZ`zc1D<5m$eg;M zmjnoB`qI~jR&sU3J(91k9V(@Q|+voKmfc zNUu17iQWeujG#cVo^#0|pct%%;z_uM-0Fyi_rOU94c=^M8y()&%=U4ZUwA*4>Wzo*rr8tnZ!6_)@xX z1>{XaTd)EWik zD1MjmG1JdsU#1z{ul*f&`JN69a9`+#>^>@%NPbOte19i?0ME!EL5`P7?*IS*07*qo IM6N<$f~zKA!2kdN literal 0 HcmV?d00001 diff --git a/graphics/pokemon/tinkatuff/overworld_normal.pal b/graphics/pokemon/tinkatuff/overworld_normal.pal new file mode 100644 index 0000000000..a590547acb --- /dev/null +++ b/graphics/pokemon/tinkatuff/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +79 44 74 +239 200 196 +132 95 109 +15 15 15 +15 15 15 +82 46 69 +231 141 180 +92 75 99 +174 157 197 +138 111 155 +255 86 160 +209 46 107 +252 252 252 +105 78 147 +105 78 147 diff --git a/graphics/pokemon/tinkatuff/overworld_shiny.pal b/graphics/pokemon/tinkatuff/overworld_shiny.pal new file mode 100644 index 0000000000..673a93a40c --- /dev/null +++ b/graphics/pokemon/tinkatuff/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +93 41 64 +239 200 196 +113 69 98 +15 15 15 +113 69 98 +15 15 15 +231 141 180 +120 64 33 +203 131 108 +158 90 55 +255 86 160 +209 46 107 +252 252 252 +129 50 73 +93 99 158 diff --git a/graphics/pokemon/toedscool/overworld.png b/graphics/pokemon/toedscool/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..7f73ce5fc1a2466b8f0fd93886d1ad4ec2c104ca GIT binary patch literal 531 zcmV+u0_^>XP)Px#Fi=cXMRUcZuTVIPd=%q`Z|bCy0002Ot{v{-hTLdN<*==eZDK+w?8O=M!D zxVPTt<^$hx!vFvQkx4{BR9J=Wl#OnKFbstA=LG1W@Bg+tJL)u5iIasfG$|IPNS~8C z+XQ1~%$PA_#*7&=ekm-+jocXL+&Fj6hY)-<#2O zK%6kbjoEW^XfNZ-`PYYLlz@?nofvbwm!MstxiG;K3 zGt&!DmkZ=3RIzYf|Ll71a;1b!lnwUhlRKmc?60H?*DE6sqHLgPcP0JF`p&F>6Q5l0 V8vr5mkct2R002ovPDHLkV1lUF_n-g( literal 0 HcmV?d00001 diff --git a/graphics/pokemon/toedscool/overworld_normal.pal b/graphics/pokemon/toedscool/overworld_normal.pal new file mode 100644 index 0000000000..4c86e2c2da --- /dev/null +++ b/graphics/pokemon/toedscool/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +175 80 56 +139 124 20 +227 134 111 +234 164 146 +0 0 0 +194 174 29 +238 225 134 +220 104 75 +229 209 79 +232 232 248 +64 64 64 +208 208 208 +77 100 98 +163 184 183 +222 231 230 diff --git a/graphics/pokemon/toedscool/overworld_shiny.pal b/graphics/pokemon/toedscool/overworld_shiny.pal new file mode 100644 index 0000000000..edb94d0db5 --- /dev/null +++ b/graphics/pokemon/toedscool/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +101 98 86 +126 129 58 +207 203 186 +219 218 206 +0 0 0 +193 182 125 +255 253 226 +168 164 149 +207 198 154 +232 232 248 +64 64 64 +208 208 208 +132 130 111 +167 165 150 +224 221 203 diff --git a/graphics/pokemon/toedscruel/overworld.png b/graphics/pokemon/toedscruel/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..8ed361efeddffbfc922cd6c4bf22a065203aa521 GIT binary patch literal 780 zcmV+n1M~ceP)Px#Fi=cXMRUcZ6%`dyQA4j#INa9*h=l^&XiMs(lKuN(dKdz=Ikjtsi?b9%xd(A^b9%Z3ZZVFSFu(=FmM7lEwKmJGHN z40%X%FR4p-kLPiXX94doM?FH+Cg^e8VIi=F8II~{_Y!|{ca>*>bq@Unw5Lzd%Q-5&9pP^tk`H)}c+<`BRkqcEj!1pEZ)YBN%XWkkF z*`~ZzwE#n&T0{=YN50TRd|&cTJzrs|k6L}^nm^uW0hH+zCjtE^{Zj{b1n>p+Ie=6A z9S(C8UtEE`{=h{&+#kaLJ0Ate4q=k{t1BoD>4B*DYaDj#^?Y!@@BSo!b5#K0M}SIj zbO2PM!Yc+np2w*`@mD$=)$92t$o@D$w6;o+ZaZB;?(i@V!1hpo&}sM5Y2u2%!r`F4 zmoK>tLDttoZ7(TyL1+cpA+Q7AJm=&b==lnVqxw!h8qQh(i}5V9-&M1M|EP-HAs_2c zQhw3>m1hU_oqVF$L-Z2x6l`BjaP}XM6XoyLXC%La>NCavHGTn(h$xsE+ura10000< KMNUMnLSTX@mv34C literal 0 HcmV?d00001 diff --git a/graphics/pokemon/toedscruel/overworld_normal.pal b/graphics/pokemon/toedscruel/overworld_normal.pal new file mode 100644 index 0000000000..2c2be8c0da --- /dev/null +++ b/graphics/pokemon/toedscruel/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +21 21 21 +82 81 67 +175 80 56 +220 215 3 +136 133 2 +220 104 75 +234 164 146 +253 251 97 +227 134 111 +213 211 171 +150 147 107 +232 232 248 +168 168 168 +253 251 97 +220 215 3 diff --git a/graphics/pokemon/toedscruel/overworld_shiny.pal b/graphics/pokemon/toedscruel/overworld_shiny.pal new file mode 100644 index 0000000000..13165729c8 --- /dev/null +++ b/graphics/pokemon/toedscruel/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +21 21 21 +71 59 62 +109 105 109 +172 46 134 +172 46 134 +193 192 193 +252 252 252 +223 102 192 +232 231 233 +189 92 118 +92 46 56 +232 232 248 +168 168 168 +120 95 207 +88 55 177 diff --git a/graphics/pokemon/ursaluna/bloodmoon/overworld_shiny.pal b/graphics/pokemon/ursaluna/bloodmoon/overworld_shiny.pal new file mode 100644 index 0000000000..6dbef8b071 --- /dev/null +++ b/graphics/pokemon/ursaluna/bloodmoon/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +0 0 0 +94 41 20 +230 131 90 +195 99 59 +131 67 39 +119 119 117 +81 71 71 +151 148 146 +255 153 174 +248 50 89 +195 99 59 +131 67 39 +232 232 248 +36 104 60 +192 192 208 diff --git a/graphics/pokemon/varoom/overworld.png b/graphics/pokemon/varoom/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..a33b4821d3ffe85d521f9022842f1df62dd43832 GIT binary patch literal 753 zcmVPx#Fi=cXMRUcZ00010Nm@QIJcD_L!@v0APht;K;Sz4|L^UJi!Xq1YiA~XupZJjE1Nwa z1k-7H;)y4oc;bmS1*N#Ge>%v-u$sd&J!gFm@GSsDc8oAmZo&zzy(D=*$Qc3NH9#T9MLqk2ea|BkD&XxE;1pN&)gKIMNkhQfD{#Mrioa2r>VO|y zfzld^KW&UL;GG$a?WySfR<+X`DI`a#zuy7gSOKyDgQqDbWQ3X$4)*$yfzmsXGS9B( z?-Vd)%`U~PG^v4(21Cw~g=*y&{CU*PNGC@ugnsrsySB(q0rOiR<2A_nyB-Z%mch}d zVbF8{bRE`U4*s1Jf@T3u0CSc{5~q*O6w^Vk%NPa?2*nPx#Fi=cXMRUcZdMtYUb^o(Kvp_vQ00023uC2eq#D;!=X=-ebg2Mg%{m{`&A{JGAY-j- zoLwKI#Ap;SAUNNi>EDW=Xy^~Z6~j0IkQgwH31|8@L&zA=9fPhzp5WD+;+g&j%F72_ zu&iY~05Y$T7_vdAS!;ANi@HEO6LW(;pj1#Cq(}jYS4WHl{f46L;neMJAqMm{;-4Ax z03`sB0T8Sj;EN;W%)fFb?3#@nGE6waC;(>-IOvVyzun~`##4XoPdVRZ8GKK3TXFn znPHk_z|i@+1=bJPHa(8aD8mzp?lofz!Pw!1PoR$Te0cIN=Vk$d&FedAcAyUE=lB9>N5PW# zH3XDGa~^k;&?>&;@S=4eV~-}-x(-95TgjXP?wD{N%X}7$&hw5)(K#(1Gix3+Y9Coc zW6-+K1aR3O`0x#U;hB2er9w4e7ieAKV}l2w%P$T*{odPb4&T7|upFKla-Ru&{)z5v m0bd(5@vqhSqyI1U8}SR*R~Ax;U36vu0000Px#Fi=cXMRUcZD-}Qh005w1uo^Z=J8+C(n827QC~!E4P*7mF$jIpE`0wPf7&urk zV2JyhJY}IpDF6TjK}keGR9J=GnC*JwDhz~!AQ((>?*DFgB*0$?oSyS*muK5`{mL){ zLO6N7{;g)rW583ye{Dqnk4rPwJw!NbXBM2BcQEGk_EUvVyfow9ZaT%_78b^%yx+57 z#vJ-QeP&OBza{~v0qi(U3LiQEb~6VPP9AK5z=1~LpGg2WQwInmg_V!82+WmVdYf?R znGFmyRz42c^@rj>6L@f|2e7u!gMk4jo*4)<&=^Fc&L!Zb1XO`!Kb8hdVC>GVzD7Z^c^u@Tu2!-!^p5RW5{M>>^DaI==6U}`dw92WW%DfJP75W@f8i`^4{$qGXI$HbL_ zQl$#U9^!x-c09o~Ls|<%UJTl930PDqlYDj8_r$A0>=D+dE9KG z{k`VQ4-efgpdwEsYG=(8hiXV%Se{iJRJ<%=@MeIUb49m^DcWD%q zJ&egYxDvqIYi6J>!D2fDjuX68fg^#!QR%Kcvg_}!nhPh1S7x=B-SKoacCPnamK>*_^TFjf9*z)OHJ=Jv*k35F@; zK;jI*Ww>vUIWHL$WtTxR6$23C2Ol1*}^l z@3&T_ac1uZC%g{fSs}4LuddOYmomE1#>bRy!0fzxni9)mfj*_CFe3NkZg9p+AD-8V z|7G>l=M$HcYTZ^j2l_NE28C;%_;TVR!wPfCtT3{?wGG4uDU5juk?qM_6<69EO*t#X z6t8P3)}tj5f7;6~_lR9;$a|mH^(~>aD}+H#e;6Q@bDkyI41d@kj2w85qE1=a}%mLgx&j+DRszBO;SuVR7}iQhI;pyt16Ee#jYb11<(oU)oLMH}`z$_Eljg6a`PH}w%ws_|GQJ&r-##jUvC8*TOCgv($u2h38keUir-=Xn002ovPDHLkV1j;!JFNf! literal 0 HcmV?d00001 diff --git a/graphics/pokemon/walking_wake/overworld_normal.pal b/graphics/pokemon/walking_wake/overworld_normal.pal new file mode 100644 index 0000000000..a2580fab8d --- /dev/null +++ b/graphics/pokemon/walking_wake/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +43 21 64 +0 0 0 +160 96 176 +26 54 73 +59 112 140 +96 152 192 +152 40 40 +112 56 136 +80 80 96 +184 200 200 +232 232 248 +239 228 176 +24 56 88 +48 96 136 +251 155 60 diff --git a/graphics/pokemon/walking_wake/overworld_shiny.pal b/graphics/pokemon/walking_wake/overworld_shiny.pal new file mode 100644 index 0000000000..06cefaba45 --- /dev/null +++ b/graphics/pokemon/walking_wake/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +2 46 77 +0 0 0 +96 160 216 +18 67 58 +56 200 176 +144 200 232 +152 40 40 +8 88 152 +80 80 96 +184 200 200 +232 232 248 +239 228 176 +48 112 176 +96 160 216 +251 155 60 diff --git a/graphics/pokemon/wattrel/overworld.png b/graphics/pokemon/wattrel/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..a73b63e0fbc8a8d8992a3eae3030c0859d2d8751 GIT binary patch literal 475 zcmV<10VMv3P)Px#Fi=cXMRUcZ5fT$OIY9sb0RPQ5=;-*ucR{|7DRaBO@u60zsIX)_D1u}rKSE8B zrNeD@jyzui9{>OWSxH1eR9J=WmD`TPAPhvo!=)so`TxINL(?~GN6B_ql^CSFoB_t% z;@s5K)YR0})YR0})UU`l{UdieHMyrI+4FJE1}&n=iPRbXh>Hm={`CbQ#BPWI*Eqd( zjrV*(PH1t5h)9X}D+I9k%>vNYCd&aW&H*1WmBe4E0E6Ev0Hv+XaYhCiE#53kDy5`l zJpT!<<~KNa==fM(0S8Zw#b4uxbzOt9f+}}t&m6yVVgV`#Qd&X}IQ&~!obPBQ%9#&Y z9o|xlyP5${9>{f=(Bcj`&{o;Rg^rfk;2iMTclaq5pmN?JZoYrV`3&A1TWuQ*;hyT; z=ej?M+g|e(&L^ZTFfXxmMhwo5jmHl1EiyQ7?Y48{t-i#2LTLF6ek9D|4p|&18w)aT zxG0<%MBEJM9?@_Np>eH0(yH`*o7N;2kVJIWWDa3;x93+)cl)0i;?x}9q#qkS46As+ RV`u;X002ovPDHLkV1hu$)2#pi literal 0 HcmV?d00001 diff --git a/graphics/pokemon/wattrel/overworld_normal.pal b/graphics/pokemon/wattrel/overworld_normal.pal new file mode 100644 index 0000000000..00a331333a --- /dev/null +++ b/graphics/pokemon/wattrel/overworld_normal.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +17 18 19 +55 57 65 +0 0 0 +255 205 55 +232 232 248 +194 119 65 +190 143 41 +115 187 191 +241 161 86 +168 168 176 +100 60 40 +130 100 38 +63 66 77 +145 165 195 +109 118 142 diff --git a/graphics/pokemon/wattrel/overworld_shiny.pal b/graphics/pokemon/wattrel/overworld_shiny.pal new file mode 100644 index 0000000000..4b43c1a237 --- /dev/null +++ b/graphics/pokemon/wattrel/overworld_shiny.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +115 197 164 +80 47 43 +114 67 87 +0 0 0 +255 205 55 +232 232 248 +194 119 65 +190 143 41 +115 187 191 +241 161 86 +168 168 176 +100 60 40 +130 100 38 +67 72 84 +145 165 195 +109 118 142 diff --git a/graphics/pokemon/wiglett/overworld.png b/graphics/pokemon/wiglett/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..510566c98c2426200d3e3a626cac3ffa4ae4388b GIT binary patch literal 444 zcmV;t0YmPx#Fi=cXMRUcZb8C3@^YPNp(uq1ywz$s#008MDwRs5QvHfd)&KQh+)e{*l`sPsyx8B`#rYs$-!C`-1~2xHb|<&v3xpfq z#JvXrV8G3|8x`Ep1m2+gk%M`Eh<9&kzjI7K3`jHFPVKu3Ebjq%-oMjtu|;_97Z`1eT+K!y&+IK?w9GV^;$<85cs3-k2N^1%SN$ zO!x#Xpp^qS>51Whmji6bp_O3pTpppm-ypp@Ug^6DK&$pFbPDS zQ)*Xi=$tu3Je5)!r*k$R@mGmSOohx-{kp0ivu?=0X@NgioH@-mU|zb|H~ePaO2{33 m7P)vmf52Nw7Ap|{JbeMhGZOIUb1O*z0000Px#Fi=cXMRUcZdva4qOFyEEc8r&uO*}WboM5=Vy>_%%`FtQ@fJFWM{TCk)dva3% z001#GFydvjHvj+wib+I4R9J=Wmf4cyAPhxq*~s9lzsu)MMX&761T0;@=-B?|$sf_kI*U$+GYAMCkaNO(_8^`3a4{{JmE&Gnix@ zIdzX?y26L_oxo$jr>f=%oG65MfW7)YC`i0l@Ce*RoYN;hq#p$K8wpCUI9%6dKCmf8 z6;^74kD*_xn6x5Iq^U3{C<6B*80;}6vzF2)4%W8m1%X|S37coi$Z19M`Jyc9pcj07 z%%EUlFbkvxXNRLeN^dD3al*FWfkq&2b1Tp(54IQ_dHC@%r}A29uTFCTSZL_lU=+v- zK@v#G;41vISAPl{fnlFo{gxW+1UKV(jT4l&UWNS!)9=y3U=p}TiK9SH#$`*qtBxRW zZ=2lNFloy38qONS&k)$3qLslckPnEpI0%f%GIv9DUIY>bnqmMK251d%V99{ZmFNw^ z++Y#N62odzio&-+ey++2Kg?##|D!1&v`E} zJt_mrguS2eG#sS}2I$?1J@6P58Ze{;=crSr2VlZwfscMgm?#aDc+tmaRBqq!zpH;Ua_7xByxs z$ow%tah78}3IZB~BggxxjnqU7PMNbnf;UTqyQ(329mb63D5Z5cq*^OMA@O2R;26@z z!5{yDqbG$yV>~GL9W<70dgE~bD(!rFXf+6AUJMEx@1l@Cj6JmCcxR1JZiUSuc;U&W z*VN_V;j|x09C$G}@YubnHsjy1&R$xmcq2>23{`$2T55 z<{l0DdEmf9gvqUd4TkbJAPx#Fi=cXMRUcZ0002mHdkgGE6B*mpDR{?5HPEgv(?Ao!6Za*UUw@wNv@*Ust9skn+8h;r7+W{MmiGqc|W&CR@0NjU>+csCQ5V(wgUBzb(V7p@M^;E!0 z;M%|oM-2S7aByBB*uZ-a6M?@oIIEz;!Bh5aVPH}r=l9#sZTDxvD}zpwH;F$r=R?`IGj|-d3Zb?a4KMB(0Lhe8-Shk-!Tv#x7!W_fyLplLiuE(0Q}=zz^TD! z{6_{T?e{AiKnIV#FJp07DpYaMRo!&|Q-iO^kB^w7T?}9{cup;_I4l*i+?BkX3aC=t zRrl5S(+W}AQC``<2-!flK#o5@VvZc@?=r1AXU3sc z$Qsbz5@JdbM<_X~6nBlI8^{g~w-cnd0I8D^q3TsyqK4NF!f~j;BgIg~ zlfIspcx{cC!i2L12GpV9^(CR+0+`x}6^bm7ldb}Ci3+d%6$6K6xHB;38JE^b2GW5k z?)0g{%sYqK5}t0{1r_4cj+3qmwM2zi{y3hAUSg`VZFOU=SX-m#5+B)tJt4)R;X?yl zLOh`O4=24SBhUiQ0 zae7fiVKJAg(>LY$0my|-G9lF)yutB~mo^UW$C^K9#mR&z7lTD#_s+WDdar|g_scK1ZldzW6V|+px4Hg&7QEv179aCJ a82 Date: Fri, 6 Sep 2024 12:36:21 +0200 Subject: [PATCH 03/37] RTC-based wild encounters follow up (#5328) During my review of #5313 I overlooked that the function vars used a u8 instead of u32. This follow up fixes it --- src/wild_encounter.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/wild_encounter.c b/src/wild_encounter.c index 3cfdfb1191..81721596ad 100644 --- a/src/wild_encounter.c +++ b/src/wild_encounter.c @@ -355,7 +355,7 @@ static u8 ChooseWildMonLevel(const struct WildPokemon *wildPokemon, u8 wildMonIn } } -static bool8 IsExactTimeOfDayMatchForWildEncounters(u8 currentTimeOfDay, u8 encounterTimeOfDay) +static bool32 IsExactTimeOfDayMatchForWildEncounters(u32 currentTimeOfDay, u32 encounterTimeOfDay) { switch (currentTimeOfDay) { From 28287fe80a0ff084472b0dfaccc236f90e04248e Mon Sep 17 00:00:00 2001 From: Alex <93446519+AlexOn1ine@users.noreply.github.com> Date: Fri, 6 Sep 2024 21:08:54 +0200 Subject: [PATCH 04/37] Fixes minor wrong order in AI_CalcDamage and adds Tera Blast/Tera Storm (#5155) * Fixes minor wrong order in AI_CalcDamage and adds Tera Blast/Tera Storm * update moveEffect * fix compile --- src/battle_ai_util.c | 35 ++++++++++++++++++++++++++--------- 1 file changed, 26 insertions(+), 9 deletions(-) diff --git a/src/battle_ai_util.c b/src/battle_ai_util.c index 59a4d0c115..06735d6015 100644 --- a/src/battle_ai_util.c +++ b/src/battle_ai_util.c @@ -519,12 +519,16 @@ struct SimulatedDamage AI_CalcDamage(u32 move, u32 battlerAtk, u32 battlerDef, u { struct SimulatedDamage simDamage; s32 moveType; + u32 moveEffect = gMovesInfo[move].effect; uq4_12_t effectivenessMultiplier; bool32 isDamageMoveUnusable = FALSE; bool32 toggledGimmick = FALSE; struct AiLogicData *aiData = AI_DATA; gBattleStruct->aiCalcInProgress = TRUE; + if (moveEffect == EFFECT_NATURE_POWER) + move = GetNaturePowerMove(battlerAtk); + // Temporarily enable gimmicks for damage calcs if planned if (gBattleStruct->gimmick.usableGimmick[battlerAtk] && GetActiveGimmick(battlerAtk) == GIMMICK_NONE && !(gBattleStruct->gimmick.usableGimmick[battlerAtk] == GIMMICK_Z_MOVE && !considerZPower)) @@ -537,12 +541,25 @@ struct SimulatedDamage AI_CalcDamage(u32 move, u32 battlerAtk, u32 battlerDef, u SetActiveGimmick(battlerAtk, gBattleStruct->gimmick.usableGimmick[battlerAtk]); } - if (gMovesInfo[move].effect == EFFECT_PHOTON_GEYSER) - gBattleStruct->swapDamageCategory = (GetCategoryBasedOnStats(gBattlerAttacker) != gMovesInfo[gCurrentMove].category); - else if (gMovesInfo[move].effect == EFFECT_SHELL_SIDE_ARM) - gBattleStruct->swapDamageCategory = (gBattleStruct->shellSideArmCategory[battlerAtk][battlerDef] != gMovesInfo[gCurrentMove].category); - else if (gMovesInfo[move].effect == EFFECT_NATURE_POWER) - move = GetNaturePowerMove(battlerAtk); + moveEffect = gMovesInfo[move].effect; + switch (moveEffect) + { + case EFFECT_PHOTON_GEYSER: + gBattleStruct->swapDamageCategory = (GetCategoryBasedOnStats(battlerAtk) == DAMAGE_CATEGORY_PHYSICAL); + break; + case EFFECT_SHELL_SIDE_ARM: + if (gBattleStruct->shellSideArmCategory[battlerAtk][battlerDef] == DAMAGE_CATEGORY_PHYSICAL) + gBattleStruct->swapDamageCategory = TRUE; + break; + case EFFECT_TERA_BLAST: + if (GetActiveGimmick(battlerAtk) == GIMMICK_TERA) + gBattleStruct->swapDamageCategory = GetCategoryBasedOnStats(battlerAtk) == DAMAGE_CATEGORY_PHYSICAL; + break; + case EFFECT_TERA_STARSTORM: + if (GetActiveGimmick(gBattlerAttacker) == GIMMICK_TERA && gBattleMons[gBattlerAttacker].species == SPECIES_TERAPAGOS_STELLAR) + gBattleStruct->swapDamageCategory = GetCategoryBasedOnStats(battlerAtk) == DAMAGE_CATEGORY_PHYSICAL; + break; + } gBattleStruct->dynamicMoveType = 0; @@ -559,7 +576,7 @@ struct SimulatedDamage AI_CalcDamage(u32 move, u32 battlerAtk, u32 battlerDef, u ProteanTryChangeType(battlerAtk, aiData->abilities[battlerAtk], move, moveType); // Certain moves like Rollout calculate damage based on values which change during the move execution, but before calling dmg calc. - switch (gMovesInfo[move].effect) + switch (moveEffect) { case EFFECT_ROLLOUT: n = gDisableStructs[battlerAtk].rolloutTimer - 1; @@ -606,7 +623,7 @@ struct SimulatedDamage AI_CalcDamage(u32 move, u32 battlerAtk, u32 battlerDef, u else { s32 nonCritDmg = 0; - if (gMovesInfo[move].effect == EFFECT_TRIPLE_KICK) + if (moveEffect == EFFECT_TRIPLE_KICK) { for (gMultiHitCounter = gMovesInfo[move].strikeCount; gMultiHitCounter > 0; gMultiHitCounter--) // The global is used to simulate actual damage done { @@ -630,7 +647,7 @@ struct SimulatedDamage AI_CalcDamage(u32 move, u32 battlerAtk, u32 battlerDef, u if (GetActiveGimmick(battlerAtk) != GIMMICK_Z_MOVE) { // Handle dynamic move damage - switch (gMovesInfo[move].effect) + switch (moveEffect) { case EFFECT_LEVEL_DAMAGE: simDamage.expected = simDamage.minimum = gBattleMons[battlerAtk].level * (aiData->abilities[battlerAtk] == ABILITY_PARENTAL_BOND ? 2 : 1); From 5c86aa126f9b06b28bc4d97778ce37b6d577a4ad Mon Sep 17 00:00:00 2001 From: Alex <93446519+AlexOn1ine@users.noreply.github.com> Date: Fri, 6 Sep 2024 21:09:04 +0200 Subject: [PATCH 05/37] Revert rtc based encounters (#5331) * Revert "RTC-based wild encounters follow up (#5328)" This reverts commit 9a95c9b07a4084afe0e96fd5d4408777172be822. * Revert "RTC-based wild encounters (#5313)" This reverts commit 7c7fd905bae849bc1244a66545e10677fed763dd. --- include/config/overworld.h | 7 ----- include/wild_encounter.h | 1 - src/data/wild_encounters.json.txt | 2 -- src/wild_encounter.c | 45 ++----------------------------- tools/jsonproc/jsonproc.cpp | 21 --------------- 5 files changed, 2 insertions(+), 74 deletions(-) diff --git a/include/config/overworld.h b/include/config/overworld.h index 8be52abfb5..cebbe5b34b 100644 --- a/include/config/overworld.h +++ b/include/config/overworld.h @@ -74,13 +74,6 @@ #define OW_USE_FAKE_RTC FALSE // When TRUE, seconds on the in-game clock will only advance once every 60 playTimeVBlanks (every 60 frames). #define OW_ALTERED_TIME_RATIO GEN_LATEST // In GEN_8_PLA, the time in game moves forward 60 seconds for every second in the RTC. In GEN_9, it is 20 seconds. This has no effect if OW_USE_FAKE_RTC is FALSE. -// Time-based wild Pokemon encounters - Allows you to create additional encounter groups in wild_encounters.json (or in porymap). -// The groups are processed by base label's suffix. For example, "gRoute101" (no suffix) contains daytime encounters, and "gRoute101_Night" contains nighttime encounters. -// Not every group needs to be defined for every map - you could for example omit them inside caves and it would fall back to the unsuffixed daytime encounter group. -#define OW_TIME_BASED_WILD_ENCOUNTERS FALSE // Enables the system. If disabled, all suffixes are ignored and the first encounter group found for a map will be used for wild encounters. -#define OW_ENABLE_MORNING_WILD_ENCOUNTERS FALSE // If true, allows definition of morning encounter groups such as "gRoute101_Morning". Otherwise, morning is considered to be day for encounters. No effect if OW_TIME_BASED_WILD_ENCOUNTERS is false. -#define OW_ENABLE_EVENING_WILD_ENCOUNTERS FALSE // If true, allows definition of evening encounter groups such as "gRoute101_Evening". Otherwise, evening is considered to be night for encounters. No effect if OW_TIME_BASED_WILD_ENCOUNTERS is false. - // 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. diff --git a/include/wild_encounter.h b/include/wild_encounter.h index fb0f5ab00e..63289f081c 100644 --- a/include/wild_encounter.h +++ b/include/wild_encounter.h @@ -20,7 +20,6 @@ struct WildPokemonHeader { u8 mapGroup; u8 mapNum; - u8 timeOfDay; const struct WildPokemonInfo *landMonsInfo; const struct WildPokemonInfo *waterMonsInfo; const struct WildPokemonInfo *rockSmashMonsInfo; diff --git a/src/data/wild_encounters.json.txt b/src/data/wild_encounters.json.txt index 55dd20cd52..bf848249f0 100755 --- a/src/data/wild_encounters.json.txt +++ b/src/data/wild_encounters.json.txt @@ -72,7 +72,6 @@ const struct WildPokemonHeader {{ wild_encounter_group.label }}[] = { .mapGroup = {% if wild_encounter_group.for_maps %}MAP_GROUP({{ removePrefix(encounter.map, "MAP_") }}){% else %}0{% endif %}, .mapNum = {% if wild_encounter_group.for_maps %}MAP_NUM({{ removePrefix(encounter.map, "MAP_") }}){% else %}{{ loop.index1 }}{% endif %}, - .timeOfDay = {% if stringEndsWith(encounter.base_label, "_Night") or stringContains(encounter.base_label, "_Night_") %}TIME_NIGHT{% else if stringEndsWith(encounter.base_label, "_Morning") or stringContains(encounter.base_label, "_Morning_") %}TIME_MORNING{% else if stringEndsWith(encounter.base_label, "_Evening") or stringContains(encounter.base_label, "_Evening_") %}TIME_EVENING{% else %}TIME_DAY{% endif %}, .landMonsInfo = {% if existsIn(encounter, "land_mons") %}&{{ encounter.base_label }}_LandMonsInfo{% else %}NULL{% endif %}, .waterMonsInfo = {% if existsIn(encounter, "water_mons") %}&{{ encounter.base_label }}_WaterMonsInfo{% else %}NULL{% endif %}, .rockSmashMonsInfo = {% if existsIn(encounter, "rock_smash_mons") %}&{{ encounter.base_label }}_RockSmashMonsInfo{% else %}NULL{% endif %}, @@ -82,7 +81,6 @@ const struct WildPokemonHeader {{ wild_encounter_group.label }}[] = { .mapGroup = MAP_GROUP(UNDEFINED), .mapNum = MAP_NUM(UNDEFINED), - .timeOfDay = TIME_DAY, .landMonsInfo = NULL, .waterMonsInfo = NULL, .rockSmashMonsInfo = NULL, diff --git a/src/wild_encounter.c b/src/wild_encounter.c index 81721596ad..033eec56da 100644 --- a/src/wild_encounter.c +++ b/src/wild_encounter.c @@ -11,7 +11,6 @@ #include "pokeblock.h" #include "battle_setup.h" #include "roamer.h" -#include "rtc.h" #include "tv.h" #include "link.h" #include "script.h" @@ -355,32 +354,9 @@ static u8 ChooseWildMonLevel(const struct WildPokemon *wildPokemon, u8 wildMonIn } } -static bool32 IsExactTimeOfDayMatchForWildEncounters(u32 currentTimeOfDay, u32 encounterTimeOfDay) -{ - switch (currentTimeOfDay) - { - case TIME_MORNING: - if (OW_ENABLE_MORNING_WILD_ENCOUNTERS) - return encounterTimeOfDay == TIME_MORNING; - // fallthrough - case TIME_DAY: - return encounterTimeOfDay == TIME_DAY; - case TIME_EVENING: - if (OW_ENABLE_EVENING_WILD_ENCOUNTERS) - return encounterTimeOfDay == TIME_EVENING; - // fallthrough - case TIME_NIGHT: - return encounterTimeOfDay == TIME_NIGHT; - } - return FALSE; -} - static u16 GetCurrentMapWildMonHeaderId(void) { u16 i; - u8 currentTimeOfDay = GetTimeOfDay(); - u16 dayId = HEADER_NONE; - u16 nightId = HEADER_NONE; for (i = 0; ; i++) { @@ -399,30 +375,13 @@ static u16 GetCurrentMapWildMonHeaderId(void) alteringCaveId = 0; i += alteringCaveId; - return i; // Altering cave is not affected by time-of-day encounters. } - if (OW_TIME_BASED_WILD_ENCOUNTERS) - { - if (IsExactTimeOfDayMatchForWildEncounters(currentTimeOfDay, gWildMonHeaders[i].timeOfDay)) - return i; - else if (gWildMonHeaders[i].timeOfDay == TIME_DAY && dayId == HEADER_NONE) - dayId = i; - else if (gWildMonHeaders[i].timeOfDay == TIME_NIGHT && nightId == HEADER_NONE) - nightId = i; - } - else - return i; + return i; } } - if (!OW_TIME_BASED_WILD_ENCOUNTERS) - return HEADER_NONE; - - // Exact match for time of day was not found. We fall back to other encounter groups for this map - if (currentTimeOfDay == TIME_EVENING && OW_ENABLE_EVENING_WILD_ENCOUNTERS && nightId != HEADER_NONE) - return nightId; - return dayId; + return HEADER_NONE; } u8 PickWildMonNature(void) diff --git a/tools/jsonproc/jsonproc.cpp b/tools/jsonproc/jsonproc.cpp index 5e661e40d3..9ef23cd43e 100755 --- a/tools/jsonproc/jsonproc.cpp +++ b/tools/jsonproc/jsonproc.cpp @@ -118,27 +118,6 @@ int main(int argc, char *argv[]) return str; }); - env.add_callback("stringContains", 2, [](Arguments& args) { - string str = args.at(0)->get(); - string check = args.at(1)->get(); - - return str.find(check) != std::string::npos; - }); - - env.add_callback("stringStartsWith", 2, [](Arguments& args) { - string str = args.at(0)->get(); - string check = args.at(1)->get(); - - return str.find(check) == 0; - }); - - env.add_callback("stringEndsWith", 2, [](Arguments& args) { - string str = args.at(0)->get(); - string check = args.at(1)->get(); - - return str.rfind(check) == (str.length() - check.length()); - }); - try { env.write_with_json_file(templateFilepath, jsonfilepath, outputFilepath); From ac7abb6d599095791d9d3d8bc8939815dfeb66c4 Mon Sep 17 00:00:00 2001 From: Cafei <46283144+Cafeei@users.noreply.github.com> Date: Sat, 7 Sep 2024 17:59:09 +0400 Subject: [PATCH 06/37] Followers sprite fixes (#5333) Follower sprite fixes Mothim and Combusken shiny fixes --- graphics/pokemon/abomasnow/overworld.png | Bin 1241 -> 1146 bytes graphics/pokemon/aggron/overworld.png | Bin 1414 -> 1360 bytes graphics/pokemon/alakazam/overworld.png | Bin 963 -> 859 bytes graphics/pokemon/ambipom/overworld.png | Bin 1378 -> 1257 bytes graphics/pokemon/ariados/overworld.png | Bin 1228 -> 1084 bytes graphics/pokemon/armaldo/overworld.png | Bin 1196 -> 1064 bytes graphics/pokemon/articuno/overworld.png | Bin 1458 -> 1270 bytes graphics/pokemon/azumarill/overworld.png | Bin 922 -> 740 bytes graphics/pokemon/barboach/overworld.png | Bin 737 -> 594 bytes graphics/pokemon/bayleef/overworld.png | Bin 915 -> 814 bytes graphics/pokemon/bibarel/overworld.png | Bin 1055 -> 924 bytes graphics/pokemon/blastoise/overworld.png | Bin 1135 -> 1019 bytes graphics/pokemon/celebi/overworld.png | Bin 766 -> 667 bytes graphics/pokemon/charmeleon/overworld.png | Bin 795 -> 670 bytes graphics/pokemon/cherrim/overworld.png | Bin 623 -> 458 bytes graphics/pokemon/chinchou/overworld.png | Bin 878 -> 686 bytes graphics/pokemon/cloyster/overworld.png | Bin 1287 -> 1127 bytes graphics/pokemon/combusken/back.png | Bin 640 -> 595 bytes graphics/pokemon/combusken/backf.png | Bin 582 -> 586 bytes graphics/pokemon/combusken/shiny.pal | 6 ++--- graphics/pokemon/corphish/overworld.png | Bin 1063 -> 935 bytes graphics/pokemon/corsola/overworld.png | Bin 834 -> 718 bytes graphics/pokemon/crawdaunt/overworld.png | Bin 1163 -> 1051 bytes graphics/pokemon/cubone/overworld.png | Bin 789 -> 693 bytes graphics/pokemon/dewott/overworld.png | Bin 599 -> 574 bytes graphics/pokemon/dewott/overworld_normal.pal | 12 ++++----- graphics/pokemon/dewott/overworld_shiny.pal | 16 ++++++------ graphics/pokemon/doduo/overworld.png | Bin 713 -> 568 bytes graphics/pokemon/donphan/overworld.png | Bin 940 -> 842 bytes graphics/pokemon/dusknoir/overworld.png | Bin 1093 -> 1018 bytes graphics/pokemon/electabuzz/overworld.png | Bin 842 -> 737 bytes graphics/pokemon/espeon/overworld.png | Bin 983 -> 902 bytes graphics/pokemon/exeggcute/overworld.png | Bin 1033 -> 962 bytes graphics/pokemon/farfetchd/overworld.png | Bin 799 -> 686 bytes graphics/pokemon/feraligatr/overworld.png | Bin 1286 -> 1163 bytes graphics/pokemon/flaaffy/overworld.png | Bin 955 -> 801 bytes graphics/pokemon/flareon/overworld.png | Bin 1016 -> 936 bytes graphics/pokemon/floatzel/overworld.png | Bin 1111 -> 980 bytes graphics/pokemon/flygon/overworld.png | Bin 1175 -> 1068 bytes graphics/pokemon/furret/overworld.png | Bin 985 -> 862 bytes graphics/pokemon/gastly/overworld.png | Bin 834 -> 695 bytes graphics/pokemon/girafarig/overworld.png | Bin 954 -> 810 bytes graphics/pokemon/giratina/overworld.png | Bin 2447 -> 2369 bytes graphics/pokemon/gligar/overworld.png | Bin 1207 -> 1000 bytes graphics/pokemon/gloom/overworld.png | Bin 700 -> 589 bytes graphics/pokemon/golbat/overworld.png | Bin 990 -> 859 bytes graphics/pokemon/groudon/overworld.png | Bin 1836 -> 1998 bytes graphics/pokemon/grovyle/overworld.png | Bin 849 -> 700 bytes graphics/pokemon/grumpig/overworld.png | Bin 937 -> 811 bytes graphics/pokemon/hariyama/overworld.png | Bin 1388 -> 1246 bytes graphics/pokemon/heatran/overworld.png | Bin 1329 -> 1213 bytes graphics/pokemon/hoppip/overworld.png | Bin 733 -> 579 bytes graphics/pokemon/illumise/overworld.png | Bin 926 -> 796 bytes graphics/pokemon/jolteon/overworld.png | Bin 923 -> 825 bytes graphics/pokemon/jumpluff/overworld.png | Bin 787 -> 602 bytes graphics/pokemon/kabutops/overworld.png | Bin 785 -> 856 bytes .../pokemon/kabutops/overworld_normal.pal | 2 +- graphics/pokemon/kingler/overworld.png | Bin 837 -> 914 bytes graphics/pokemon/kingler/overworld_normal.pal | 2 +- graphics/pokemon/kricketot/overworld.png | Bin 729 -> 570 bytes graphics/pokemon/larvitar/overworld.png | Bin 637 -> 544 bytes graphics/pokemon/leafeon/overworld.png | Bin 933 -> 809 bytes graphics/pokemon/lileep/overworld.png | Bin 872 -> 723 bytes graphics/pokemon/lumineon/overworld.png | Bin 937 -> 826 bytes graphics/pokemon/luxio/overworld.png | Bin 929 -> 844 bytes graphics/pokemon/luxray/overworld.png | Bin 991 -> 905 bytes graphics/pokemon/machamp/overworld.png | Bin 1156 -> 999 bytes graphics/pokemon/magneton/overworld.png | Bin 1030 -> 923 bytes graphics/pokemon/mamoswine/overworld.png | Bin 1070 -> 935 bytes graphics/pokemon/mantyke/overworld.png | Bin 826 -> 694 bytes graphics/pokemon/marowak/overworld.png | Bin 875 -> 744 bytes graphics/pokemon/marshtomp/overworld.png | Bin 729 -> 578 bytes graphics/pokemon/meowth/overworld.png | Bin 869 -> 749 bytes graphics/pokemon/mesprit/overworld.png | Bin 982 -> 864 bytes graphics/pokemon/mew/overworld.png | Bin 795 -> 715 bytes graphics/pokemon/mewtwo/overworld.png | Bin 1034 -> 923 bytes graphics/pokemon/mightyena/overworld.png | Bin 1002 -> 912 bytes graphics/pokemon/mime_jr/overworld.png | Bin 695 -> 600 bytes graphics/pokemon/misdreavus/overworld.png | Bin 1065 -> 874 bytes graphics/pokemon/moltres/overworld.png | Bin 1323 -> 1197 bytes graphics/pokemon/mothim/shiny.pal | 24 +++++++++--------- graphics/pokemon/numel/overworld.png | Bin 1036 -> 882 bytes graphics/pokemon/oshawott/overworld.png | Bin 505 -> 424 bytes .../pokemon/oshawott/overworld_normal.pal | 10 ++++---- graphics/pokemon/oshawott/overworld_shiny.pal | 8 +++--- graphics/pokemon/phione/overworld.png | Bin 766 -> 668 bytes graphics/pokemon/pinsir/overworld.png | Bin 974 -> 890 bytes graphics/pokemon/politoed/overworld.png | Bin 968 -> 760 bytes graphics/pokemon/porygon_z/overworld.png | Bin 806 -> 686 bytes graphics/pokemon/prinplup/overworld.png | Bin 850 -> 690 bytes graphics/pokemon/probopass/overworld.png | Bin 1156 -> 1062 bytes graphics/pokemon/quilava/overworld.png | Bin 1244 -> 1038 bytes graphics/pokemon/qwilfish/overworld.png | Bin 822 -> 700 bytes graphics/pokemon/rampardos/overworld.png | Bin 1091 -> 1015 bytes graphics/pokemon/rapidash/overworld.png | Bin 1081 -> 1000 bytes graphics/pokemon/regirock/overworld.png | Bin 1263 -> 1153 bytes graphics/pokemon/riolu/overworld_shiny.pal | 2 +- graphics/pokemon/roserade/overworld.png | Bin 947 -> 840 bytes graphics/pokemon/sceptile/overworld.png | Bin 1100 -> 1020 bytes graphics/pokemon/scizor/overworld.png | Bin 1083 -> 998 bytes graphics/pokemon/seel/overworld.png | Bin 856 -> 758 bytes graphics/pokemon/shieldon/overworld.png | Bin 518 -> 558 bytes .../pokemon/shieldon/overworld_normal.pal | 2 +- graphics/pokemon/shiftry/overworld.png | Bin 1109 -> 986 bytes graphics/pokemon/slowbro/overworld.png | Bin 795 -> 813 bytes graphics/pokemon/slowking/overworld.png | Bin 981 -> 914 bytes graphics/pokemon/smoochum/overworld.png | Bin 716 -> 612 bytes graphics/pokemon/sneasel/overworld.png | Bin 788 -> 674 bytes graphics/pokemon/snover/overworld_shiny.pal | 4 +-- graphics/pokemon/spheal/overworld.png | Bin 758 -> 626 bytes graphics/pokemon/staraptor/overworld.png | Bin 1331 -> 1220 bytes graphics/pokemon/steelix/overworld.png | Bin 1584 -> 1550 bytes graphics/pokemon/stunky/overworld.png | Bin 782 -> 691 bytes graphics/pokemon/sudowoodo/overworld.png | Bin 832 -> 745 bytes graphics/pokemon/suicune/overworld.png | Bin 1270 -> 1141 bytes graphics/pokemon/surskit/overworld.png | Bin 616 -> 494 bytes graphics/pokemon/swellow/overworld.png | Bin 1236 -> 1121 bytes graphics/pokemon/swinub/overworld.png | Bin 662 -> 556 bytes graphics/pokemon/tentacruel/overworld.png | Bin 913 -> 762 bytes graphics/pokemon/togekiss/overworld.png | Bin 864 -> 790 bytes graphics/pokemon/togepi/overworld.png | Bin 701 -> 575 bytes graphics/pokemon/torkoal/overworld.png | Bin 910 -> 811 bytes graphics/pokemon/tropius/overworld.png | Bin 1263 -> 1172 bytes graphics/pokemon/vaporeon/overworld.png | Bin 1092 -> 984 bytes graphics/pokemon/vibrava/overworld.png | Bin 1089 -> 964 bytes graphics/pokemon/victini/overworld.png | Bin 567 -> 567 bytes graphics/pokemon/wartortle/overworld.png | Bin 870 -> 739 bytes graphics/pokemon/wooper/overworld.png | Bin 639 -> 509 bytes .../wooper/wooper_paldean/overworld.png | Bin 503 -> 501 bytes graphics/pokemon/yanma/overworld.png | Bin 1148 -> 1019 bytes graphics/pokemon/yanmega/overworld.png | Bin 1288 -> 1185 bytes graphics/pokemon/zangoose/overworld.png | Bin 1073 -> 926 bytes graphics/pokemon/zapdos/overworld.png | Bin 1185 -> 1108 bytes graphics/pokemon/zubat/overworld.png | Bin 772 -> 702 bytes 134 files changed, 44 insertions(+), 44 deletions(-) diff --git a/graphics/pokemon/abomasnow/overworld.png b/graphics/pokemon/abomasnow/overworld.png index 8683a92d6bfba5de998b055540a7e2c19105cf97..f21cb467abd7a9f005d61b33e049535d8e2d7993 100644 GIT binary patch delta 1047 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 delta 1127 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 delta 1364 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 O7(8A5T-G@yGywoL`fyYL diff --git a/graphics/pokemon/barboach/overworld.png b/graphics/pokemon/barboach/overworld.png index 2cc66dfe63b4a7bcec775aa043a9696dd3bcc1b9..7a5b6e165313d1d564bd833d015d4875964116c3 100644 GIT binary patch delta 517 zcmV+g0{Z>o1=0kN7#auz0001UMu)cm0004VQb$4nuFf3k0000mkzpth0000000000 z00000E%DFBk*yzpv`IukR9J=WmceesAPhuZR;pL6d zUX6L7GU6d+yo;;&3{p{9!g+69I~*SJLfjd&nDH?~E7YieH0U7a+)m-)5%<=8PW8A16+I_u$QQM5xK{?fsFh0THPJIClW4xO{%glF|hZ|=K)WHN@VcgI^*t8 z#DaS+;l40E9}1B2?$BHX&M-Lme8ZqO4+A9JZ<@m*gBkb3X@WM`$s>F=2&NxA{x9`& z!cm8WOOGdLk92DA4!#`163OztJA@S+7q~|%=#2YJYsxsA-`58;=)dRV{lycPWEBK? zA4$n$s=qW*gE2mP&r9Zi^oe%?+$5OXE4wxRM$J7NOMj&=l+zG5x-0He00000NkvXX Hu0mjf-#zSS delta 661 zcmcb_@{o0cgeMC#0|UdhZCTrZ6id3JuOkD)#(wTUiL5}rLb6AYF9SoB8UsT^3j@P1 zpisjL28L1t28LG&3=CE?7#PG0=Ijcz0ZOP$G}2HpUGsSzkjV0)miXujj-6blR0mD6sm)M`pz z;F&o$=(fjeiBnr2L~%V**)rq7qDwsH+g>f$e_(z(+ri&{?_{|6CY4vedwsXsk}F_| z$3&%ik+oz#Qi#2G^&R^H0j| zxqj(2`%3+OJE5>`8+IQ00aL>QJv<^nD?JSU&1-Y!HTauHOT6K{)F(fr4wfJAFaI3 zd6j$D$$Ie_%RVqIu)fn)lgItJ*gHaD*#(JKqng}~DaD_XRh#N3`I|^~F--hak^_uD z)e_f;l9a@fRIB8oR3OD*WME{ZYhb8rXcS^(WMyn>Wn!#tU}0roP<>oc5k*68eoAIq aC58q`xDKvaGv@+zFnGH9xvX;!94l}Nj>rDi2 z7fK-J>QD;h`%gI8%v_{dy*`(5jy{$iGg|&9ka0FR<*ZGdK)|KL5*wT>YK|b|9JTK) z?rw$|FP*36sHjiGyvy{xi^0n6{>5X)3s2rM&X790)@!KO`S$t`svmSEJY-->NMqJX;J|hmj1QLE{`C-sI zD-q`k9afuM-qOT{1i5UkGaM0&vl`T=(@T}(DEd$jiQT81<`|eae7^v y{sJ$5RTPNL#`noz8&6vUwWj!*l_&l|`~qV|861!rL4^Pd0000D#ZW{=+X)d~V)+o?)Q_)kayAi)wLssrq3R!1$%;DTTW0jX0jAa($FD8V0 z+*j}q*K*L2yPVzK=bHE1@6Y@Ho->V-&wq_sr=(cm-0{-BhconXL>^Ds3`twwqe>U- zIu&{XGkQ(lyE8XmJKuA0VMOv;PF^KpiTWL;?993!56nEkyhx#uhuP-KmXHW#Io=tM zA`aY@Ted|aQ+~BU*Y7`vp30l%d+kY$6O-a~dBl;)pS@wZi@I3nvV-mKJ}a!-V77Xm z)Pid&7GHT5s71b-{<&Dc?+R0mTvljJj=}Te|0c#T<%k?Ly3f4Ewz+|w@r1;c_cugO zPV8i?-}acZ#byqN2cziO{Psq1mE9&M>{E_C3&^MsR{Vd^f#*k+*Cy#5mfiZ-P4wAZ z{Xf~S z7z>*-T(4_rxI3@4g7x;ignd3s-qkRlS+jL@@$O`m-Rqr`^4I0ce@Jx7>Mwe&E@L5E znOMH|Z7uT|y~0hKt?SP(@X5K|$2K{7<@!G@;X(Jqlt0hiy0(5Y`?vVU?kmezKG%$z zt+!|Oq-!_lsy`?%o%ZY3mX#k}PfLB7Gk1$*_CD?X3->M9FEDM=2lMllQYEp?+TZN2 z_|KhxRVmUh6O>|AOI#yLQW8s2t&)pUffR$0fsv7}fuXLUQHYU|m5;Hhm4T_YfrXWU l!JJsBhbTI7^HVa@D$#TxX?V-9C>E%J!PC{xWt~$(69C7{T|oc< diff --git a/graphics/pokemon/bibarel/overworld.png b/graphics/pokemon/bibarel/overworld.png index 99e3de968e3d0b6b127a2b31c1b1efd9af6d5bc5..f5751466a91a590f8fb253a00f5198d49639652b 100644 GIT binary patch delta 817 zcmV-11J3-P2%HCy7zqdi0001UMu)eNF&h;x008P=0026d000+od=vH2D426RMp``Y{|KqMCF2=S5O`DzUk7y>D)E}60 zKnT0H+b2Hpi7p()&+*&CxrM@88l7kSA6sC7A^2!Ga702F7<_k#z!>PuFhJgjn+D$= zERb_#37~QaLQR7J(7u1de;q|2<%nUx7p@zG7!x9<7>$4K6aM>X0%rzvjw#(aQbM)+ zjK3g?LJx+5#?{V{^^rm~NoM>7fe1kQXe4!xXa);M1p^7I0`K>$!Wn--$P&{QGgdig zfN%}N9h*Q@4UD-GPac{zMXfZQaD*<$l^mRLMSh6OGfxGbz?7~EkuTZ?XkAd6NZ)IY zFmG7lTwQ17oD&ZVR}8Wzx7!-k!CkeqYFyxr_6uD6Dzo!u0;iNy+`c!^Y{Y9Y8JA+wZm!ztJA(tHEv~)`T zRo)Ef`dgvO`bc1YXfgP1FgH3BYGn`1cyi^KaHfBOYVgzm^SpE2Jinqv=<9XD|m9>iA%VD2*=)CY%iTB2Zld+aP?! z_;|>z+ZqE)EC;s9102gJAT=Ya+*mK^Uqxu3MC2v~E_ZcQbw* zgfo9+TQ^ci-$o%H@&vr-^3e@g2C3f$E0!u(&!IidW_%ZzR@i8UsI^hZhdia6xvXC` zKs*~fao9YrKIIwi0>8<-5vbkrwfI%5k~1!6L(bf5oxkOCqVZ#QzML)sal)^4knUWj zkVew>z?efhsZq6`CjiSiep$YJ$}q!JPfK}~qp4rA6#VvQ<2lk53^|nN9Osnzmj;Yb zeNJJCn3sm0bh1^I3l^W+I|cCi@*H~gm4z@0*Rco`K6odlFb&?2*ESENj388|9c>Mz vsUbm2oRh#IpSG$0026e z000+ooVrmw0000jkx?-u((3H#00001VoOIv0Eh)0NB{r;2XskIMF-{q4F)4O!CDQD zk%=FF(@8`@R7l6|mA`J&Kpe;2<>WC@Bg&df!-5!Er^y4P=>s&t5HVOaIwukg9q`!_ zLs3=xf?!Q@4^Rn3V&n-}x^${weU} z!kuR0f%7pwF!K*_`#}vmhx@~^k+?fPwuJY8uHEry)H4LFqmd=NceRc%-uE@X#<*(= zi7)=@d22x+?ihCj*b<@_F?;vYspahz{6S!_OF3W0PAzXQbck{PLUStE=t#mjkNjHR zUX0);pKx(8?_0^>y;>#7^iOx$1#Om?TT=ToPD zhIRg^ZL#`3kbz5DF4?8j63kW^r8MTgVnE6iBRH~*F$dx2xM6au5F$z=Lg1ymp~4WD zaGGhs5>}*z?wqgSnU?GfcZI;?EHO0%70zT!N_0>xn5Jbz#gT#@EHFM5fd+R= zf#?y{;pGf}0y~X@x#ZJa;6|aiM${funeM{e?U@20jLUaf z9thL9e_*o^ijT}zbIutrkHrR`!(ijKI<|$d;H#_aIT5EK@VsHeVkwlncJ+m?uIJ?@ zR@puGAn-s7Odhs~=Pb z!qKa8u|&i_->$#j&dbr<;K&<#!@d@nLgf9tfm4^juFGAiavu2pEq?YUS=2Fw_IjZf z&;W!5qq|Q7Sg{zrTu@6C$0bHw0U zs+Sb>3Axn2Fvv>@@q8oj5wU-h2{DDv<-m6WeZ%DdMkqBCWM2%_-6`1q=*A^P@_z%Z z3;%Te1`*1ec2O&E1poj5C3HntbYx+4WjbSWWnpw>05UK#GA%GMEip1sR5CI;Gc`Ij zH7hVUIxsNQy%dE2001R)MObuXVRU6WZEs|0W_bWIFfuYNFflDLGE_1$Ix{soH8m?R XI65#erQobN00000NkvXXu0mjfbRDKY diff --git a/graphics/pokemon/blastoise/overworld.png b/graphics/pokemon/blastoise/overworld.png index 80d48304a68fbb9c894a5528444df39dba7d98f0..2729e8bcfb1208a3ae63ebeca50dbc5cba5ed92e 100644 GIT binary patch delta 913 zcmV;C18)592>S<+7zqdi0001UMu)eNF&h;x008P=0026d000+od=yq0b426w+0AGmT|8Z9mj)Mg@*{0JUooG6{+xY|> z2_f(>eC=yr``UkGj_nivH`c#fp~IacwrhtT|Ik?4sCJ>T#{oxz$pL@Dhu-e=c30*e z_a6<<9>-W%Lt&3|dSrLnvGurzIvggU!oSZ|AiX%X0=R$Wd3M<%M&4JW@3{{VgDX-5 zHy{T8F4q8228cQVcYJWq=(xTHA1ABuo?{9z`g4YSjA6oiJO_v}K-3Ai;kiC_Vi5?~ z-R*F&J`s2*Bo!C~-sF3LhF1x=;(LbWpBUz4u_e~w;Q1#|Sk!4;0%776@FxE>0a>6n z30jk%eF%TvDC}|G6BQ_BLdXKkUMJjLa}7`w<}M}r>IB?ytq|52XQ{aZG)Au+qb7@AkWtnHb zwNArpe!{fdnm`MtiR=9F3!e8VVB0v$@-vJ^VV8fizF8!S>7O=$Tkc3Ca(yJet+~MA zZ2$+SvB7tN31FWUNI`1dl@sv)OMVr=@ngn$e9h0}ozGLtO3|}EQ$tTKy|~3iVBFS? zJ;1*rXF8Mu0%yMDRe*f7pVH(PANQ%`Q_bmIgr4(?l(bE7ku49?Dl^y1sKHfWS`SMu z+7f?=uH-gA78sV7z$IWRUtZ2lmY)L55>r|afsgtwP(EI85$Ik5dCRLtOC>h}W`X%| zYNZD_QzDj6)zean#0R}?to=Y02R3KELc>a9d9|R z6*K@Zw;WOA3V~Te0`StqU5m>pPKVhu+UI|8u@o5Xv$x09hi68VRIo~w^+f%X{|SnC&_u%D8eOQV%GAdR3QPy?jQ z=jglk)djJle4v!ihugj)D4bZyU@j1Y&0CIvZ#=q94*!rS7R_S=$ n3w+N$84p}!{}&!#`2k!`w7#Rcu0002CwraKj000DMK}|sb0I`n?{9y%=AsZDi008P>0026e z000+ooVrmw0000jkx?-u!DIBH00001VoOIv0Eh)0NB{r;2XskIMF-{q4F)14T>pI$ zk%=FFBS}O-R7l6|)y+#AK^O<%U0CngWFbON&aOf5l$k)Gl(M^-7^5O0iEYtS8b1!b zDA5$bf?}ogY$?gL0h@&!3e9Q7OVeHq(nC*$o+|X9!#~oP*?<-Fbhn zJCm#++>N{OuZAoS_oyMta%7lg0OVmF*(Q)OiCz3p5TW66OJYmNqMSKo@{aWlsmy$T-`XCIeCJgNawFp1#wm$w^v9?)kgbDXHFaIQF>*O?EQ zXPL9RuS`-AXisc({?+$j-NJtR$bGA&#`UeuPW@dEUJ*%A5g85f+oAJaXW$Xs{P4O?-y!K z&lq_o1z%oZeDm8(umVMmnFoS7TCG;CPca{H1LqkQ@IqUK`_>QLwTV2Ff|oXb8Rv2S z2)3Dd;L%Kj7Oa&Hna8=OoB(0%k``>bCx7iS?YFXhj~4u>IhIUjCy*4h8mGCMRdRkK zW$r^BuxhU$5dY~0thSy(pQZGp8{59PP4aUayQ2P;;tkALRyt)_?z!eR1UH}nHE>YJ zIuBR|hG!8y?2z%9osfc<`P4hC0q-)ic@U#cuaj^#b5kw|njE zF}Ypdr{C-|Sr0dvv0E6y1CzfZB)e_;9R;}4G2MbBQ0sIsnBeP;xB-B&?FBF^f;;A0 zDx5Tc`;wbKC&x;Qa%YP=#!;^z`G~QUD7yhNeFw|RAd}1m6HH?4bB9iUxTK$a1xXQ6_;rl&h>8Do`~kNPgV&S+ImG|~03~!qSaf7z zbY(hYa%Ew3WdJfTGBPbNF)cANR5CI;Gc-CgHY+eVIxsNI_-vs7001R)MObuXVRU6W zZEs|0W_bWIFfuYNFflD5F)~y#GCDIfIx{vaFgQ9eFukSJ9RL6T07*qoM6N<$f~gb5 A00000 diff --git a/graphics/pokemon/celebi/overworld.png b/graphics/pokemon/celebi/overworld.png index 95d372831ab0fd9a14af669d97572de4cc9fc3df..cea230c8e2bee5779826471dec97321de21dedfe 100644 GIT binary patch delta 589 zcmV-T0 z00000007nxRD}Ql01#tgPIdqQ03ZMW03ZMW00000003gS?)m@#0p3YOK~z|U?U&1z zgD?n&a{;kf-~V+7jA>m!n5jKyHo?<&@ge*miD^pHrcIkRZQ8VHU$UI@Eq*_My4>Ko z)Zy(BzaKzcq7)-8@r#Gy&EcZ}dRymzpGANn*YMRBh|8NV=tSraW&~K?d@(B+3p^zF z{18Z0u51d7coTR!m;xhyNntl=%!TH4t$Nu4Vd>m%p9;k0fOY|}biROHK$R4l#4BLP zVWIUf@&tD73@`w84>Sc{xh-(*W-3Goc#BVH*B^2b_=<1Wh{ODKg)(x8xJ*!g5eNO) zizwnLzZztFjCqyzRPqHzJmG^Im$2>A-|NjTB|hT3AgP~$lGQY5OD1g zwIL&_f9F~rGauZlKjI<~o*MoMUIAl%Dm={8AMi{hy1^+^XTmQ$V b{fGSkWb76^!3aYC00000NkvXXu0mjf0_z3F delta 661 zcmbQu`j2&jgd__y0|UdhZCTrZ6id3JuOkD)#(wTUiL4V9r9}-G7+xhXFj&oCU=S~u zvn$XBs7PyKpq@%X?UA=YHe-^vy9+}HtE>l*!(QU)>&pI&k(W(bQnrV|abl-@{Z>yG z#}JR>Z?78qA94_3|4_bg`*wo^Tt|*}nq4#!Dt1(!WMatb-Xj#t`Dmkg3-?E111TZV zaJA0e@(0d-h_!ijVfU=^9kagV?w@|${`&PT3@KAX!y^A~?MODW*mlz)XR+tioD;j# zmv;tHxpR)~b7Ri*FK6%Cm;XKR^nr&3 z3s{!T8rxMy!{-mUPA?jjkq@31635>u~PT>datTu~u5~$X=leo!aGV zrj({8PhpALIGOv!+ASPH^Ix^NB#m$_t) zw0p8?y+Q7R;*;Wc9JYN9mi~PHy)W|_hwJB)wjJZO)GI%hJ>z7>Hj&GW32eK53GlCF zFl{(*DZfbV&)2t|`~l25DGyd2JRp(IQ(maZ%zVdTcT$ScmU}m^dwp%o6}i0Gl3!YL zHG9@>zlWC-EI1-7@(Ny9yq)@P+N(noey=-dIq!MuTgBJ))4V^rzv|o`_O9c@@l$r& z1D(%()CyhR7FFl-{ffA8?xrtuUR`q2^)@?@vgq^lSPhB2#R=J#Q-Ai$cY(@s0>w9`)ePeup% zUmGP~VZ@IMpg=&x^D%zVh_V|X;;q2hEpfyT6_8Y3;*Ytxs6a2o5Avq&MV|zGd_)U? zFDd3pV|>OE)<=exz z`gXkF3-AO){L=);dh^lcl3x?p^HTSR%=asvfq;Os)kj^%ljd<7uUQ?sK=JvYh4^wc zf!7NV5b=J?mz@DIh1X_!*>FWZ?=Q4k2gL?_# zuKf-d@p%E9N##*5F>kygu11M%&okUYKG!HM0mA;z#Ip;)+GpWy&YKGo*b+1j^0)6jft;2l z0KcDF=-|B^dMq;DCND0|_rVbyMuUN$A=L$hCOnpi7ef5X$oF~sBe+bajN z?idI#1aNLCzrEX&&vvZ}hl+ak8@ZxSr<%m73|Z3c7o?o`b(&OsqsH;%%J~=d*NAi( zFJ8N)-9d4~t{Ljxl9?uE$?b&_?H~WUZ9M*7wr1w{dx2t=pRL~S{kZVNtk7jAW=+>g zj%zx1^L)s%n)c@jyFSP$Ef%dmHo^F9M5EVi<|_}+rA=JkIYB7nz>VKR4m&m*e#)5> zreWXuEA4o|^#JwQpI0BAJJ$Fs>p=7Z#-!&$1y8>}?zYQje|6q|nQCQm$>nT3T+fOj*)ty?fUv=i5I`0b%CKc`Xc6qYa_|{i+ z3TfyrHn~&V_S#ze@a+s#HyV>U}8Zd;afLnaNUjOefBq(a+sh>+&XS`#v?N z#jfZvNKGxAiiwZU5fD{7u>L{+Vp$)agdTe-A&q zwvg*a`&n7DHTy4{#l|Ono}HVl<;x@bj_U*C?E0RoRi45!x+njCI(@zFrB%}A1MW8V zl_5{OZEOFu=tcfm_rh~_*ri7-dtAP9aC>>H-&ysiZTE|s&_}$6>7EXXYgOJKegESB z{toq;9=+D<9DWnNA97u9J#GGv9gq3bj+RKvA4-}FjC$1)*NBpo#FA92BXACF~^Xf2D!#bI=8|_S65ePj_VRNh>Qi+A#}KO$1KNmqeW|dZtyI^+J$w9+QGBI zaYlt$%y^IE&QwE=gKmxBn8T5YGQM`~7fH!#vA8}bZ^Ro<;e($BlOy|pzg)BM2jboQ dHwp;-vYs~U5)m~__#XfO002ovPDHLkV1juFvj6}9 delta 549 zcmX@b{GMfkgeMC#0|UdhZCTrZ6id3JuOkD)#(wTUiL5}rLb6AYF9SoB8UsT^3j@P1 zpisjL28L1t28LG&3=CE?7#PG0=Ijcz0ZJ%NG*VT0v*;@mkj(pKk$cNbpF6WTm?eb-{HREHtLj6f-!v@7m@q_h)W0*&$)zB3fp>{eELn@`fXiFQ#+|Y%KUK zJ1y(L0}lQODIUvgjhWn6HzZ4!th{GX{+rjeIdvv1Yv1WDmOe4tY|RVxRkuIPvRL1&UvC?(W{q~sq6A&ET#biRJFu4q9i4;B-JXp zC>2OC7#SED=^7a78XAQd8Ce;dSs55;8(08I)u29C6b-rgDVb@N44OD~gz%gF1nOY$ MboFyt=akR{04Ge@DgXcg diff --git a/graphics/pokemon/chinchou/overworld.png b/graphics/pokemon/chinchou/overworld.png index b552e544b7380ce89512d08fbab561adc7844c9b..65632b4528fc8a0e49e828911059309f67a1aa0a 100644 GIT binary patch delta 607 zcmV-l0-*iw2CfB=7#auz0001UMu)cm0004VQb$4nuFf3k0000mkzp$h0000000000 z0A~O}w2`nMe-KGTK~z|U?Uvz^q#z80O^Dz!_x{g&oq!`?aBlai?#~fxri8D>4nc9- zR;*aDV#SITD^{#n@jnD1p7HJMdz|YTd;G!^LGj1T4$=sA4NV2wU52IF`X0Y}FQtno z0`tc#-q^m| zAP6Z~r-*RV9`MEQ0{9Dte1mas1TynabQ}j!)ANTsd|83TxDFrouW-YgFgV-odx7~w zPWBkM2DccuBJg>6K#mgh?&)yPJ3-iYED3=-9Ea2i8!)&fsC*EpKcp0avsv__2z+h@ zrCbeWe;P_$8XX@6aH!l80FV0(cYF|RC8cPiXZ91Q0*_lgDW_!qQo7MHDCr|t^7L% zj3B`&kI`mmmH=f4W(jDCvAd8NB;9k`5*wC|f6ILhaFc-N;1egEnRLwXGe%_&&3*F8rrdIW tDf*=QySP3je#UjL{BVnpf))QZegotL5}AsTrD6a8002ovPDHLkV1mtl6+Qp} delta 800 zcmZ3-`i^aageMC#0|UdhZCTrZ6id3JuOkD)#(wTUiL5}rLb6AYF9SoB8UsT^3j@P1 zpisjL28L1t28LG&3=CE?7#PG0=Ijcz0ZOP(G}2aCuu8rN$YxCPc6VXuV3qX%a@b2e zeO=j~G4ir0bClaCY@V1UU$5cm;uzv_{Oy$e{g(|yj>p$&Y_5IeG38{s(SqcYva1%| zF4Ab4Y_)Ket3m3{xa+~8qNUm5Yu0gmV{4oIJnt|6kJS|$=N?(R;>N=DQy=^1)bD@4 zcNLq(QBA+XuHZlW9bYm|PO~_~)80L8?&hizYr%G*b2@vq8;tWda`WXKIxZMiAN)0l zy)mlS@$n162Rm=StYj|eE(^_Vm9an2XRvZP&n#uejKfun7ERyvAiC)$L;3UHY}>a8 zuPF}9ne=HHgXh63!E^mhS9|WY^Im^YY>#{ePtE;T0u~b&tbL$(pXWgT5#tYbT8{6d zx&C=iOn4Sw>U#Kku$S(^1!vaf9J}Y{#Br(KWTr{Zs&~B)^0o?98eCyJEc8xE@ac?| zb_VZi#j|g5CTR)J-h8Ff>0qy>q;=wrFDlZO{uvuM?OuG1Tq*f(xv#&Q(}^X<9Bsng z8$VU(9huI$Gf*<|VcYAp6(G2!!s z7n3$Bx7GXlGq9@G?T$B`HhbyW^YV7@C66S}-uQ%j*M$BlFDGrDxZcvxmT^Z2+Zs`e zCm#y;ZR4G=^l0+`xuVc=HHjAd7t+%@2K|n z+Q*w_9lTY4wtOeE+4t>c|7|0x^Z(3z_}~{y`vH5Q{fzVTXDcrV-0>5bmQ+hzBT7;d zOH!?pi&B9UgOP!ek*?6)`TNzsfm~Qs4y#-gH|FUJY6}hKKQ6`3`^T234ES zZ`|`i&;^*{eH6SJthu1|U$ZgAmsHrw!~W65_DLS<8!NCvpmPB;-UQ|~P61j$Y3d`e zjG%J0F@Y7HBEAQ(8(7x+@)--?0W9KNkVfDEALlU&ivNIyDw-zn0zkkq0S6{G80_+R z+gHI73JC8q+~DLGq{W zUy@)<0G=N zXFd^Z%FPJ$OZ|oK5g7IY>%0RFeR8-#vsw+)#Y@13TgSj)q}^Zb8f^f>pNfBa0SQZG zP*|wP4etfXBE=8{tE;3gw!$3v6|m*@t}`fY{TXg}Be3dBi>&%8q-mkmOK{_xcY-WC z4(~ckkOFiYMdl@7;e>xx!UCM|X8$JwV5V<1Zg?%g;^uv-*g){&{T<3i=D6XtpfZ>i zS;{+dJ4_eP0W0oz2=bvlrnb{ZLTkWq!)w8oZU}>EC)QL?bqC~th1Y^CvkRXTa;;gz zdO$s|0v7Holm$4wkL?u!l!^hz4Q~WqW0=3b$ygb~VON6OaUOrp3${g^F?c2Vc%_UT zuLCyRN|U_Eqn9{wzYJD*CcsKhDU^k!ag|4;icjY7hAZQo6nvIg4|khI=6ArBCyR8R zw%U&NE*y==g}_#rY*49R<Ut5BEVsRvO$_06r|&m z5=zURnX_>M9v>H|4%nSE{P-ej2GQ5jJvSCi3qe{o{IJJ57K={NS=SV&m3Z<=vR3B(c=&Q>{6>1C!(!Tspi~m{s0na!ec9#hc=l}o!07*qoM6N<$ Ef`iW7O#lD@ delta 1195 zcmV;c1XTOy2!{%g7#Rcu0002CwraKj000DMK}|sb0I`n?{9y%=AsZDi008P>0026e z000+ooVrmw0000Xkx?Zi^f09X00001VoOIv0Eh)0NB{r;2XskIMF-{q4F)1KK}co_>R?FnY4yXHBzDQW>tb3^a~Uj zy~Se&4;fz&baSW0{Kj<{3eWZrvf!O413` zy!;kE5ZObBvq6lH|TfzQIcw4ka)dMouOcG%R4N4RN2>+zP2#b`U#Z@93Gg0jSxdaU{3VMV z44H@BrhmEVbIk_wRp4!1EdN&~2pW^|0^GuO?M2vBZACLz@Ka=O$Sf2Ko^b|$FAfWT z3P~3QRqZ&BqcyXC0A_2@v%zlQQ+eO#CMN?}QsOxn1{Tu1I_+Kl^0lYXY{K;yH z=M^m#hq1A47aFa0xUjKR$p+U7HFdKxS!8dxa9-_RzwG<|*X;!hoE;YaTzdf_(RS3y zjkUZ0!|YJ=4*GXFRgH5a7k2-DZZQlj;J4SOr~UQm_F@PE#o1xu&*u3&sB`4ZsCUu{p4Qii_Ue9d;8>nJ{Yb%!2z~= z70Wtpw|k(eRX`OQpiyzbWEgl}4PNxp6{RbtcI9BmoNBk-A5^h z^?EZX=JmStmDqLAhIdEcO)$)urGsw&SF0@7glW|uu${o^DA?(FXriESk)vbsgEV8? z-6TgG40#lDqFR@wGYiarH^OCfr1QXi3KKQfH1K)^6oF@0UopZssUP(Hjvg73MjK0R zc|c|A_!S5v$RYbO(;CF1m;Mt&{~hx9E95IbW0t9B48Oc0004VQb$4nuFf3k0000mP)t-sn9!hjB@q}H z7^NpWP%t2L_AjD5g341L7t9Em=FL{AY(aPGOV0B-CBD#6%L zTSANjdP<1H;B3IYgs6890TrI)>k?A_IpA{M2=Hx+Nf2@7yoLvkB#0L)Fb;oZXz}8~ zi>-ojA<~1zduSELRis9$n@JBEyb}}g0-%5g<61xn!Ac~99Vj3n4XZ#S13I1w%m-f^ zMnQrPwcyRbE)R&c1o(O&M)Uy=U%nHNEWHO?4bqF z)q(=H{7a-0XiKnma0IORJ%E2+;6Vp}+=6Z>=8d%h%sa{k$O4#(K)sMqg!@HczYtM? zy8`q3m5c)1YeVzRtFQ?-h?GCPODhm~-u-Cg{80$i@YjSad9)isIc9(9WQ!knl+cW` z_oL+7a61iG#ED^4AjAM@HP@0YWfj}0N zz|8B1@o9cH`8A#%z2@^D%F_tU_{)0000c#16b4{HumP`6r~!`(QPB#54u+PDHJSrd zLMhKBqNmOVY_7JFfyd|pdV;i5*7gRyOi4;?VAxO07!HB}e)``dMMiIB%ya-uih!6v zaR>mo9T#hWMF@Yu#}IgDUuFlg2?u5mDGh9mhgCY-#0(%EZQ=+C)un5~1dIYW(m?Aq z%uAqJ(7GrdVct++Qkbzi&LxyY!kqyCbIcm5g}YBHNJ`FSA_x&PNF>K{sVEV#s~S-# zr9M+4HULqn9R;Six1uE@Hf@VeP@vws1h%1SaQ8jtT>yVvT{i)c1wffe0%Se-mQ)0Y zd(iN&hf#pINCSXH0YDx6X&nH5oiYfbaUes0T*RwOU@Jm^I&-lDwE?@!B6Axh$%7q> zz5++$Ze#hII9 w?|lW~=C%Faj?Na|{`v6x=a1(oFrw%m9$xlUG|mn~+yDRo07*qoM6N<$f&(Z2SpWb4 diff --git a/graphics/pokemon/combusken/backf.png b/graphics/pokemon/combusken/backf.png index 06330c53001c0c59c37d9486a142b23c754b95d2..87e46ef1466f34d69d44edf34066faf723865efc 100644 GIT binary patch delta 573 zcmV-D0>b^q1j+=E7=H)@0001;w}I>c0004VQb$4nuFf3k0000mP)t-sn9!hjB@q}H z7^NpWP%t2H13B0005VNklPshKE^>{n#Kt4 z+!!H1A_fKL?h6HQeiW!eG&f{ZLX6XdffC{*XDiT@5YzcK;O^z6X-Oa|j0uR^v?&S1 zWCt{@LyISd9IP|&IiIG$46VZ00`GGkl4OVhBC-(x6p$#h77#+P5^6~GI*39VRzZvm z=(s0HK5%Oo1%C=0T7k{LCNCYamH=)CV#FBW@Wq1w4FRNp?UrtC107KW<1^8fARmnj z{T5)&8|Tmi7@C3tw)}%=5a>&=&R`E%^IHI;z>OLF@)UGIF)yqgU|vz)02RPg1lk)3 zRk&URwl^Xwa8=Olj5{F|;R>Po?ooIP7l@SKJxePP_BgBp6Gwl50@%)SO8_Id4}Y^M=TFtt&(hod5PdHJpU zPpm-V%Kt6dA3K5QEWZknlf0t7(`98VV6FhI^9M@40#WCanRKOcX*~e*{OlS?-sgA@ zrEcU80ybnp2`qAaNqk00013M{Ml?001yhOjJdf(4e4bNEjFx_=rGIFd(RK2>8HQ z`0$W`NFb3>6@R4wNnQW|0ntfBK~zY`-PN&f+b|FYU_yuit>?r*MwO^&6+wqoOU4Rb zI#xm{&n2o;X9G4@NAAGK=mYc#(oR|1H|Wchl*9&xePZTt(85pu9VrrG?B$FP`v6$o z1w?Tf5CvS`O@a#m*oVMX2*7*BVna9KKzw*N1+Lfu=6{n-#4ruu9v~s+V^hGQ1QM7- z{tXrl3F17@Z|@fhN~(obo&zi}Z76WDx`lZugi0kLA`WvUuv}_NFwSd4skQz{iO2#( zt+y1I;m(Pcj99lV_JRWSu20}=s)p#_$E*v0S8tjCNCTiu6#>!#e4SU+Mh&15pZAjh z@j3|r&VK@cI+n9K0Q@>t5U^>WLV#SvvrAwrLx4JSQ4eYhw&z9KZ|a$@o)hZegOwKa)rE!{6Z2RAh3Yz&R%|z zWtb^8M%*|sa~<&40LFpN7?CB+Mr_x*x_R&|ek#D&DUsP{m)YjI-aP8R55K+-6=Xke p-1}~HuJGp1+uuKbJcj?d{{Yyi^KziHfN1~#002ovPDHLkV1kZV?=b)X diff --git a/graphics/pokemon/combusken/shiny.pal b/graphics/pokemon/combusken/shiny.pal index 1395bd8536..cb95e50ccb 100644 --- a/graphics/pokemon/combusken/shiny.pal +++ b/graphics/pokemon/combusken/shiny.pal @@ -2,14 +2,14 @@ JASC-PAL 0100 16 152 208 160 -160 104 72 +120 37 17 24 24 24 -248 136 64 +165 39 59 80 48 32 168 112 8 248 192 88 248 240 144 -128 72 32 +79 12 12 248 248 248 104 104 112 216 216 200 diff --git a/graphics/pokemon/corphish/overworld.png b/graphics/pokemon/corphish/overworld.png index a930c891bddf3173cb5fe34c504cb40ac6146c7a..c134bd7350d7ddebe8883c7d1d631ba9fc4c2b59 100644 GIT binary patch delta 882 zcmV-&1C9Kr2&V^-7#auz0001UMu)cm0004VQb$4nuFf3k0000mkzp=>00000007MC zGD-jd01#tgPIdqQ03ZMW03ZMW00000003gS?)m@#0|`k)K~z|U?Us#>oG=W8aqO5} z*nR)k?br#wF}GD)wNizpI~K;o-4ocq>e$xK{!LRE? z9ngNXe@E$}4|nq<@?GJ75BgBxlH$4mo z^a80DkbDBja?wu)J7CVDs&+8`-GSH%o%FN8bqr%CjvcIeXs`o&wsl}IHp}G~Q6zIFb z4yc6gpuZ9>@>Q3ta@AKr6kug9!1FxU4Y1;jPx{GV2VAHF(n3{vmr;PV(m}r%^qkBo zt2$uB-*wEEJgnt^6>xdI6Q}oU!9*)Nzb6!?gMK#H0ZFs-Wu;Q(vWrPA2mNBO0j9Lv z0PZ^3EF2v+KzhjwGX4|S%bp7WKIj*NE1;?kKQy;RJ?K}1lP^Rx=mv1pF$5F}isP`(?fr4oLqPE!v+sqYY*(8eZZj3+3p*gg1Lj$% zD>f;pqdwX8C8f-zSfPQyE^*f_btDjb{1)Ub8vU6;*GqUm#^$z*ikTeBEss$nViGzi12D?5< z^aSkLDqff7J^=ir`wJZ{EJo>0!UUI_)vMY*F@1kcmJmQTJ^C^i^VN2ldjnmMzw9kz zs?|Grvk#($O^OpPZa!WLa@G#S_iy^QRprLu*5se0dE)QH4<(oxY!OO5SO5S307*qo IM6N<$g4W53+yDRo delta 984 zcmZ3^zMNx%geMC#0|UdhZCTrZ6id3JuOkD)#(wTUiL5}rLb6AYF9SoB8UsT^3j@P1 zpisjL28L1t28LG&3=CE?7#PG0=Ijcz0ZM31G}2R9SANV6$YxCPc6VXuV3qX%a@b2e zeO=j~G4ir0YhR5HJUB5+uAb?hr;B5V$MLsQ{rztnNVLnIZ9k~z`_?Vv7T?zeLboiI zbXsi*4%)rYDW>7j-s}&V)&*LR+FC-6ERS$!jS&=%XZmXWcI)dKnagw8{VrGNzZ5=x z{`~(*N?&5me~tO?Us?Z9J$&n@^twkJwE|V5J6y6n5)C86ZA3LFKDLS32#hCHlY|g4SUj>fMp)<`VX+?+j8;8C8l2RAI zvPxY;>58Q2bSB3ek+v_^s>&)ycpE)v;|y`K`C)S+u=lIT`?ZquSe^FXSR3wiUs80p zgX)pr?#*(mLa&}F*v!_XEHJ}CHOELSxn8sQXu-uCrmITtu01Ylcx0g)!9Cm2^w{6W z#YfYR?|h~t(Bj>*u~g^x{gC#Jsj@3t{vPgFmUmgS{8Q7^g3hh8UjKMpu;@pc#Q6%b z6)oioYwpM9zj7>%PCjezqu@06*~0~sciS?YySZ;JBS*aN{al->*~@?3`{udgCW}_$ zhT}IL)}J~u$Ea}iP4h;D6n@o(X@{hyIsQm%uf3rtTd>(?ek77KD5 zfAV*WPRJcqRk85=<-NTtt`JZC8i*9fpkC%6RaXVai24C=Tg+C@Xy-BA_j``Jlbjk?i-R5LpruRW@$8u-6 zl-lEs97d-*mfgL`s-F0;o1;MM4#O^$t`+$=mmknx_xGs=7ptm`PT>jJYMcAJWR@N( zn#0uX7{w9fSsNvENw46-_UxAPE+T~&wOD?%e6m=!XGY`n*6oKUcZxbGeAto7Y>^wj zdZzF)p$LKPoWe7I)kmhaW@w+ztedx6QswsI(_2!lQxpphc{8q6=$KnDG4R@c+v$;c z<*cWt>a<^JVx3dkxI#lojf`w@@W0$vlt>1KYLp|BU1=2Zw8SktVqjVHqg7U)m zTnL@=KlRIpx~qRCe-&=uc4>vOV+km8sFt`!l%ynmUq; zOOi10?1Yk7LTsP|X6cs)1VVby(=&hpQl<$YrIfkroKuPrSxyvAjGWK`4uB=Z1{E-8 z9ybRFgCH~=gw7z1(wJN)@lz1EbJy|7&pPYjKmn~GXLiGX^{GJx%+NroQ#e4@bvIr2 z!Wqzog*kP9?*YxC>0VW`&WB}0i@EK;btFUvFF+mNFAq4Xm>wQO^^Nkn4uMEGWv1hN zxiw_DiiWK}*VMM2-{W)_n_hz^n;5hk)oDHl5K&ZU)jbn9fsgIXZ%u-k%|p z6%+%MaF1T<1JLXTfJ$%UMbFW50ZQp!9S+_zzxu>~;4wDfEA=bff|vRV5ZfoVgZd?U zNPUgb`jiU|TzY7*GidAfR`D&o))#<>5EnC8@T75oqc#qh+V_(`>XE_DrvUmA(q8j5 z7J3KFwbmR0B3h|kucZYlVdEg`Rl?WwLf1n;tyZ*otu5;Fm438uB?RAh1h~@CnWgrK z`Br*LpP?`iYvXWB~1VT delta 759 zcmX@ddWda;geMC#0|UdhZCTrZ6id3JuOkD)#(wTUiL5}rLb6AYF9SoB8UsT^3j@P1 zpisjL28L1t28LG&3=CE?7#PG0=Ijcz0ZOP$G}2I6VJ8~|WHTmtySp%Su*!M>IqW5# zzOL-g7J995jp24K&X^H4` z`BLwPo3Gmo0aO2F+wMi@oQuT^wo{o98 z^s!&XGn>Qf=Kg;j?_blMdEl0$?yOH0Gai3ao%ZYGqu3|?HM3{fd&bN-Hm7t?eagSj zPSa9l(|6uHe^i5En$7YPk#BZ|UsPaGJhWH3J26;&j^IO^w>x`$8$2xjzS+FuMCKx) zYl&-H4UW&_R{A2N6fwPW-ai{yO*|9@XYtxbgiyr)1{oRMDdZCok9Pgv1f@Trd+#-sPhDPvm z#~k6Uo5c52Y0>dFs$Mg!#KN3JGg@+PulSxR%)`2?Ds{>K+4C|L4v6(v=+tuiw@x^w zwZSicOZ|rqiR+9#7K`jxO<-#Ml4~P)sBSrvJ)4!oTD{qB`u~rs1%&FPOiP@5yJElh z?ahKrcjn*z+&^Dx{j6=7_P@i}#B6H(Z^hp^_Tl;Kw{Ojr=WM#MHMg2QjIE;h`-OjY zH-G;6JN>e0=9b_+#%JXH`@cW=Iwdr9e&K_%um{HX&%K)Ws9L!0>SyssYnCOM1~^Uv zrV-T=*NBpo#FA92yG0f424S^2hyhW{oi(d%q5U;k+xc`Ry+I{CHZK4j%_HN$Kz-GjGyr{ ziebLwe_MfB=qvvH_)@{YZosU|`VFUvy&3;bfsw(?#&p8Wxab?ko^uJXF3Tzbx(Y_z zEX>=sF?YhuxJ(!eobd-O7^{r-yeWUT8;0#Bc+AbRNQL_HW*iY#=@8M_FY$;+eO-kU zF4dLpa;_(F#x(+oz;&Unf+6QDupMKlbLqHG(A(NVcnB#K~oWh*7N*++6rg zpV8j5GTH^2aOiXUF6(@yeQ(xj!0!TS+s-(8GcpK)v>NA}?J1mb2;}`q(jI^G+_6?} zDZKEKMuBmWia^2zomg%vUKK(>LLoLVglnZ|TX+6jr=2m;^e@7}hzmj8^BE z7!l64;+4UeKQdCWD zee7B#81R%rc{K`*2oROmYPf%?cwsOJ4DwW>ctxDRNw2x$rNJ!XC8do58zmU=B+wm) zv-l$^a+ef3Tk*nR5(pdGBGTjRATk>W_a!e3CV_5ylD>(XoBe=Cf$ZLI5qBK#H#}m& zL<1IW=PF(pOaj@){AdN}@IJoZ`-Awx3xiqVp>#v0xK)BK&jOG4=Qw|k&-*|^5g;0X zL?o@?rNJnW;tJEZdzqLGglpn7fog+EAmJ5QTd_&_ve|K%apzGWu_X8N5q*bD^|WV~ zyIgy!cxg}tlIDQ5z`Cc=sn3T8E^y@G>LAT)R@uWL7)^B?SVFdzA}J> zqYEz$dd&>S6k{>nI{<$V6IYLP(XShv>`q}bkrK(5epP}r!_u9rK%`K6+^L!>0Pzi{=P}GU z>6M2k;ZG-pnYRVHSfI{{eab1z?nMaF{@6b@vVh;@|L6Dxc-t>*p~mZQ00000NkvXX Hu0mjfn?c0T delta 1044 zcmV+v1nc{o2#X1j7#Rcu0002CwraKj000DMK}|sb0I`n?{9y%=AsZ1e008P>0026e z000+ooVrmwkxf4x0b)x>L;#2d9Y_EG00(qQO+^Rh0SyKtEK5JcVv&g-e>_PZ=mc4)*4gPe^u4b}T5|+8v=(W~pHLr59|IDuDTB*D; z6RX*5_4gL=p%6Z)=GA+A&R1sKQm@yvtGOeDIH=}Yui-?q8z?bWm+p!W8QkM_*lzo-88+d+DJX~yQE65^rCuq{R^PY7x_4a5bz0CHT^_ZJg(Dy09x zZjW@u!cJKSYGJ_nI1EI9i}>Nb56D@d>gfFw04Q2kVkLYbxoXeV&!jyNst7Upxo! zYSzc#7#`|CB^+WwLzj22@%t-REM*g@Mi=0@4{qM0Io869f1mNMb50|M%tB_^1S+9} zXBOEj@n;o)e;G1R6R58Vh4u)0QcvFyb)3jq30eH@_t!I;9IL0t$BAL415xON5$8Y& z{jQ!Tw&fs)@JI)$mPkn@kHFmpJD(^Rh3@p?G7jCYUa%6=luckl!Nr!ikRPHGD)vGX zh}Yym26#~-f4B8`kWctIqY#{UdhSH&f`l0kO(3zj%PB))c7~vtXFa#Xf%LoFP3UG& zOt2qr#)%U#4>;pliHvK8tU^lJ`dwNGxvQAkdBAY!U!6fWam>$GPeAu7W3qGPxYT2L z51dHx&Qaczy6im(av`Biaq+tfg4gy-tOs9Ob~b^Se>1VDGaxfU3`C~IzqF2QZqB~E zN=&a4VtrKgrA6R`MpEq3Ce+G>7FAsMa7(n<-wmuhbanx?=WyvzZ#}wz|L6Dvh$WS2 z4ruk>0000bbVXQnWMOn=I%9HWVRU5xGB7eSEif@HF)~y#GCDIgIy5vZFgQ9eFuq_P zuK)l5Iwf>PSaf7zbY(hiZ)9m^c>ppnGBPbNF)cANR5CI;Gc`IiG%GMTIxsNLJ*N`@ O0000duy|~7Y;H3;Jh&k6nh|O@Ro=e6N z`Oe)G8Mhn^=te)mA+T_*l>?WIQ!SOisRjikT;-KgS_=kzf+Mn7P-4P=tvSU$?wV#? zD+JXB1uLBJuM4OT9!zk|sobr(0yBQo@gDK3=W&8R1b)ObeF;YbZo2~q0y6$p18hNB z(@(r$1FrgHQH5<0PhrlV?K0o>i8Q5-!i<~1wdpbEwgv?x{F?%7KUjEWUtq?~hgLFy z`0cJh#x-=K=Ic*5>0&W|Qm}uM$@uQXw&V>@i_bVDlIWMq`-o${=q=k|Jh>%{mc*Kdwwu8d=m@!wEE`%00rtT{kbI6jzdUv@D`OQX*8->sAe4*|# z*755&;ak1zsu2nivA@)3&R6&WXL>rudCom0{S!h`%!;S gWjLW>+TYqQ&`A*ymNLh{(*OVf07*qoM6N<$g5(7i#{d8T delta 690 zcmdnWI+bmLgd__y0|UdhZCTrZ6id3JuOkD)#(wTUiL4V9r9}-G7+xhXFj&oCU=S~u zvn$XBs7PgEpoU6jC7jmw5WRvOi1zXa=vVxBalHD_A&G?fwcl<&zu&raw@#a&pS7|7giB_e z#S3Jw*myg8&U*M@&X${n9YPuGrR!9@F0H9w7ZUn>iK4|JZ^kW&eI2e|Rvg?q1zu80 zIx0oyr@l6qUU6`eiSdz1li8MKxrDy`5Kz$G-X!iIH6unzPwQ5`jKZO!NWBIVm*epp z_RKE6^h$L~WN)~+S8n{v8)=7MGJWp%JGimjoWt<{mj@y;x3}2LNUBrF&@TOWu-bK= zv+B{q^%o@r%x3O8ZuEFdYuDmaRgbJsg_un*tI8=}bbEfppB+nU^-GL5&-$UcZuRy?=4i-Zh7p z`T^tm3utziRXWnsO^sR`dc19c(d{C{M}nix4)df z{(70~^;co_QJ9Q$lh}~d)>^L);!$EsIMc# zdtmgA^w4Ap6`CM~{S%2e9)1^z7E?v5G=?@9c zW1qk@oAZ^hJe4?HXjTT276ZHM}|4m}PjmQwM2DOA2 zz~h*5a|qcm5P$Ks&gd9_+FXFrqpGyh%hsR7l6|)j>1yM2Ahduf`su#IhO z<3GjjMs|pwYk)#%_#{8?G1YENTC9g%G|XF! zv39(+;heEP-hV{XT#jdhcx^+44H8_?^tGDMkJollGNHcJP^-u*=&59^wuIVUWIYz; z7-~JndVSw+Di=)cuHRL(hNesN;o1GL|6(^)VKvlmo`+fk!!Qj8JnF<&U#WUcyPekI zGd?w@f0i^u1LoQSq2x)IQC_)<3e-9jFF50A({>VHb(+vwCtx^(q@^HknL$J9A^ za#6jEFCt3AHrm5bnyp^NOSR&9vYgIq(tGGtb!b=n_L!a|qWeiuz9G6PUlo|_i>{b0 z2RP(ax~et!Fd7&>5@KD)p;=AR3WAyC+8qv^8f$<07*qoM6N<$f?Q4#N&o-= diff --git a/graphics/pokemon/dewott/overworld_normal.pal b/graphics/pokemon/dewott/overworld_normal.pal index 3ef7077292..7b8a1ef4cb 100644 --- a/graphics/pokemon/dewott/overworld_normal.pal +++ b/graphics/pokemon/dewott/overworld_normal.pal @@ -5,15 +5,15 @@ JASC-PAL 41 88 105 0 0 0 32 139 148 -32 139 148 +112 112 112 82 189 189 49 49 49 74 74 74 -115 57 57 +197 148 41 250 247 240 82 189 189 46 56 92 -0 0 0 -0 0 0 -0 0 0 -0 0 0 +177 113 132 +115 57 57 +36 43 71 +112 81 13 diff --git a/graphics/pokemon/dewott/overworld_shiny.pal b/graphics/pokemon/dewott/overworld_shiny.pal index 8c28ea7eda..2e3814fe22 100644 --- a/graphics/pokemon/dewott/overworld_shiny.pal +++ b/graphics/pokemon/dewott/overworld_shiny.pal @@ -2,18 +2,18 @@ JASC-PAL 0100 16 152 208 160 -51 76 90 +32 88 72 0 0 0 64 176 152 -32 139 148 +92 92 92 80 208 184 49 49 49 74 74 74 -197 82 90 +204 163 173 250 247 240 82 189 189 -128 56 120 -0 0 0 -0 0 0 -0 0 0 -0 0 0 +79 61 97 +200 72 80 +120 24 24 +59 37 82 +120 64 80 diff --git a/graphics/pokemon/doduo/overworld.png b/graphics/pokemon/doduo/overworld.png index 5877cb1e7bdc76374137af4437166e1499a31791..17b5b68306765574cbb700ef1dbae59f4db83e07 100644 GIT binary patch delta 527 zcmX@fx`SncgcJue0|P^`Tl;n(#aJBV?!>U}oXkrg$6#Wjd_9oH1oyuETLKgnNKW)C z1JVjm45Szsl6JoP1vF@ur;B4qMC;q>y_1?1cv@~wk-z`HQ@`<1fXc#f>*eOo%Vf9S zUzc-*@%5cmp{v8zMwL!xDu^mfZR~hcQ+%|Q)uuy^U-`aIV0}LSp6wf|iZVKV zxfjiQM#Mw&zT8bds}(!$2LELXW0~Z~X14CV%faPm)%9*Wvx{!8Zi_!UYyNvL$s1J; zKCZm)jx+wbH(kE`Mf@MFu)lfN4)`#7%~Nr>CnsI;sBFFXlI8Z2H!_=S8!k31b>IkL zSKwlly2f(RyiPuJ4aci`j@c9M2N|%Ox4UsiO}d2fX~c>d+t*ldDE*K6)AX2Q`#--6 zEC!#_TiuKq<^{|AVt5+vcl`cDg|dGZM|$nQ@h`h3Y+5IM=OF$}g-8)_NZ9Uy!dS+m+SSqg{|4 zrM3U2ZAEZ)78&qol`;+ E05f{nSpWb4 delta 674 zcmdnNa*}m|L_G^L0|UdhZCTrZ6id3JuOkD)#(wTUiL5}rLb6AYF9SoB8UsT^3j@P1 zpisjL28L1t28LG&3=CE?7#PG0=Ijcz0ZK>*_=LF5xUj&(LZc%=Bf~=hDE44O#(@fn z9St4@83`Bn%0vT&7?Zr+T^Kr8Wj%l#_7YECUsv{LjJ#}0#`kr8T$`9BU*GTP;uzv_ z{O#n6c})f)ZT`agWjBqu?%dk&gQ1!+rT5)5*S+e6{0xSc+dt>^?+w!0GWS78)y5-} zw|x39|7W=<*M}AEwy)fdzEFL9++{x_lBXX0 zdRn^koQlf*Jr5K%{ZZJ()@_rk9&D+#&h7Z?Epz=UukC%#vq|(7)9ZnobWPW5#MB+W9O$-8S%2xHho6cYChJb_+{~DI7KuHK=Ru)4~|9EK5<%7e&y`Sm*-x_n%wkw zp5ma9YS?(#$4la}$|)uF0{8G7rt5vWl`lOQIO`tN>&!mXSm3^y_s3Iqzo$h{-u;iY zFK2F4>@oTYiZay_*NBpo#FA92bP0l+XkKIC%{< diff --git a/graphics/pokemon/donphan/overworld.png b/graphics/pokemon/donphan/overworld.png index e6afdd6f2f761d781fcb1d286cbe93b81f8c1668..93f70fbda7b2c1b87eacb19f0a8bcbddbdc15d3d 100644 GIT binary patch delta 765 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 diff --git a/graphics/pokemon/electabuzz/overworld.png b/graphics/pokemon/electabuzz/overworld.png index 8eabb6c8ff40b4dbab23a0e3ceb2efd238fab2f7..ce6a5a78837c2f17ae6ba94d926feea053709aa3 100644 GIT binary patch delta 698 zcmX@b_KU}oXkrg$6#Wjd_9oH1U+dXEkIF$|&c;BigPar*ziyS&$PT0^5=;BwDy>8)DF z&GtRqsnc)!?M5<|0;HHv(%XXV?es{Z;wrT6@2I~@)l zz7%ZmL}bE_3LP1zw_h^j=6pH4Sn*ZSlN6!P3V%PJzB5O~KQ};>jA;b()8=uQJVbwRo)lTeF>gQg)j52d3+5Rv4^(^L&1x z<&@`7=NFVdSbIQQ=JpY;C5yKh1%GCHdE{=z#xF{5=1x<8cjUd$`of$`8T?7BWhVc9 zb9lxt_jep2dRdnH-YtIQyT>!8x4iF>pnIcX`9aItDFXd*BF%Fulmps6^7hxiQ;9HI z{w{XW`K=De-b|P>>4nH@t&m#vcN|CF`Lr&#+V^m)gYgS4j~){N8*tVlaGG zYvfsb$z!*_=LF5xUj&%LgB*&AfI7Jhk!>wz>60@ z3=9k=Oqj4t-`#>mU2WPR~_!IOzu^7R6qE{-7{ z$KPH(+c(=lfFVJ7d%3|A#z*pBxwb8SbM;2xxzy%w_gvrZyq)u#>GuOu#ea>bJkEx_ zQe7X^#QZ$bXcc~m6Bc#nwxX__y6edElS_B|UvUp#wA(Y`FE zIGJT@{qDLQev+F`uHvgq-eS|SGt{K{;ENwQGo&}2cjH*;mvd_>@7z1P+uAGd-MxQ2 zTS1D|;gIyM&0((GH^r|%hwuLLbmN5xv8$)~^UpO|Hnx2Y+5OnC{viFoR+;%ylef)%HM{TkP0M{R zEn=G@4}PqY`CR#%Ev1mT-n7?MF^l0Edm5|v2lpea;z$2y|6%()dpc)l65}&qqERhz zjVMV;EJ?LWE=mPb3`Pb9nO2Eg VLvPdCVjiFl22WQ%mvv4FO#pe>W$yq0 diff --git a/graphics/pokemon/espeon/overworld.png b/graphics/pokemon/espeon/overworld.png index 158ba055c9b3a0566a469bdecca8ac25000e6ef0..91d6a4675ce5890155901404bcc3be2222b8abb5 100644 GIT binary patch delta 804 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 b`la;^PgWk@-@!2`00000NkvXXu0mjfb54sB delta 946 zcmX@a-pMgRLXw4gR2TuGsvE{~s42`Qy4skm%%FrT0I_{qUSWJG|Ai zD0z|GOv!ap-)mGuDkuG8c~SfPTa?C}d3_V>nb~K&XOpQ=KeOz;=dOA6I_v%>e9~T+ z+Mrmo|4`@w(f6%yy{9gh?%ABpep%ghp5?-)Tx*oA?hvzu$?*Bin-?x3XW(H9vlAn*WY1jS<}+6MSB`^o8G0 zVOZeVeXE|^Qefwfdd;~7hG`Koz1lZAxWzjbM;?%2S1;L)@7mk^P0WF((+g#-czg5MS*C8T@@}{SB zz2g6B<9p{}!Id*YGaj}@GAz$;l{vAeDc0?36U&QZ;kJDBTMh-)|2xX|XU5K_2XdMw zrf0MYc`RPN{f_J|_XhVh8+DY}xNbYBpDB(1Ds+GS8KD*1BHf+1MEtlV*P9hAf5?}u zwY!07=HYdY4;K{anl7jc1zNP_Mp2`ys8UF@;v0X{3rzFHw`z*7XjKhpxn;6LtN6^V zwToVDcy}w_cd2C3vihd)=PzG=c%#kXS(K_>0)uhNCjFN!hPNGNeX3d}{!ng}(y@lq zJK#~Kl`;{qkhKxV?FFs({8QZry?V9J!D%Cf85A_`mSTK7sX{ZvE|cKXd51)t>jy%{QE36DoRCauAs4RZCnWN>UO_ zQmvAUQh^kMk%5tsu7RPhp;3sDk*}4piIu5|wtu>!YuG7oa_cgJg1El zHlsy|K0ozY3ZLLx;LqiV>5Vfs{;!Q0?mK#Xydg7;F@JE&z~P^yK3OU6@yr7-FR(FV8nl?z>K99 zv?k!=YLe$SaM<7Pj25=Ta!LIoH03^O8_4; z7A_UM@|U0I9@paE_)#*P1xC&*=%=2KQ=SsB;?Lp}C>#)FWZQ27000UA07*qoM6N<$ Ef-MjU>Hq)$ delta 677 zcmZ3-I-hNVgd__y0|UdhZCTrZ6id3JuOkD)#(wTUiL4V9r3DQb7+xhXFj&oCU=S~u zvn$YMqOZLyW0JSK3quF1tOrmFdx@v7EBiA>UN$A;`#L|aP3)Afzu@WO7~*mK?N$4{ z+Xfno&PHQ{#pee`9QUqf|eWF)M?--pb?pc5&atEey7B*Xum* z7Mi``76Gqtnpjb&%5(${^e{r?lUdHuZA&yZtX$?`+bMR zOS+kMJCyFx32afNQ=84%Gf(`)UhDSU7BqUFGx6rjQ)@bMopgF)9yI*)|MlDVbC3QDZigAHA2;}> z>`Qo)`?>5f`}X}$|9?AIl0)zVTxn`*Yq!=@MW=I&eIy&e27=Q-~2+X86J^dRQnaTOeC zybR!q-xk2~1Obp>$8QTL55qWw-*FxvBN9ZWIt-O#kEaPBcqwqj zL13ttc86=u1K_o2P6zK7FU!nC&&d&h1*OCl{iWK+wJ41iVQ!LWu zB!eA};RO#Dt|tjNIMXln|VdVhIxj>r&a_Y=a95gl4HxY73rqAPI+t z-Co?@<2HVzIbfILIiWC9Ec$T8OFN&#w+JSw?k{*ABhhPl&C9ylt;kZ5;2w9ub&>FV z>SC=F5#|w#6r6LcN~(x068wL2aeu}04m5jPb&ql_*yAb)Lx!R(to|{}F~=ww&jREq zx~{mophV6E{nw0(Ub7sp>IV|B!=&0HJ2zZ$71T9Y;kjCVB{S6DGM)u!>&2F4+vDP& z_Z}8t!EH@*#R*eH+l+8wldkw17urF3T{?pbUh)6 zvuCjeJB~Sbf9#Glyb99tIkb@$VKv`*EF+-gmu3Ls?XZIQ%;CThL8FrY=%k*@5Lpil z`5Jt1!A(%T(u>YEI4^&DifCIbr5}zmuoS0K6SSj({md)9y(NykeI!TPLeza?4?U0N z;XmOJ3a)|(B3hZni++toiafzb9_SEYTE&2`@sI|sBh_(<3f_!>1)D;WU=S)-38!f? z=!N>j@c|&BOsU^I$NJ2#0e-j&mT!AVr5BZEySiU8e)2cLi!FaVvAQc&H-5dyJ2W_I z`>KX|iOmcic&z4s3u>KjylAw8?7R`6wdrLg!d_L%hs=#5$4TVtd&alQs*c60q-_WBXJ25V|z^vNpJn@4OY@ zyW6%YJo%3Ui_CkRB;ajxCUD*ozxa#VM?MSiGjnI6evf;tH}>D0``_9A0M*PmSx;`K Q$N&HU07*qoM6N<$f->gtBLDyZ delta 1168 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 diff --git a/graphics/pokemon/flareon/overworld.png b/graphics/pokemon/flareon/overworld.png index c32cab6f9d2ab66830cd2cab9b97d87555c7a93b..df7ff81da970cddfefddd8183b865b59fe1b80f8 100644 GIT binary patch delta 836 zcmV-K1H1hA2dD>-7zqdi0001UMu)eNF&h;x008P=0026d000+od=Hq)Use(9(jevBf=kzAp z*O%}4xVh^(s))lEmt>-UDPS3_3F8?NtQ zgxN9T`RnWaC!&ZOWiT2bL5v1dQp2}zazre@^|#oJ)7^}&MMMSzeu49byhXwU$_=11IVeNv4BCLWUNmX=xZG^;}TI?$jiq%Usn3e+hB>I z%vO^q9Sg((hrk4ZAp{6aZURGI>Q8+XDAf(p<8A^e2a^PgCb5tm3ygVDm{UqzI!FJF zlV(qU^(OV1l`3EKf1kN`8o{KNI1YdBS#-vsu;}AI`z?l?G-by?6c~{i_6H1B! zH9=0lB~-UmE~L$|z=SUg46ZyUqGUILTu%}Bu;rXMVv|7L1}`_=!r|97v~3HOSlHYI z#=P{%>eNmnK28x;=V^)1M|s~%8k@thbZM1i)vE?~D z^y!g+K5F3cOFtKbK*dA&bOp>fblsQE<98U_lZ3~F?39?%>{^8`KTiXF!cMBjF5+zB z8HfD%sC~=t3E)6#N&s{JL373~GmTmm>hm5r^VVV%knAhtJj-8}oEp!0Raji+a=p>j zO8`BN=R?}de@-fKQg`8v#pnQ7Bb6ovt2hE?Jlc9lYy}<())Cfnl(ilrdL&>&-g=15 z0YjLjshhxRu140oPlN&I9-&ly;mI+S!B?&fQhl&OPoW z+l@yzfod^6z3<)xH*Vlut7z9*q`u3sN%`-a6JATuf7Sn#fvcbM>l!2V@4Hvw!Yz}F zQ=$64SKQ?|_!Z7K+6V=M1Pokyml>SVxx6c(0^SsKE`az2Dl^b!;Jw?DA$5_abf*j` zp!S0_4ogBAN|C;@fUvF7Y7S>^t1o~ O002ov22Mn-LSTY25|3d3 delta 916 zcmZ3%{)2sjgd__y0|UdhZCTrZ6id3JuOkD)#(wTUiL4V9r9}-G7+xhXFj&oCU=S~u zvn$XBs7QTcpti~!!->*BHe-^vy9+}HtE>l*!(QU)>&pI&k(W)Gk?+9_@rj-C^_x6h z978;gznywM`?i6|aaDt4_tRxElV>lzP`&2T=CxIY)jBRqQkO4@eb<=st}096!iCSr zu02j@pR_-@{cq&t-4Ruv3U*%%UTF1nvHbhl->+61Ijw(Ox@U&tiD2RL(ldDH&8SGL zu`iUL|3mxWf8h_cb{X>vf=m~F`6TvFobjAx{h#9z8wC%jYc6A+GIxuClkij_oBJte zEVkaKgb0Ng+DQmA5o6i-obdXelIGN0;-k=()#U@JE5td8Sy+S*40{^@4Nu@Akee(K(|~ev0c=wGjQs zGpD4NXNOk)c{q#rx}0S^tAE$|V~^P$ujDTauU&Ux_LU!D^ zT#98f-F(YPG~uIme_fpkpf=_I9D8Hh)e$R{`FP(L|&L_0FEcIIWEe-%B={_gt=ff3J1UeYP))?lnbD;{H)%Cc&!pU}Cm~ zkk@H=D&)Igr)J=P j$PlvogrXr=KR+citrE8mN&hxKpbiF4S3j3^P6@p)_kXwV5hPt31e#6W+5J;y%Cvd-IQl@)+-^VZr~R*u{xScw(K6p5 z;`|~1xX~ih9b*2O1D>OTL1Rub7Z`C?nJSEURX4YC#tG}Ij%SCQ7nOeAgmW)UaRZMC-PAc8Yq;*)Ycq>jLdWBrxn{ssPZ_dO7B?6H5o+Tak+IBQydeZfPh zQo1?@1l$C25{5vQ#I6BzUi589kZoW=z?o8F_{PetCotkS+Ey+lCS_i??wC-+J%P2v zpwg`D%)fBQz#DTyvyI#U2b`4F4GIbRwv{wp$53jx6JwI+MJJ@1t{OS%g%6Sp7wrap zo__*PNd$%wGX{UHt4Pl0L6mdD8v~)=1lCFkfvGbfUAS)n?AFx@f6O5;NpXBCu9lQ9 zqlh|wF|c@81%=8|RCIrEV*o$)6YnDQ+$QM;dBf+@m_wk_Ng(ab7{VuKu2%!i!@F=c zh1S!fI|C0o@x6`EQ=cW;>!P!VThDpG@rR;D*eQXPtL}e$t`-#T`42IIj|EFZY8Rk_zqy0Iw;+qP zDTKGWG|*y!4tZ%h5ao!DO%s6O&8f%Aw7uUidXDx-hKyK$rW@dAGE{&ba}_BY#qZs#CPY0IZg00000 LNkvXXu0mjfVtcNG delta 1015 zcmV z0Dy!50Qvv`0D$NK0Cg|`0P0`>06Lfe02gqax=}olE#rCq5Sp9b#;G>W~N49MXXB9J+KeZ6J8b+&?3fjx89^8G^Sgtt{zuvXYYvoeI6l zpOfzQy@wrive-p+x20}~?bO5gjo41XL3cSIVwKin zyjU=1)~Nallp|8o%4>U!Itf`(4j6{YCr$lC3RaC*eO^x@RP=tEV5*e zXvaPUB5USLofy1e)F690#QCEUI~C}g2b{IAN>799NzZ&m1=B>ACql#KXmfv1IcfV9 z)4qdOv6OP2JEFAxO(|2)p*_>k#2y2Y)5JyvE%RaLz{|6Ld^h|+iKYlviDI&VzUMt& zkoN7d3##q!g=u^l9~6yM#`vdnw_&B{($Ot&+K;X z#tWFSGxr03raZt>(p>|lEf!#H4pr`IcD!Q_^vPou5V15Z4~ymDc9I3;Tx%>4fHf;= z^)^!GKKIbzF5DHZL+iLQX9bvffLSV=+n?F>E7zfbgq7WVrIFzK=D0dTf#JMm)pm~e zZo$Krvc;Z3dX*qx;yD=vq=vcqPmLmk0#|1WcZr&R$HP7iwlwO>nCL{G2n}Gr`KwwY z4eKEA{2S$#6z5PWf2<|CFrOg2E7nQnDtNGSlZ9^qZzYQ6wAC1}TNIirg$)r>LItJJ z>b&P{PK>0+0}DxF+{&RFpn^0+DdKLTu-&fk3hw;{LCVr~1)*?#0BI9}@SL2EB`-$t zEd>RCaK9Bc9{%n3$T7G7+wC{1zY_J)*>8OS001R)MObuXVRU6WV{&C-bY%cCFfuYN zFflDLGE_1$Ix{soH90FVI65#e6CHl>0000bbVXQnWMOn=I&E)cX=Zr6AsJO z0=6HIuYK)n|Cf=&hu-1ZJRdpdzhhYCM*o<9GWNHOoa1GxVaCa^n|mKVHyBaLo;k{*t%)WAqYt zfl+*nodvh4f$u2M;KwQiF;MFbGT#h;Jfo2je;i{)|^1 z5W;^Vk;nw5VCO`+NiVpZ$N3&Jgpi4gU#9@?8}5A*MT_tzu#GU1Z1KU!5KzS$on}1g z;ZG^4qjt!Y0+~j<> z66x=l1!q~xg)F7S&sTgsnYQ1B0MmbP^PqoIa0sNf-SmqJ*Vrv?-~rMbHOl(XLyf?W zYlp@|;vfEr_-hno{Xq(DWz;C3Q(!e7Tg;9>aT>g+4^--=o`ZE2X?XOG8`F|p>IF8u zf1col6C#|rag1#T3hpL5r-!vPciK&$bM-l?_Yd8)l<+)^@@H_Z()xB{J%3*M!h?Tv zHZfm3@HD(L4P8nJk37TY#f@LT)Z+j$fvIs|J2sV*OK#(Ks~-#jpH$UXS?CpWLibz_W@EL$9!L9>cE^kr=PLiaE0026e z000+ooVrmw0000jkx?-uQ?bqO?7BD0e^i!t250OcEkPHyQ_RgE=78}8J_ zS8z3y3PEP?0U^tHP`Y%^AUgqyK%Mdr<&M0gDHS@TW6{2a`rME2`@VO&L+Jnb?}Tf0 zcC%}5O>XfQgw=8F-E5xyvI4x=#BOh^gx)`YEWx7tv58y9)HX3fj^mivqAlCVv2SLl zV`S8dw;XPx_r#Nsn?)y+%4wq9xaV z>A5$C@KkBphF z2oERG%_;pc?Wa0}%}?E*qeHG8mR$Zm zxCFQx1I%9m+^V)&9|4xOPVh^bK7$Vt!1X4pgrWtIpZ&m-GvV;+L=H8Qf|)vG0GNJU zj>JdhZ?J?c2|G~>9WlC-|yC!RYGMg$% z$rt3}U|PcB3pg%3v<}D}XD1C5ok>I#hg~K{C$C{!>`!c@!RoYu{;}CL8SZ^>bhy z9sPb3Y5}F8H)d1i$Q6R!mA)fW*6w)FTd`59dvx@PK3P2km7wCPgLu$hyS3+k(~?|!kJ}F( zJXZe`EA~<*W^C5%-?hHSQ7O)mTar&%~Cy=a@Joq`AS( zaD(L*&&b`quT6|?D==}<6*K>9<1=x?Oo((L^^5=j03~!qSaf7zbY(hYa%Ew3WdJfT zGBPbNF)cANR5CI;Gc`I%G%+hMI65#e>{u`e0000bbVXQnWMOn=I&E)cX=Zr(^b diff --git a/graphics/pokemon/furret/overworld.png b/graphics/pokemon/furret/overworld.png index de8beb85169eddb8849b0bddcfbfecad785f57ae..aa3a72cb4e8100ed577ee1a8b5ca9df477a6dd61 100644 GIT binary patch delta 824 zcmV-81IPT?2i^vd7#auz0001UMu)cm0004VQb$4nuFf3k0000mkzpTy0000000000 z0000000000000000QUI03jhEB5MyCZb^rhXAOHXWAOHXW000000AjiB`Tzg|z)3_w zR9J=Wn2WO9AP9zo2=x7*xZou*5%gSky3?6ux~Hf8iTOW?V)i&b@rh5|0^r>aeiaGx ze+>XBrwu?f!p^0p0^~wG^X^ z5?Q3^(oKb=6R^1Y2Jqn}=Ouy%sHH8#Q*;At_xA@zISq=Nu>-t+`@-yQcs;=bWNJ4E z9#Or2t&k6h=?V{E3ux|$E&%6Y9TFTsmS#{QfMtbv0PqrafCuXhPX8XjEn(6bSeil6 z-{;|BsF0(d006-*wAPt*hhm1_>G8Q=JQ8LA0;xq70p}qyy;sQ7yF)GPvO=ai38vZ% zcT<=i08_#QsNF?>&_afu^L4$hA<$mu<5deq5B%Tu@F&0{0Vlw6e<=Gj_^WuQAGW|s ztB$rQ-Jpw3v)&hYTYhE1tG}yb-xAb56@XhuFE#2P4`8F~BBj=a;p>PIerL&634I1_>)+ka>OG_=!^+EGM}`T()6$CDdCPLfHV6>t(xK$!rn zy!D3 CP;hYo delta 948 zcmcb|c9VUAL_G^L0|UdhZCTrZ6id3JuOkD)#(wTUiL5}rLb6AYF9SoB8UsT^3j@P1 zpisjL28L1t28LG&3=CE?7#PG0=Ijcz0ZK>*_=LF5xUc}ooKfHqVIlG1!h#DM3LF$T z3IYsXy!i3|TQ^XOficP3-G!lpRn`N@VK4FI^>t-`#>mU2%>KODR%v3EeEob+7sn8f z<8P<=u6|@7(zd#F*V=Dgucd=`i>^L%OW@$ztGCvQMQz`<=qK~%!_QT2eOn^5{!Bq4 zn_BCE+5O*7o;<#A+SmPmOqc#Y`|t77@4w1lJn!zX3BCPJp5fUPzq5k8{F}~Y9mr>} zx47Q+T9Eg9fMucWBHo(hc8lk?6kiBhUaWVVb9t}e54HxuMT}oMWP}cw8#3Kz5ODf1 zZ;P_m!uc{i2i!M0DhDYI87)@w z*~~joZ(wQK7;4%>n(GXtLwq70S&-)Apf>VKruW1VN9ui$lwEi1N) z>Xj9Cgx$HO)cshPsb`5B_l6dM-!fajw44atwj#`CUMq|5i;B$x|LenexB{o_kS}Tc zrTcu=^P6tj7gCPb{(b&6)c%RJ#Dgr}U4Pn7>mSqKdG3^@wl^>ltCqM%l%yn-XD+pNhOf}hHLpK z2K`Sj(17nPSNIH+x#tv8@v>DJF z6r3K-3Y+}qkI+*)e@&A$$^--M8&DF^n1c)0&yP91`oZ6{hJgkvUJF8lOaLAb>NlXi zfwDfKCscMWNI*G<1CUJuOKpDm>EIxr@_aA=_3LK~4rkQ9X^Aqn?Erb>Zfum`yvN=O*XvTc$MFE~w9afnabB{;ZQLf1KRYEMBvirvsl#l5uRn z>{rC$1!Nr67rVHpwb3AW35>WmXy?UFcA0SlaZ}l*!(QU)>&pI&k(W)$#L*+SbYiD`{U1*k z#}JR>Z>L)OF&hfBz5UAiC|2>-je>@|5-xK&1OgtrEK(C&)Xn5+!65Qw4kO<|Mhy#* zy0yn&r#K6Q94NVO^RLokwZfPD`dbC*Tj&1^Vcr+T`TXwLS1;51Rz>XOT=>+jNzz+? z!(@YxPAW4aw)o7svYqc!?dcz%6rQd7sJWwl=B$ISWRiA7A8&T;EGye~MYuRt&{pfY z&6An#Pi3+`^v&FO(ecK@hcBi|D>ScM5%}Wbiuq|Vzu1;OdvR1tK3~RFTj<2YvW7VI zOV_!U1j}DAcoY1?;>`r>Z`;e7s?sg2w##q!?mdcT2U%IgIsZGJV8K#y`l@RJDL-ha5eT0_A2EdPXnyF62^`X5bG^xGDHtcYd4 zq~(SfH$KhTobkyjard8;@Ct9NsPC3JZ8LqbY0r^^HG0pOpUY+EUXL+{@rjiMbVI(pOTqYiCaT|>(5T01_n=8KbLh*2~7ZFMm50z diff --git a/graphics/pokemon/girafarig/overworld.png b/graphics/pokemon/girafarig/overworld.png index 8c9402494e2de0f7d77d41deaab550158b74a221..d20cebdf13c5c469f3f8fb96c7cf014a70043829 100644 GIT binary patch delta 714 zcmV;*0yX`*2dV~;7#0Wv0001UMu)cm0004VQb$4nuFf3kkzGHLyc~awNklJSD;)I3T6;KKCLp zrDP}^@d;u{{%NVi^9DoCi>JUQ&tLH8%EfMwE@zKIn?TaMhMW)PX<4a|5qEXvVhS8_ zHY8|A45S{@kc+lbl6A~o4%^v6QN<~oJMrZ7B~D+~uo`mKw=91}DexiZ2_qAZV}oT= zxEH8!OgSGSK);H>)f;^>;?k$3XdU{)W&UU#TqG}!iz~ChQjP)@jwz&kXeFeTi_EWj zg^W2bS_PVu4k729Kq;Wbr?m;>6xSTXUZBPaQ#{TB{-b3HRszR-Y681BC*>YwQEA;; zoO6KOt9yYOM{peg-fB4OZ<9k_GaLylp5=Wc%F~Fj-4a!x z<}%#IO6^Uj@zl5#K+Ie{{5ejy zJqLarGq?yOsS@N$)Ld9VmrII}d&SUKBNT2X5Mspo`7P%R@&?rB0F^eEY*9MH3IG5A delta 856 zcmZ3*wu^m&gewa(0|UdhZCTrZ6id3JuOkD)#(wTUiL5}rLb6AYF9SoB8UsT^3j@P1 zpisjL28L1t28LG&3=CE?7#PG0=IjcznW$$k%b4Wt?!wT)D(eAM#$Mv->&pI&k(W)G z|7FBhfr(l2_1T^-jv*e$-(KFBcgsP7{ljCi^@>jz=P)Ne*64b$AnWQ1=1n1`FM>X? zNcLP=xk*cU*HqTY9#qqYysPyF=@daf}-^!QAw5N1UnY`hP zwfz70cJq5Le6Eo5PkFNKT^+yaDelHa-Jva9TidPE^9m~$$;a0>aImr{-#PQ#`<1d! zsGYyTp|p)@tBRhV31cqPopr%zx_VSG_gc5BTT|7RxMnsB%rv}PXjjPl!EIOkk}YE2 zQr7j@1^+5Dn6lHO{6=}jlBU3)UB{AZbWD?%ot$yyW7#qL9ZY)!_xUjShpyxm>vwp? zw6s`4Lu#R4=cTmxcY4zC^#_+#K3;Oywt_`^_w30B+Nb;rIVf~7XJbmx?`RA`S&fNX}-1Y7$`Rn!n9b#$xRVv-mCvwbu+hLHxAj!duC1f+Ov9E@9X&!8!}{CwYCVhp8ay~Yh=+gm)ZAO>(j37 z%M;W5m2|UNw!@EUq4(G6Wv^_{C)S-xcy3BnWeXa4*(M{ zgKCLuM0!a|Vo9o1a#1RfVlXl=GSW3L)HO5;F*33;HnlP|)i$uOGB61EE>#cJ0nw0~ bpOTqYiCcr>szrx^8W=oX{an^LB{Ts5C%bVU diff --git a/graphics/pokemon/giratina/overworld.png b/graphics/pokemon/giratina/overworld.png index 8caa512dc11966582234527959cb20e34139557f..32608f12120b0546ecb48652c08bc3adf8fe9588 100644 GIT binary patch delta 2304 zcmV+b3IFzw6TuRY7zqdi0000ahER=>F&h;x008P=0026d000+od= z00000005?(F)siB01#tgPIdqQ06+i$06+i$00000001y4wEzGB2!u&QK~#90?VH_#L-#o?{w@D?`%eRaUgU=NJ1_={9RN)i ziVk#m&RZK_e)sq*uWdk%z^^n+JV37lYJO3F?m@c?6$e${FAcCW(ksqq1o|F-=T!}0 zZkcZp=!-$d19Umy-d~zXp*%;!Bt58VU~U1t@uFZ0PdqLbt);&UULIf5Fn|1ilUGFm zU|Hs81k@q8@_iBD4qo(I>F4zkfx3elufX#JLLDJn@+4AoaE)JyuSbxEFMyqsg3zbn zm;7CT6}EjN1=RxR__BkOr=dHaW`m2y^FhT|CxKn;zVG%;Kve{8{E2FK-#p(w?topz z*=l14@((Bkc<>DYPWKeMb32%3-7t z%x|kk0Hfwh4kCY-FG#2h!0&l4AP<`?0GC1BQt-*=)2D@p=A{mZfSU+-?ZA5v;!Oo# zcVH%3H<#riAN_2x{`@Qe4Za)z(vQaqw|QRfQ=qNj3y+8=UpKB0Li2oo2V^M`Up90g z&C>SfU>_{OUpL;*vRz;)q&O$E^FnwL~X0S(>I z@W-c7Mu`L3$AXh<2eOw<_bU4clg01OU+$J9Ff?&znYVT`vCTdQX$EnTM@)Bh&OD50AkCQn+L*#|S_fa(;gIOj0CJe=uTb!Xj}AB! zG`14ddPze@#tS7f8{193tdTKgB>j{GJn?rvIVkZ{t`t{t+rICcjgbuAN@e8DL4hyg znIjAvIG3q^?-kTV;D!IRacTdDB$CC{@CkxFKA+FQI}2<4;z@TaJ;?9}e{oQi5RO-3VvEi zq`=GY_jv31Cgc&A47HyWq$+~+qaK(ELiVVCqZO;s2M?fdz!CIEO_Db@Ng*5feWiS# z)~w}%gD0=Ty^na1hZ}CZnPBxot&5Hs;OjuiAf>*r6B%+we}$-xV+z=M-;kVI>^{MlK3{-V3QoEJ zlz3eLSbyHekprn>B#Cc*0=fq;4%9qtp*Vd@3h`I!BV9Ip;q?Ik6TU`}jhq*7*FV3) zYkkn_MFS|y;WUJL1SI{R{MHcwbSUx#73mFKR{*}@4g8@03W3KBWfAhh1+6v&-}1bF ziqn80%pG!;a!?3)HR%X|EL~ULZHrz)baIXma=4r(xQ+<$habE?0LRY{#)AwJ5am^N z6qt^-|02(&1Wi~j;SO(7%H{vQsl`*#@#LNIEK3?d|7}jHNQPNL=n4Smu$&i9cvx*9jTU7 z7h%FX+E3G#>n74r+U2U<_d5rTtdTvs&~x$|C;4g?BDZG$|Z{gNVE2K*uKmW9CKjeKVSr3`kYm{jr(dj&iL7Ie za*z)+x>Ar3iSG>H1ipF=J6Ym?`vi;uOuVm$)jUn0pC2a!PcG7XpM!|GbfxY<5HR}% zf63Dk0RArSg7*fHr!A*)P9fa_rT|7hI@CTsJT7cx0DGU0X#{z^-@#2ln$x&+rGN!5 zAMXs{6zXMPc}!EMfa&8Wub%y(x#4l~BK@Mz!HIP`cnCQ4b>Q*w&H$cM-0sWfP65;B zBj5X2O20Ay<3;*KpMw+YcF@<~zvmG4o)e5e#;4}Si{AFf0g$jiuIRsI-~Dfj-}A%% a>-G;-sBcbRb4Jww00000026e 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 delta 597 zcmX@hvWInogd__y0|UdhZCTrZ6id3JuOkD)#(wTUiL4V9r9}-G7+xhXFj&oCU=S~u zvn$XBs7QTcptg#*&3ir|n=#4T-G!lpRn`N@VK4FYb!C6X$jhdrea0c7VPdCzeVM0= zV~EG`x0elznjA#f9vlz2*r*vaTQ_HFyYRx)uS{Ng3*-)%$Q?KqVdyNJx&7i<-Yq`U zgHsQ7oIa=HHs_>ITE*S(|2OcvGS13eHZ$#CT95X=>ZolGZ-|~N(>j=2b~{caETZST z(7iRd0UxA*6a7jK?9ny8xc z{`LIvg!gNi|G^noOlEB9PkwdFN_vURos7d~1uFMW{*(^ZUDj$cD{=R-Uf1pm6Su@~ z^pNA68(5xr{mbXok1uWrwrR)`XN+;{qk?*2>cT&TX9qt(Llyy{fOMhX@p8VKYn_7#Ud^n^>6`Ya3Wt85m4q^^!-?kei>9nO2Eg!_$aQi-8&# NJYD@<);T3K0RT2R^^pJo diff --git a/graphics/pokemon/golbat/overworld.png b/graphics/pokemon/golbat/overworld.png index 9ec0ecc2d8e72dc644e47fdb8f0659771a3b26e9..658023601d46e08e40802f7bf8764850edf6b7d9 100644 GIT binary patch delta 784 zcmV+r1MmFa2ipda7#auz0001UMu)cm0004VQb$4nuFf3k0000mkzpth0000000000 z00000EYVJWk*yzpy-7qtR9J=WSkZFhAPkH^fb9JL|DFT{6Kipsv=5z|=)s+MS!ow6 zuzS0G;uD|v#3%l{AdT0CzjXh%`JNZTOZsDspcK{nukqRb5HI;N4pUV;q?9jka66Y? zYAT@ROFoas0tTO>tvy9v@Mj##6PtN6P{*CCcN|16C7FVMsQ|@P%6T4E0uFxASq~Td zfg}Af3L7;sM++f{LkFo;0i_lwRY39UIN^xT5?csE{)|KYQH3)Fy_VwaKX7cI6fps% z<}W5dzywY>=1&G7|0@Gg=fMmFum8ZW47@9#^FznOf;2Oe0UA<*&d zST2*n0uFz^R|9D74qR0%-wraX!28{XF_14Q4?HIU7I+9e^GR%HpK$$kKBsOsO|4j7 zy+>61%7E??_ZF_nDB8m2f!hNk?m_0q68M)5>&rahc6K`h+zhNv+lpIy$)E;u;Mlo7Y3+RV3(r57)*FZ23CCPyXq5P zcP-}tx}R}$KF)Ucif96)&bM?NkF$fxnaYVl}gdex7^&7_IUp5pL2Fs`}!_?dt*=1hsVdi|4#hv zAy75v_|N&rHhi4;`RMWIRZr&>Z7k@FO5MRCUM;*>=!;}?Nso-#nT>YyK84<7+Ft)v z?yr!-AMM*^)(6tp81FIC-;gW4VcyF>!&#hZ_k=4rYx>K_KWRA@h2mNiEsQRuS8$GbVumYEs5K$JOVs5VGI5y zGS0ktaB~KuW&DTT4OhY~*bi{CvF{(i&Jedj zZ^z$xKjLCD4<^X>-p|b|e{%Y+SFTC0!H2p@Yna~h9<(~>9k%cKe165lOvlzg*Is3% z5IH$zW$oeTmoMD&-ML8lUP-NWT2}wkHw{gk$@BAHT%XbUiA(<}OZI%Wu&LXlHLuUs zY7W|e@J0$py@c3;lc5fpx~prf?-le-U-eLnH{_mLaiB#oukESV>Q)=vPaEnuEMBmE zdE+VnLsPPuuNrtUFEzh*(f!~>AG@R7)%(So_H_SlX8QcHZvS-svl*KWo=QoZEG@5C z@awjqyYj)yJ9P{y8UMVUwdaAZj>BE~-}$nV7m}P0KCTO{lv`0>Ba@b67+UcBaO~lm zub*>!{ps7N#bLaygz-yUXw|g?uee!u?pe2d`xJ@xOY8RBc*@wMyR1yD7 ztp^G`@H*e_U;){YALX;J82%tQuEq~BFBaAS7P;m(d>G(V8);PxTPMp_#T4g&^L(|| zKw3IJ^^;`Bev;2wzE4cO>*PL2LPf7O2$gW(@I`BX;NlVzw=in*BzB|fZypN*$Ys9z zE8D%#0%~Q1iN`64LUM!Rq-$fM4eap6-5U#BSwZCp$_ptIC2SdO6q+Qv#R zTKJughCw+pfUdp!oy>|0P)^`r$N<0L$1Gq1s?S;c7)Ntq6jICo54?FcV0(&>nM=E5 zP>Ueb1pV5u0a{p4Ny`Yx!#Zkc4XILpsuhZ+<%yP+Wp+4VfZy^1^M^n;ZGdf8lSVj> zKiHggqjZo`?Y|l`tO_mXqxX=u+sX(1I95pFF}PW9W5TYrz9ztD+sMd|a~<{$Rb9k` zukr!uWnMU=mNt^$QOPzqZeCyL+Run8Gh6;PX^U=_sQ@Z(Qvv*((E;z0yM3bvGVC_Xd*S|MrO04MmCf2Jo$>$;%- z8XcFKWHUlR6$=X>g2*DESPUuXgm?J``VUq{$+ETSR`kry0av2IB9BgDoatqJb)vO= zXvqr%yxC<$HU{8uBkZ4Oc>3>u;=}PiWS?I$e+$HxNEUkXcFvpBz!VTNMw;m*d`jB$ z@Y({SjTaWc!u>dhFwj}MqxcGPhm|MhiO1;qK417;(v0>9Lb&B*O~gh$ro&AEL>dzz z^C^|^ZS`UGtmVgg4CeqnHJJ&P902{p0GfHwlrd&S3a;VkZFQ+}53 zPxmdO78oFX;qxg2_*#a4FVVe+diUO+HXc&Z^Q!@t0ZRBfTj8Alu@vFJNy6Q*Vuh=^Lmmxrw9 z>mC_y1H2K~c$_J!qel70#RL76UvniFqx-pA{+R`EvxdN!dh>UG*YNQudcMlU;yEqO z7wsJ$#^bK^^9jCk zF%{3Ns$Nk;vkZ}MCdk(gO25{Fu*pA#1(?hP8;`RwgM9Q1o1zg0fM1WH5HwoU*;Kvg zOW=l~>#yeA^>!a{`Bn`?)Ge;oJQF%Pc)O6G7Y=55$( z)qg@f`*h9l#T(8HapK}%2Z|3uWuM{+jv0TZOdRi;4=$Qmm;g3PD5mE^2{h z2o%6eGQ~iaWD49zQj#6rqgbm2f};FAB+z%f``^2}cSq)OnKEU{lqplDOqnue%9MX8 zQ>ILrGX3`@!QY4E|5QbzNH>ZfhUfLg-qLs|$ucxUvpx(rs*BB~@pyo1PHStCfi%wG zZ#k|rePfZgG#+Wi+-@}+o5f{0Wt{UCTZV%_w#Z-_|9b}0IEl3c&x1dUBs)vv6KyuZ z;P%eOlDwnVAj8~V{p`ZrfDG?A$qs+hcr1xGxnVZBvm7t7UtKg42^`yy5 z<5PpX+%!zn*(zP#3~p`V4%7HV#8EF|d)e?T3k@k_n1$UvE~?q8Ja)zBZUIrV>rhX#oXFM!)Egin7*7@C?1Yt6iZu8>qtj#y-nRug6*k>^e4w_SeoXb>=J zBUO6B9|O1AiB&#FOUC-|rv8jxp{Rj0Zn)D7dm9+nXWXCXw?~@7Zyi+*1KHanqS{hVeY3R=ma;ZDPE2#^*1VrQvX>-BN$l0U?aH#T1`$ zitkoS(2av#GG3Abq0Qq#3gtkjW0nZEqj4f$?A2n>HA!aO-3L6qUPyY@hI zXuQW|)SzB>*w|;p4||u0z$Ik?SG!$D4OhtML=89=KszWOhYg+*-W8`vIyj(J8m1>0B@aPk)U&XRVwB-+pe0-S#V?GPiY%sos^6UCvk)?+P)ZI zo(w3X3`E&_U(A1S8iz7+kMn>$9r}T5^@&84;(UwEubZW0PFR_YPfkuo-zyb#4+Lhp z2mIBjOf7`N9+(p*@8);xc!gTIT#9GVekF$()e#NhtLgNpLtt z?#s9V{??nfnC6EDUBkls<+L-7ej!=!F&i$;a8_ARXk>pOOVZ=Oua;n+C-9uC#r^^r ze{&xC`{5s`Tw2&8isvl4e4#TFF#^(+8ZQlYOxkor63kAm)i@2N=K*?5h06(z1&@;&Ddp} zOP&WMKqW+HzKsl^GQX;Yoai39NAyaxLSTAX4LL_l#wJ|VvFmv3QDs%_bglp6TAyQC zEGX@&b{FS`w_cPO$Yg+T;y|A?2;QOr=%mWv&w^ruj19j|xSSk7j(EBjti3*5JLTw3 z&&z+FuHt-u{~d{qcy4)5eDn^1DT*4D-t8m&w(fcHR|ns>5gst#kGSl4pCCN;uX_~@ z3hGa<(JOse>naru=kD=w+(dWFFEIlrBn}`a9Umjy)#bQP>QgonNB)D+=n@7VWGx{8 z=|#`eV49`GZ-|$^R5dMuPk$uqk9(NGdxKh83$*)bP9zyS$>1E5rwtPAN$Uey(~@X3 z$e^#Kex)XT{EZC%*nqU8=sUHM{&_sN@auf+B4KU4-wpok!k+)l=l@sw3k8^@NsZdO QEdT%j07*qoM6N<$f|oI182|tP diff --git a/graphics/pokemon/grovyle/overworld.png b/graphics/pokemon/grovyle/overworld.png index 3b25fd5c5b0950dc15d7b7402241b71a8878b9b4..92705c00fe9d213f51aa4b469d76dcd3f5aae7c4 100644 GIT binary patch delta 621 zcmV-z0+RjF2D}B37#auz0001UMu)cm0004VQb$4nuFf3k0000mkzp$h0000000000 z07V{fvyreLe;!FhK~z|U?U&nf>M#sNE#zAg{{MTAB-_w}E(hpz`VbAYGc4KKTTy~Z z>5MbZIOB{n&iF$C6z}p+*8Wt$g~BQ0a2U*98t{AG2W_Alh}kaVa6*}xv()7`d7reQ zzy(V|q*AYPl7`GKP}HRnU;4O1q)@LP@lqkTS_@TEe-k{;AC+2LhN>!z_=qOsNfHeM zK8IQ>zbmAyIq*24=;GA-h z!gkmOB0d{z9W}tcKxA+SI7R}ZG9(di1@_iQxRQTU6(Tkfy@iS_k delta 771 zcmdnPdXa5{geMC#0|UdhZCTrZ6id3JuOkD)#(wTUiL5}rLb6AYF9SoB8UsT^3j@P1 zpisjL28L1t28LG&3=CE?7#PG0=Ijcz0ZOP(G}2ZP%hfvvWHTmtySp%Su*!M>IqW5# zzOL-g7QiIEHu}e>>H__?Cf0`_tm;INjL-sxOlcvo}15v37dH ze<6mijEyB{Df7cyp4@?(OHZbrof2bJ>h;d3^trR^q4uv{j=M^7`pc{Tc%ApJuQ7Al zee3GFe~S;@IQs5g^eOM)ob)-%7Ctlo!JFM7HPg&JS^w;27w_}^!k6F29sXVa;>jP2 z?SM_&brs-Jzirfp{^{Tu*3Wk)4rrDnKy1OcJ?~FXzSd+ zhZb+~TP-_VM=OEp>Ys2OHI9e7ua$k&pQy(aPDbadD}pNI3=Ju&BgmeA7o?D2g)wK>K=UQXco&Htmb zz3%v_gE#MPx7C>NhjoL^B-cGVzkFMo@;3UjH^=5Xr>ZwUfBtu=kdMmz++9vP;y%4x zc3)-EYKQtj@%!R`gdV?&YU*}Bu(ZG~r0G`#cg`e@#2KO1@21qOVtSRl@ububn@f^` zI<0^I&5z)`CI72dRHOB*2BW)}M_8j%NAMx84-DOPj4kb}uiA>ltPR_4xM#7_tAonZ zd5$TsKQRB+hoG#z5y?GQCr+Q9^zY)M{;2(HzuU^ZSTCyft3F$+J>##y-_-jxTT+kM zN9m`k?4IF#fA&mZa#1aDjVMV;EJ?LWE=mPb3`Pb-9G$dmNJG_$^U=iM*bA1 zvOs&6>~R(F;9N?{_%zRf4L1a=bK?qpGic<$r8#AJ+(B)9JJ#T6+;D3j#3soP%DIZWi9R`}^hujQp5qi}b`2bG#`!3<>8r|(gKWct`7$6n zM}ca!1g>0hWi;}0fYy|n=6Qcka5(Ok8HaJh_XgmAHM0t=ycYM#Nhw{000O{MNUMnLSTYj-bHf& delta 816 zcmZ3@wvv5UN&V7pCE?niJkKGQJyZ2As)xyUOC@= z*+GQ;!}W!S`=E?6%jVCj#$qHQ^b@hIzoqCg!T zMzi|Po=<8oTzhoxFX=#VYv zesaeP_viSeZ&PJD_+ydzpWgQN!Ua#w-!GEha-q;!A?)P||GxRPTQ4YG*S);%%VUQX z(sPe3uT$N2?d$7ncLZlkSn{d(t^M-NLB{%#kGm|E=Xp6E3B<+T87CHcGqw zc3VO7wAb}pkFHdVTl?jdGp|j4h;bnEC7l3v)=6rnvZ8;FKI@s4Tf%k5Z0U0A6Ymy2 zUr>0KTTg-c>mHj6QvwA=IrwtUG5E8eT`Dr0#UBSQj+|)iW@7y85}Sb4q9e0N3nbj{pDw diff --git a/graphics/pokemon/hariyama/overworld.png b/graphics/pokemon/hariyama/overworld.png index 52622056a8c894b9b8b066b63f50762a7e30fd2c..8e1cfac955b89e32d73c3c9c76d702ae10e0635e 100644 GIT binary patch delta 1153 zcmV-{1b+MM3f>8j7#0Wv0001UMu)cm0004VQb$4nuFf3kkzGHLyc~Z(NklQenxOChw%t820*aZhooQz}p-n!+BJA!RhsopdZQu57|5Fo@Kf?cY6Em4R zhM(|BTlZ6xp(_nsp%K3x02 zb@+%L2!_!lH@MhX7KnfL>h@dQ&$G8yG(uvpV^rZBemN#OUBY3|PjQJcmIZiq=6{2W z%=0X95yvJA;l^WrXmF0daLLBPFTkZM4~Dog0$z*3{AK|^>G#?RuLgjQC;z433m7&Y z^FxQ@j=5Hl^^%`6oZVgu7~&=foL$r+{WEn6%n1+20Q%_#{fmDDc*DQ!+CAPsG`OET z0n}?FrY9clWflx^6ChwRmKMPvi;W@}xmyTw?u3U*0o`P3QJTve(4L4X`75VPuw0%u>6gj6r_nqW@3 zA}>tgY9C^f0iJ&u2J>X0L5X=9TK+;)0(t?$6&@;md4>dw9od1O%LdPH0do#fji-kH zgL?vH3^78jnhYx4i9a-saFChB2QdLtSQ`vFD5?_R*>&K-%bd}D3RD3^Mg2vzBr)wv zl6bvN4Q{#vodPg@jL#4p{jq4LAp=}|E+YXZqZ{_qUZsDX3FsyGzVVQYNF9O{w4agX zJV6zd6jc5_-WiNRC@qLCLF{xRTI`w>@&X*0(&M@SR!a#R(_%xX-1EvuF7=cFJD&Di zDgr_KNs#jdsbIbC@jgMgQ^acU5g-gey5Quf*uzC@Ofu$#Yf+Q5u3QDsy5^{BmN36^ zK2$gr_{M*qM2xOrQeLI{ph6)%;hlg-9ZeU2S z)^)oSP~q#=JrKzTds(3ut@0^tT>^i=-*NEVZ$bgExZ0@{!00#?7kWHxXe74I`mPH6 zJB57Vf8c1fhm&$wB|46sBDV2YoDGdRjZj7d5jiWk(kkDEECy5Rp zXSHR7T70V?MnH%iktfx{G||tEfD8QmtdL-wmJj4J3D$K82>Y=ExQ9C2azk68vHB95 zQmhHam{NoDEUa-g0H+iXzV`w@;O_uzQp&};l40Y4X7skgdVRHcuFp9&nCkh!X<%qP zaNB>t#Q?@h^4m$^J^l{BmLIFI!phcUDTQHia$i+pgL6{Ms@mN$7b>>@BT0LlR=(&FN|V}% z0Dy!50Qvv`0D$NK0Cg|`0P0`>06Lfe02gqax=}olE%ybG|#81rD z_96y59c2+K%A-ar_b|g%(}WN5@}5F@ZaU-rIX$!0eUO1oC+O{m*b6PqY^gI#V*Cl- z%bt8^nyt?EL#!h@K}Wg!8RFnbbDUCNguJ{5IOAYCW9eJdbh-oOey&6Gv-9k#n{;S4Tr;rYZ9mzg(^n#WiX{A$b3mdKiJR{>h zX`pqYK15T4{W*5E#^+CqrB8P@%V+dSflL`PfkI$zpaB|xG`2#T6M*+K<^nWz)UWta zwu{~@gM;Dj2Wo$?R@2I4r~pDV$hg@dE*tRms$(PcWXA|`Y7k<<6_?8y-g7&$RvUU> zR-re`fCOLVzp<^u^6-EgxP)=hJsz?V`P!z623qY`oaV&C_?&Y+Ck>kR_x`h&swFBL zgtJ^Q!l0Xfw?2mDGeW4q0XZWuR6qSi=0 z@9WV~I$_x*&+BhK^aXtG^ZIv6yZl^XBJkdE%ZqU(5g!&Uxu}V z4OIv&X?TZOmJRI2)j0lz8{qY19AAzlL#s`H`=BiZmk?rXwRt=MS(XLq4~dhB2A0)U zEz6cCS6NBUaW$^QaZVasRpZOg1cQAD0S(CNi>iPFtDQb7@T&mOE=Z%0hWsy}=QMlk zj#L=O`uI}R6kNHW21qdA_k1Qu4cS(SV;~sL_UC5C^JUYJkc@z{J^=ElbD^oAc(F`> zKMP#hFAZe>US^OUXLtv(5e6c03~!q zSaf7zbY(hYa%Ew3WdJfTGBPbNF)cANR5CI;Gc`IhG%GMTIxsM_r53gT001R)MObuX zVRU6WZEs|0W_bWIFfuYNFflDLGE_1hGCDIgIx{pYFgQ9eFva+;3IG5A07*qoM6N<$ Ef)rv+#{d8T diff --git a/graphics/pokemon/heatran/overworld.png b/graphics/pokemon/heatran/overworld.png index 4939e6fbc98a1fcc5eb1d5304ed7f31ac70f241b..dc6d20550f80fd7faa745e9eb37da09f0f8d925a 100644 GIT binary patch delta 1098 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 delta 660 zcmX@ia+h_2geMC#0|UdhZCTrZ6id3JuOkD)#(wTUiL5}rLb6AYF9SoB8UsT^3j@P1 zpisjL28L1t28LG&3=CE?7#PG0=Ijcz0ZJ%NG*VSD%H`bzWHTmtySp%Su*!M>IqW5# zzOL-g7CP! zNTOY+-@Z#v!`^U~O7aTmNA36I*Vbi8)79bXL z)0*nFA|kE+`_A5MwYv7smFseC1%i4tJ{sFT&$V~1d-o;(7lYB`{<8#Kh+Y~ zh?11Vl2ohYqEsNoU}Ruqq-$WPYiJZ=WMpM*YGr7oZD3(#U@$d60w7zqdi0001UMu)eNF&hyt008P=0026d000+od=!3_xpwh(Y52|LsZ8IaMxZ^kJUNT5XwbDmxI<&gb*S8*jYv#v5(@Y4Y;=hz|gh20$kPgKHqV&i2?GVI1-T z!wC3*15Q7Itu-v3^}KFRH-k$Kf<}McB7O1o9Gg$yc)-=qd*8Xb%|VzOAsjD zCe6N+z$F*0uV5#Es7HsfpTIN+?KIs4F1W`D<919T%J@8m8k`z}pwSY9EwP{PUY#c>bEe1X&Og)~(v&Y6we^`%ID(zjBMue38Q}5?BCG zZqq>WK-4L8o>1_@U)!`#ylQarjW0`!Yn@7D{aWzMmnE(RCp~uPMO;YcEcmu!l{acL{yZ z&*s3n#=9G2@>M5rvwVNU)lf3L`hURSximZV`4{|SW0Sw}$MFx@Unvg{u6H2-0000< KMNUMnLSTX`DmM)P delta 805 zcmbQkHjjORgd__y0|UdhZCTrZ6id3JuOkD)#(wTUiL4V9r3DQb7+xhXFj&oCU=S~u zvn$YMqOZLyW0JSK3quF1tOrmFdx@v7EBiA>UN&X5)vt7GCU(l#`+K@LhIkx*du4yN zaH0hJ2leY~1y%%nKVAJ+)$kd++qtBdL9e6?9^87!l%K88%=;wt_!ULo7Z+CM$2K`n z@s549K*dj%*U3^bxOfWB&7#(SjK{o-_CK!fo;)G__nz{a{qOf4mpzaqwt2?U8^TeX zM#s}POCBl9IQl_$TW{o7(Te)BPrrA}Nw;p{uJwMH!&@ABG(Yw`L!ZJ*W=VpFYA6>5M{qMOuO?~ zJny0f%Z|U8o+18&XXEd!T5h#xU%%TKTA-M7#qR2+71rD_cIJ1tm8oPs{`h|0-;cj} zPje(Lxz%VKUz)F5_uf^Yt0O$@!OYChj0!ea@{U#Iv+zjUFOLZ;XY!4|;s2v@#;wZ9 z!tQ<#&eWGJSoQYR?yUK#$xk;t;F}XwD){p2uicK5QXiDqF6VE^9yeh{h!S3GLh!@>avdm zlbmXaYeY#(Vo9o1a#1RfVlXl=GSW3L)HO5;F*33;_BORLw$L`Pure?xX017dq9Zpy bB{QuOT?aw~Q^b)vpaup{S3j3^P6xsvm!wNklz3*u427FOg3kLt@Yx%xXS9LXwOsS7srB|@ zyUB&%wq17FWtUxc*={0_r_=oL?f!Zgl=1JFsPywZ7b#4bB+=9xk`k+IOFa9XjCn5aK@#FmR0KTuX3bW75{&fZ!A-(@U9}Yf)dU7)>J#! zNhe=&tZYB%)>v6kB#jEScbrc-E)Rh}h>aQsdXNGMr#?`jz;Fg@j;*B z!?h~*J}Q6XSmxZZ)pSfUp1_*pn%HbtoD&x(oC>LL>=&dSw`>__qjAbxG@=C;p=a=? zfzKhYJNL0z~>{V`+&r*wUT^}WCH j`{$79SkJw1*M;Qq@00000NkvXXu0mjfBff9h delta 851 zcmdnVHk*BdgeMC#0|UdhZCTrZ6id3JuOkD)#(wTUiL5}rLb6AYF9SoB8UsT^3j@P1 zpisjL28L1t28LG&3=CE?7#PG0=Ijcz0ZJ%NG*VT`wbkAaWHTmtySp%Su*!M>IqW5# zzOL-g7?95JU z_5M$bPy1;1Flc(z*)|6WcB3U{@2NL-+J9V|r(7EA*F8V&{p15rB79byRgvMUmnr1Y z`DbHOeowf#KkAJ~PV&c>(SPP`4HUZjR{EgJ`&qYYS{0KlymIt5Cl%^0+_gUVoaBDL zoH7=rzE!NV*-q>#^x3*^)$ASVK0EGZTyJY@j9K~dhaT%}Mb~?0H?^>=xp?krWZ;&6 z6(92(+YUJ*%9?(Z;QU4^F6F~|JiNP8-G|0oeYydwOmv? zy#06ak>ah@&zFV%TO&6=KHO~kM-lcc$$5STnMM}hg#y>Cp5lG_)a>-u$H(QhXLr}I zXW6iq85Q_G^AiZm@E-kb@(=pFyu>BztMbW>)VUEVf3t#0{d zNZl!0zE*yFdFkePA3hZweeatr6{YVQ_uRf4@>Ypj|heU97xg+@E^qq!_odpdj@rAI zyH~tA{55TN=q=`uhg;Lq-K?X68-)Y&mq~_cecO9(O4vKL(_KejE|<#^K9V)}g>cGI z<1Zg2Ew&aaaC4oT^h$h&pF!S<13mu7{_~`N<(60fssGsgM*Wq{Rs8%ffyqy`#5JNM zC9x#cD!C{XNHG{07=;_@8W`#t8ig1cSs9yJ85n9CSXdbtWC+=PLeY_%pOTqY3DSXG UgQS0(A5a5>r>mdKI;Vst00zT$QUCw| diff --git a/graphics/pokemon/jumpluff/overworld.png b/graphics/pokemon/jumpluff/overworld.png index b22b2d7c1c2233aae6e8d9a60247394f1d76d852..513a212b3a21a8c22e9ab0750b3dadde13f8184f 100644 GIT binary patch delta 528 zcmV+r0`L8k2HFIW7#auz0001UMu)cm0004VQb$4nuFf3k0000mkzpkh0000000000 z000000002e^71&5svm#6NklAXH z?j5x_H)F<(88c@5q43^6$;aC-%W{%)Gaqg5h*R`ZZsw!yf4>1(YQPhGv^`}6=Aql+ zRzBJuGXhb%bUNJ2N857>c?{izoB3#a7cqka;v@V5Uvd{$pd5dIwIkqeE;w}ro^m|m z;)(&-9wQn@-hmqp;Ddv4+#I;2FRcl2A}OYR;TW3JisH@^pq7;gth^QIRekHAsW$}n zMjtu)(+0|l#R;#Kf1uVaD1I11XAGoGUjlXB_=al-ano-**tz})fcFzVoj0buQ<8h- zP`DoAsUW5z5g&gsl^-OM!w+tqr!l=)VCZam<}y0B2B;|T>y_yu_l85}dWhffx+OFQ zT5cG4qd^(nDy+N;(GF-ku>?_#b8fAKGnQ99FLUl^)U@Yn8yt zs}RNU^X5H8IrNJ0y>=+P^;a6;Hv+UNc-OQq0hWAl`!rO7$n7C#OMl@!y2D*gWlx#* zQPR$}K*xKMW`n&Yi$UR5c}dFl_?>ra*+H(CA8~2jop8m=h!g$a;4^0YxA+2|GZY`e SZxFWt0000(W;3D!eRxwAApfPqE$iO=*Dm*4+>&bZWAEYmBP}y-%0Iin zWqxZ**rdbLVrsWcc^|p*O6|q=dxul+zVThT=-~Y?cjamsmu6+h=Xjs@W?ZUbnN#V_ z`(|Hs)&bEEa$GV#sz;U zD#Ca0R@imLdc~cu&1NXpOcT5QrG)df@Xsg0Op7MoPHq0jvuam)$yKp!M?VWHg;$A6 z#zk#u-uOaRh{<^M=S`AQNA5|eI_zw=_|UTc&ohqa*~_l3*^$(+Jphb#)e_f;l9a@fRIB8oR3OD*WME{ZYhb8rXcS`PXJln;YGr7oZD3(#U@$d6 ioyd&H<)M1_n=8KbLh*2~7Z~20PpU diff --git a/graphics/pokemon/kabutops/overworld.png b/graphics/pokemon/kabutops/overworld.png index 084d6339b7df34b0b3c321acc61ce9819dcd69c5..157532af553df063e5a96780dd86b0c4f15f5079 100644 GIT binary patch delta 845 zcmV-T1G4;)2G|CW7=H)@0001UMu)cm0004VQb$4nuFf3k0000mP)t-sn9!gwC@5Gs zAeeYa0001pU?^xvFhD>+p`4t+z{u$6_-JT&000000000000000_)*Q00008kNkl<3$$xb{;~CF*#xtJrjDIx% z;J3UdbKHRgxaO1lF|R@1?+k1?c$pM=Xy9yM&t+ih=a&-g^zHcH8n_@h=K_n< z^IWI{SA8OIv42WWyb2_ZS{vAK2q8Ei?o!9^AjXcyIPmfEQX2wfW=TA8QAj=%fx#1A zy#oF;@P05Ch2Xr?^A%GYf@$Kt!CGMEo|l-pK(@RHq+A4M5(BLQ5is&rfpW(cmc5G4 z7*lGlNB$H$J{T+o4nYoJ?e!-v0$AZojpB>-VXL5g=zn;ppmGNey&n0S-0?i|)D=jS zWfh6mGClG#9pX!3UMLA-ZVhD7+wjq#aEE{_kdF=%=9_bD#(}rftH2{9Sw5>YK)cX3fbyKbeWqDiUEsP0U+w+M*)12wgRr3j|z%FS!VnjWA&$_ z=ktE9jiCLxm_ZG|W&N!wJ9|iPor{g2IxB&r0{*=z-)g081M9i^;4C`>8`?{;1%Bh&wZQY`+6TKZ{Jw@~{I~H3 Xi-;SrU51u700000NkvXXu0mjf9r=h2 delta 773 zcmV+g1N!{f29XAk7=Hu<0002CwraKj001OVOjJdf(4a6lC{Tbfu)s(F004-vKxmja zKtMp4n3%x8$mruMSBtRmeopWcM&wubB>3t-G0DxmTmScG{ z1?m4{q#RzbW~7IcDrQZwDkyOc0mlL8tb#R+G=#KT6|=l?DPQGUFTCr!ld}reYPgN* z4^=RL*l)^tWd;M*;Uhk;V6El*xaZ$AE10(Lg=(J4{}TYK)%9;%UA=-Krh(Fel$iy7 z!1zWMsBA^e$$z*THD(-_f-}Jh4K$-7vCLFCxySgnN0uTWV^O`-qM+T3g439{-ef$> z#)HT0^ZR^)Wu}4tFO0wVWJP#D#!C?hyUiNvc2-GR?m1bOkbj!gOCCGl|_|#2V7Q z#3^P(JAcd@NiuJMOaM6NLSP2nW~k=^g?Ywms%$N9|6oc2P#>@N^>HC6F$@jEFhej( z@A;_UOyF&u`eiW%c2`i&EN~cFfjb3o#{+UsSCIxr_Rw}Efx=9%tNU&s3ARItX)}2F zPB%#*D6?S>9YY8F(Ste5f+@;(b}EpVHba31EPkDJ7vCI6;3K`6mi+yo)APO&C`PEY2n2>CFmwoP>5a_BC@(VHDF~oL(!iXVFuj=7 z(?2PY3dO}-03TI>f|BLMsa*fssklH&U7Xhv-e~y?e^%$G05@Ag00000NkvXXu0mjf DMKEVA diff --git a/graphics/pokemon/kabutops/overworld_normal.pal b/graphics/pokemon/kabutops/overworld_normal.pal index 04f6316663..2c4ae3b74c 100644 --- a/graphics/pokemon/kabutops/overworld_normal.pal +++ b/graphics/pokemon/kabutops/overworld_normal.pal @@ -9,7 +9,7 @@ JASC-PAL 136 96 40 104 72 48 64 64 64 -152 208 160 +161 156 156 192 192 200 232 232 248 104 104 120 diff --git a/graphics/pokemon/kingler/overworld.png b/graphics/pokemon/kingler/overworld.png index 4538f564cf6c82b54f6fb79dff60f39b480a6c4d..135f79b3265f3a35e81c0896d3f955b571b4adb3 100644 GIT binary patch delta 904 zcmV;319$wz29gJm7=H)@0001UMu)cm0004VQb$4nuFf3k0000mP)t-sn9!gA007u% zFsMK{Kqx4%m}ua@nCR&Epny=lz2*P_00000000000000000000I-ecGpe+Nb?vjimiF zL)cz|(IV|G@Q)dM82Aya3tM;|_;Q@@puHN{!JaeI!h9DO8hll|htyAiuMJ4U%@jli z9{@}0hukj>yjesUe4EnghY+QQ9-vBYK zga+_j*HpMSuz!HO^|}GV0M&!L>^iZ_`W)#IU|b7LD~+Z)3LwV@RHstRPVWJA0IyH0 zxasAerr!Z_Tw{9Bb#w=mAOv-??8?HU0V_W$pgwWk6B286!C4=d)B%Wi2TEt$>6+63 zHH=bVpwl~p6_Aupy-5Q2!lI(H&ugzYgCn3WqnJ-4Xn&@EDTPgddc=K-zQ?8X#lakm^l9 zoALL0XYc^boO$0p(YVMvUHS$(S%IH(oCx*&`?4G>D0WOQU|(--MU^s7PH7*Y~g zK)^4ZMb9&xvSjQ5CAv=`rUyN$u^}e)F8PA1)O5H$xVJB11C0ED>nYU9HbHJ{T&mIE z6@U7SQ4ek-ok@q2RKZcGdUE+}5U8CHz4q2lK7QnGBa)2)za;dsB%SA?Z@S*kx)}^# z2&hc(?ESlZe>RBMohI&-g=}(cnyDO~)u44e>H0nw)_BTr8~0nChA*p48j9i1SK)8{ e`Q|@szW@^Y6i2-A!q5N!002ovPDHLkU;%=b|DG-Y delta 826 zcmV-A1I7H32gL@E7=Hu<0002CwraKj0016POjJdf(4YVS0HCmNaDX^SP$0m#c+kkG z=;-*Upis!j(6GZeTL1t8;z>k7RCt{2ltF9TFc^j<@DH#osq;08_X8Z6j@_bI4!ydy za}P<%u49Lu3oZ1%Q~&Kg$+9Hdfx%#dL3IdzBI$WQf0m8V$A9=3|85ZScV$?J^v?rl zix)B&nGogg*0>q6n3yjH*=i9Wr~ie(xiAx}dBR+HEr5{SI^GuoXF{lUvHMEE^8N{( z1o*(YkP5MQJXWZpBIuM6V#X-b3A;d8tK+qBLyL!CgeGM+KYcA213`Jyr< zR@4U&q>WJH4Q#=(Ak49El@;#7F~>zcVMJGAr6u1^*#;UR$y7;M0o{VzkR_o5+rS`P zvkv;n zv|ewj3Ibpctz_Ud5@ux()Px-(PN)$UC@__9c!qf^+z7F*5Zyt5u4L($jW0-YZ-jLa z-b<;D5lbWd9Jss?F|rX#c#(wMVhO_Lp(2iLpc#!6PwFVEQD9i!)Shb)J_*?cZl&ku zp=5(lX@3d_gSU6uu?;k1FTZ~JaYMb(a@j=z?U(OA<@qY}Hm?U^_0~YoasJ}Cw1HN5 zI=#ate{3vQ%Cq9MdcVCrUuB#>%Z(APC3!VngG28)=jpHk_XmA0)xqJwd)1CY&dz&% z>HYMD(TFk8gHZF~Bd10tV*uj)q2K3CiXv|E{eNgUKX?75_j$N`K1YndHG{BwIT}tb zBflQ~7T))qa2;{SeLikU+w`rE*T8*XPF_w%czZXz8LHDG`#(Y;hX))cn*T(jXTa&=Y{4lz&9@q4A(9YgwW?OW3G9qt!Xv1ln`hc zZ!=AR>eGRfE$=46#TfpJ<#9-~$RHWZfM3T~xBhqI7agjs8250bbN~PV07*qoM6N<$ Eg57|L?*IS* diff --git a/graphics/pokemon/kingler/overworld_normal.pal b/graphics/pokemon/kingler/overworld_normal.pal index f79648f08b..a441b18609 100644 --- a/graphics/pokemon/kingler/overworld_normal.pal +++ b/graphics/pokemon/kingler/overworld_normal.pal @@ -10,7 +10,7 @@ JASC-PAL 224 192 152 232 232 248 160 128 80 -152 208 160 +189 189 230 0 0 0 0 0 0 0 0 0 diff --git a/graphics/pokemon/kricketot/overworld.png b/graphics/pokemon/kricketot/overworld.png index d9b6033cb939a3473c90d3aae027cc3788a683e8..3fe4a5e053ee164b1b1971581e5714a602ef1b1e 100644 GIT binary patch delta 484 zcmViig@AK4)M1LX^aRG75#ea+RnXvqlNGAFAF4x(hlBOOd4e_40xa$x_L@c2|Cl3j zYt-F!gBIuhl5R=bpeJDP_-9Z*!7;~v-dcy{IbI8tQ4J!i8QMG+-&EoZcgVH8rF4J% znY@-L%D%J3IxTMTg3BPv6nB!Fy(4yBlr|6b55`}XIqn~t;|{TPSMWMExfH(QW8_eD z0|w_2KPsH{51GMv$B4YAl;XQr5rY>-P>j(Hn4Avzoj{)B?9uwEETw}@?jR-J@39-e z07O#k+R&0xy z$ji8+e0-O@{$6ZymhHKq*Y@v_{eh*)9-5MW)#v0M)Ls1Fee%heC$X{IKlA2SKipd` z$*15m!yxg{n>ijn8Hc)Dmv!(c7%?pU)6j7Fs?XXe!AM1=-Mo$vl_ zi|1n5)ZGCWSbu(4IOmqd`^xj*-6!WiuHZ5M(pKbkSl9GYr{~gziESOLUbodd97y>l z^M3Y@rK=wv&E2**k!@wl?Pc|g8*YCt+LoNXVyXV$ly&~5XC8bjwq{EEG$Zxb>1Bx* z6l(2ytGcUsOD|_Wnd_N?&6y@Ii#;FzxUF$dePrCju)V#!cT|E;=!)K% zklf4mTkM91Pe|j^Sv5~Ib~N%tW&dX^jCw7aZqE4ob-_8A`+IVCpHH4t{V!uqy$+}K zv)8%%>gV10HLvK~p@265>h*Ge?*Cz0$+Sw|-Q?0vV0@{TxJHzuB$lLFB^RXvDF!10 zBO_e{LtR6o5F;ZiV^b?rGi?J4D+7b4p?nf38glbfGSez?YnZ~ZZ3$2V1Ba)ppUXO@ GgeCwdNC}|; diff --git a/graphics/pokemon/larvitar/overworld.png b/graphics/pokemon/larvitar/overworld.png index 04d3285142f43a61aa725f8a10dc1c8abfdd1e6f..4e3c8c8255445b7215528eef58b3a3c3e2465c62 100644 GIT binary patch delta 446 zcmey%vVdiR1SbbG0|P^`Tl@BjhSH+?3=FU085pdlGcbr3)QIk41j-pqOjH#H(#U}A z;-0yWMxlfX5}SGrUJgG#q4-RP!HeuU zhBpJ_6^mIp#oJ{XzvM9*x>xPV==dwDKBpq&#J3(}y)9h@2VDI=&5M00b^Uve=52|M za}}ScFt1x%b*kg7^_)TxHDR^tBa-pc?saV2)f@fE@_63N>ep}HMC2Vfck{^$ZWp_| zY-M@JyjzzDtG%C8E}_(S^vk`u(#!5EJ@wmiWbzZfM^kryT+E#C?cci+(;t6UJPt0{ k79b%XT7RTIea5e?aT^V|KSi3pN(9A#r>mdKI;Vst0BFd_R{#J2 delta 540 zcmZ3$@|R_Tgd__y0|UdhZCTrZ6id3JuOkD)#(wTUiL4V9r9}-G7+xhXFj&oCU=S~u zvn$XBs7P^QpsET_H?tOy&6wov?!wT)D(eB{u$OrHy0SlG~DJ5Ba+?2#9bE288R;u9<-=LH>T&OMtD zmXyR({5$Q1Pd!s|_L_~yr0Ugw1g)+#))m_|rRDpJj^uHl#kaSuNL#b{&IP%;7@NhxODbz?va;Nzr-rqe-QIJ@M%n7p zop<-FUe}vT%&jb)d^6#|i}O~=;x^XL??&c36<;lXDEocxf43MZ$t!aw*3HfB5w^ZB z&SPWSb3b6i4y{AGL<((9roY*L#Jc2da<7&6#udQeRV{IiC`m~yNwrEYN(E93Mg~Sk zx(0^2hDISqMpnkARz@b;1{PKZ1{M5b8W0WUP#wAXDVb@NxOH#_t(yYW!QkoY=d#Wz Gp$P!1&ek;m diff --git a/graphics/pokemon/leafeon/overworld.png b/graphics/pokemon/leafeon/overworld.png index bed79105c4abb33202283e7e98bc1af399c9cd1b..2a4f0fb9840466b164d9e3bfb096216f979005d2 100644 GIT binary patch delta 731 zcmV<10wn#V2dM^-7#auz0001UMu)cm0004VQb$4nuFf3k0000mkzp$h0000000000 z0B8)KnUSy`e~U>(K~z|U?U#*iBOwfgcYrm9-uplAjoIXs>)Mb+{gq->ZKH2l#%2s; z+g|aCSG?l)1c2|Bu!y-rr2MlJz+53x`r-Q1yuy~iJcE_PKG}h+|J)+02Ubh;=}U;R z@c7~ZT5x}sf6U?mMdTTNZGI}0+t2s%ZISw#j~Aj=f7u10fC=As$WdZ)v5yb&O(aU~ zK0e-v3fYrXY_5PAw+c~O)tr?{?kBIWI3=1wAndXQAEkj}7lp}m1S~is*QVOC{rf0C z1X5nuWDCv-OdFM{QlBSa%K84(v{`6N>D(xTi-a6`xAKaGD{#R#>AMv;73J^l2v~3$ zTiX!We-z#ngJ%giiKtnW;f`K#6PQ|Iowb#g+yv%)1I?X}1k_t*az#$e(cxTN4uo=T zoz?L;PF0Z3#Vr)5&C|E!*5il18njte%V6vRCuWJ)Mu+xm0=TuxiE|rymno{4g^N|t zonpbqCOh=S2~?Gwy#(aaJ-E?-tMJ6(SP9xMe~c!=+ry-0|9cOlvNKr0@N1DB9q94B zd$7qD217C(FSGH|#o7zvACwnjPlYpFB~?6*K4SboJjqe+6Y+|#i@&TH8D>mg+SLF6 N002ovPDHLkV1nR5ULgPg delta 855 zcmZ3H>geMC#0|UdhZCTrZ6id3JuOkD)#(wTUiL5}rLb6AYF9SoB8UsT^3j@P1 zpisjL28L1t28LG&3=CE?7#PG0=Ijcz0ZOP(G}2aat4ZAnWHTmtySp%Su*!M>IqW5# zzOL-g7PxUmx%3;uzv_{Owiy{96tp3?Hhy({D>i-*|H(?6R)F#C0al zw*1tQRjUx^jM=^?%NA2AQw#KY3U`n!_m;#gesmzD|MC7MJ%QB}=61ul_oj z%E9_zlKz67rDFL<rl#pV&C-R`r z*+abQmb+qWcW&Q5DMg^TZDRS2`61<3)2jZoWTY&O?bqJ0=cU|XF3EsNol_M`m$ii&+S*bLoVF;dsemX#_g+r?#DZM)`yhe7dM%o zz_L2d-d)J~=jPa+?#73|wjH~*EI-=l`0EzGmlKy;Y~r5Dm~Zad)ZLi3dd|#wvv%BC zla=$(Mt_N!p`WsP4TUztO;4Or{Ad$>ao&# z-M6ZxrsmvnXT5bf$|*+rYK@zo3Qe$eaw@!f?7QQ;$TRQ%&%dtEv*+5eg=SrIfk{xc z#5JNMC9x#cD!C{XNJTRk85kMq8W`#t8ig1cSs9yI85(FCSXdbty!_F38%0NMeoAIq XC2kEfmYSslH86O(`njxgN@xNAUS@eQ diff --git a/graphics/pokemon/lileep/overworld.png b/graphics/pokemon/lileep/overworld.png index 59494df354efae9e88ede9da480cd530de9fe428..9bfe530fb03863d39bd7c58bfbe6148dd79f2f0c 100644 GIT binary patch delta 638 zcmV-^0)hSL2Ga$Q7#auz0001UMu)cm0004VQb$4nuFf3k0000mkzp|h0000*5UK8w zwjX~rNklyG0v2!#XK;7gPDf80Gz`eRgIXm>Q)9Vtj@S{(;Iz;@hiyY05y zZoBQa+uk#xueZN2=I;SKpP#yM09m9dBrj;b0NQNpKy@X5JUBv?zv_nyK5BuawlCb3PlK>};Q)?H+#kHw{rE}$o3ZV<3`2YX_07*qoM6N<$g00*csQ>@~ delta 788 zcmcc2`hsnOgeMC#0|UdhZCTrZ6id3JuOkD)#(wTUiL5}rLb6AYF9SoB8UsT^3j@P1 zpisjL28L1t28LG&3=CE?7#PG0=Ijcz0ZQmjG%{4_oxb-jkjVi;Y@p0C&u9soW{8JJ2-D7-vq@(TTv*8L!4sF^Xi(-bbC&{}*fzdD{1S?f zc6aM@bb2W~&5ghRv-p$seMX(^$kV^Vy_p?eH5Ib{XHz&N!x-Wt8rH*_aJBxw;|a%< zq>KQ|6%p4HFHdM%I(utZ(x&V#g-xL=0yS4Se!g|%=;nN(gSTzBT)Oi>?15v`YQGn& zSj3x8yqWsmJ^9LVp$~rXi}U((1^AV2Uz{u3U$I3ZB&YoM%hPwO=P5Fu{knQe=1rN5 zol~V7<4aQ&3g^kY<*V~eYq+)a>VtO+Ce`aJG%SexS5TEbd6m%w8MnYGNt_Y4BIdGf zynVh}t;t~?&+>zQc8(0$=K@9EE}Iv{Gwnq|m5lH=b0LSd)lU^HR+L{&3fMU3yyv8r zb&8DVdF|!0XS|i_{6`#06-c(uFO}OKTtcv7|CWCG2y%T^Urg?&$X{VeP679d;boer`MKWyMNYj z`odzNx`XL66puK#rO){P{1;#M|65BdOlEEbrXST3*NBpo#FA92nO)>Z!zy>v?222UN9DlC^AWLZVATA@NygU5qG5(o@0)Wseq)|qIc-Q*`4G@ZXjesoD z>f$AU<)1f?yFGGem^m=EVMtLe;awlV61;S$!lI+vqe;VzfCzr+UMts02Hr5az3w|$ z0vt_eCxItj*Oe}i0;untMM{_MbwZ3B&h9m2cac!26~>3^P_?+E3b^v0)4A2QG;$4A;xL&97*! zJ`&1D0eKgmTosC*CVHJ=JtD-NV+(oe^K12F^k}yOZ^+a n2UiLH9eWD!>j1C4_A~nelTi|91g_e=00000NkvXXu0mjfyY*do delta 868 zcmdnRwvv5 z^mS!_#>mU2!oK3r>ZcR4|}+YV>e_>v~4D)?G0|- zbx-kzvy{vAdqsCWf)wkU>+b$a{PgC+v~25=N1h&kJU;!my}dEX9Ftcj|0b7qYWnIAP&i^(~E)>xcyNHl=9FK@9Zq#sjcd<*8lP(9JwNey&xCak4PHGhzH4Ei zYgm^M>#VL=en{h*!u0t{7oHz@xX<-mfB!v}m(KnMpJuL4vv_h)=|c-6r|*J!+kZxs zH~z_}e6M!YWKBr?0ukM&8x9LZ+O=M`OwdrRUm!fo!FEO_m&nqmXVx0#AG>)gnq{46 zh>1g8%ZjtA0SDMNI19~k;1md4a3k{G#D?}~dEfb@jasx2 z2`6*E|EWJ`R4OB`=^!kg$2zg}u4&G#_E!h)owG4J)K{o2%lIuX{*+Xui|l8m+|O#u z+LBJsEtufQIQ2m}#EP%$aG`$Goug5VyLE+QXE522x9@%+W&F=>=b=AwU;LEn?u$PvJl~w1(|7HO)c-H-H^l#Wt_=SX_CLm+ zf&bxrzW2OC7#SED=^7a78XAQd8Ce;dSs9pX8(3Hw m7(Dp8;WR`CR6}llN@iLmZVeMxaFhczFnGH9xvX z00000005I-DYgIr01#tgPIdqQ03ZMW03ZMW00000003gS?)m@#0*^^VK~z|U?U>t= zBOwTe+eB={%=^FYg4&%;nnMn=m8z|9k)-OguUblf=X@^ZWxg4#zQBmTVJRo{6b8JXEWlb|QI9#| zzhIo<=pC`kp%N^>5w6JJRPPl={C83hu^_(2fv63A1)&ig0tooXEysJr$08`jTjKCG z1+sO4?Mc2sSpjP`-A7yuIZ7`Am$y3giNbo&7jj%n0k8!|oKp;oLH)nJBQ8OTMBtI*X)gMR1!kI6+9#LvFc*DD zm!Xiq4;dVD(bsB|O3&7tx%0yX;!mM`X*JjWRLUu1PLK0mV|2-)kQb6#gD#%|RDi}3 z)eLhv63D&{dXwTrFL;yT5$_2~8L03=QoCTlyO%n;JQ@M)T!GxDNsbqPMwuO+%ZQ76 zeyHh(__fwwyNJ(L!M9`7$n>oTAp0}oOB#!w=X}G6oTdC>Wq{AO0HF8*fHjOj*H>j1 zb;XtIM~E5Z@YF%22T&)^mVo)x6urime*L{68Uc#F`P`{lwsRwZnxM7DjoR3sf$(Gv zR6`#Zh}DIlzXWCgjU7l*i$QB*MC{to8Yo9xEh&RecVAPxF4GopbOw58nKY^4fLoQW xaICQK=D$g760o00$+Q@{s2@eBz925hJyeA002ovPDHLkV1mb;VnP4_ delta 825 zcmX@Zwvc^-gd__y0|UdhZCTrZ6id3JuOkD)#(wTUiL4V9r9}-G7+xhXFj&oCU=S~u zvn$XBs7PyKpq>hEH%}vw&6wov?!wT)D(eB{u$OrHy0SlGy-O_Kjvmu~UQQh%Jajjp-huAlZMZK4P^W>So@xJl4jg0?}+Y3$Qy=OIV=h1s+UcdA2 zDCNtZ?_ZTSF;rmvjn+WRit4ZwQT4cu=JkJCrms0+5xu`(ezv*$$=>ceQj>NlpSZF4 zhxxSgovDrf`I^6v9PUgvv}`}~VNYoA0q&Z9PD!;nkv>)?onJ0mCU+Ez-Heqx(qmYd zyZLhd_Ad`Bo8ND-wu@gMb8mv3%AA`r^EZ5(IZZ$RQ}3@@KYw;H=7}@TKi_wD)tp(r zCrxMj)CaB6eAk{}7SQQz$9Bp1_Q9HGCk-h%-^Pb&aM-MJMYbag* zno;de<@;GZ*;acKbF8Ay8sux}2VMNKh3V8o{hGI?V)98Z>l;3w%dio-Z1vjIjpt{FTbsH(4QdapCvriB0a8vm#C%{Zo{-T}$8z7fTeQl9=b3SUvt{QSIkV7U=3e zWV+j9#Hkvc&uOuP!KYqdLhZ->$C0mD_2P6c&)W9n?Bmp3vo#MaU0=&@H?^v#9C?55I!uE6B!`h7joifHos2B$Dj)AyMd13d`xTCu4~2@pkb~q$Tb8|5OsNza zTGCZ6`Xs=TBdS85BLxI;=+hdN&xdQ!W)?UCoOoop$|XmaJwkwsn!`Sq8E@QE)qS7S z6}=1GF~DhLi8xotWgHJVNPj(4tB@lFgc4m3f5?BoXy3fGPNCrl4TYx+kGKddcY#H9 zz~!`}AomHg*Snmu8_Uw9$gqdBrk>YDocHgg9hp|TqA%baWNs5?4LETvhj3{lzp$?; zO&g!#d`J5RAa`u*S``U6zhmV-M^B^G`JAdFUoz;u^T?#!LZ6euEsKwNGpdl!S)p`l zG|PYR!BsqsX}cl|)F+03Q*KLwy|dV)z31`bHMM=ms7y=5n^OanlT7TcHHbbWW&`Km7vf#YE~z`ofIioni=7AVa6 zBCH$)J_W51$Q?KO@U8&SsgpdUQMJ;8#|vhTFZiHlaOo3-WTj zUvj|Ybj5cjwNl-Jm*Co0;~P=%jeGxI?g|V)?>Knh+Btyg#o*F^3j%@f`MjNF_+S64 c@n_H5Kl#Hbri4s$6951J07*qoM6N<$f~q`xApigX delta 885 zcmeBVzt28FLXw4F zV~EG`v(pT-r42=nPkp%RYs@FkOVjciTXbS?I~DAXS$N*-jR4ofd6&{GIVQcbD*j;3 zp;&BaQo-*;~b3JSQKfRokq)}V(;r)`||CjDhIqCFgbCl=p%9mAhwte1o z_2!+7r%%;4e6z}ZoT`0rZSR)W*bDdXu9gU?*N^wTeM7A7|AhDR8(tiV6caL)E;+%k z@pEDCQZ>hwi+xxpbee_DNGbHY@a#*ck*b-S{^kj(c~kp7uY2pb-uz6G&Xb2L&F4=z z8TfPcv(M{T8S)Z37Cw8j+5W+V)hE`Rd~|0%XWhx9J;fEXm@iECGoHNEiMNJB?zCWl zia~*(So`DpJ7-zm_f4PBYN2@0)=YE$QlpL;&0PgXc2}oA;M%y!@^@jIPwKK2`7<34 zysKO-`(H+Y_iV7Vt(b0R z$XTX+FfaGP<_WjM7;mRCem}oU*tzqdaz=`xTmGsW_s$&`*;L>)|H{NWANN>F*0C0t z>z(g*Tju+j+2H>ES^EVy1q82MHnU@62^+iWx0sgJJN0ZE&V?B!Oq9s>d8_VoG{^1G zBE7)ll{@VE$$!CJ9+L_RV2@Cce+w|e* zvbd$T-)j%~n=9Bc>aAcqz{_^ZSmflyz*Q;pzHzyonILxehoHsb^(w|1ZrAth)p6^R zp24i#P(G2}&M9p#H#@ie=c0=Z#YyW|GbcpZ7rMWDzE)l1XTuAp@4Tm5%kFQe-xaUY z-4geG!$Wx|jUNqV_dIv)|Nr{S{A>9~-F%;0-JDPhOt-2ft`Q|Ei6yC4$wjF^iowXh z$Vk_~P}k5X#K_3X*wo6@OxwW1%D~`hD4zt1hTQy=%(P0}8U&_rY+C}vrQH41}!;#c7=O{U5hzgbfmM(mmbVkFa~%#Gil}2{2ujS9`Tr zd$s?n(Ld%tYqZcCwK_Fq32k$nahDHQl9fJ=GE^YKdw z4w&~oxw+0`Ko@waqhE9at`qDI6c=L0M}vQ=UuNC~c7wzC5*_g6tv0p^Wp>bc49Em> zSydId&b1akH3%&dc^8-&Wb`4YkF-^VRZsm89dteg90Hjz0TA;lhXGkpvVli~6CVT~ z2L1TnK-Gr~lN!+ShMhFpMc;uTtVE@PvPpG>JNPn`s>Xcy{oxOR?$8%>;7XAfD^uE%Bhm zvAvN-+-T!6Rqz>CY0zaqg90sq*giU=2w68<|lt+Jsb?ADa z3lxR|9lYWAn$R^@_bHAKEfBtV0}nZlSzAP63xp-SX%ZeBXwi6GHDZ$AdG3$&oVF^o zB4XE5$29TD0AyOLSoQYzfbLAslk1Khvqj?m8abu@s9lAuy0$vTgPi)KgFAzQtInYi z@0!&aSSj$);4n>LqEiFLWyXK|i&TsBfnAPt4F)V}ju&S@1v0iODs5s1E)!oT0}Bw- zc?l{{{Xrn>h2`V3{?ls=YxLN23EUaPs@A8*arK${dp;W68-MDJ|GWfT`$|fiz^X#W zZ&#PtJMhGy-jNuup}fE2lnpmsFq`YAxG`C9Ta7!KZY5ej+dr{!RT) q`u%dmw*>yN{tuG>?TAhtIT0000 z0Dy!50Qvv`0D$NK0Cg|`0P0`>06Lfe02gqax=}m;001qKGBG4L=LH=A0004EOGiWi zhy@);00007bV*G`2j&3{1|l!ZEu@)|Y9D_%Nkld(mfZtfaM$5g>T?CKrRpju9U{LO7*@$?vNpeT<-H9C_&N~ zFd+!<$Kih8%y9NSrM|6i>wjC#f8jgCS^30g=_{Avq?&;kY~Y%Ds#R^r9Co zhKIsIm<{v!Z1D8#;-WQv_N9QxYV3a~O+pkjo*!7)GwuKtPKL^2Q@9vr?q->#;pXOM zr&`RIS?{wy&@vz#yU9t@Oyy*#aWa8rj^BcsUUQg}k*#<;Qtd|Ajr^IrJiZB0X792`J!q#_XZn@^) zf5Tt@C@uYjE#b_6Azz|JVS*fghi{PvTMQ!43#`l;P51BU?tRVhl#P!yAc4%a8X)tM z1@C|PjsjML$T-o)fZ+b_JwJbyFL7lt7-@-u3rSCP<=ler@BXBhXnnqd$k$<_+`-t9 zaR#un3)x`FEQUO`+@mlPUz@x*E0+?Wy}S)m(ND|MF>FoSd%gA-&I=cr1*XjX___NgKl! zbtCg#1?8sxX?z>|(#B^5|5Y5C$2Pv&^*2@J5oTc7jK zn(5S;&xl2(0f@Xg zwoN&26r5d3|5ADJHFEpS1_uU|M+U0^tw=!UZVya00~<{1L$dx~VSlc&?+SxG(s^i5 z4D51~*P|M&d=-Ew2DWCv5qRQ(K$|=`10@vK1<)=pFK0a(hQ(2Gpe~=E0OusV z%lacfzszI;jd+K&{Io01jOBG+61A*%-?oiU zV@;q&ysl8aItf_$Xrco7EmA*~^}qb?T+Ue5mqRls-1(p?R7y%T3tag0#adU0=dCNG zSCfF1pHhf#;I|uZFUdN2=gl#RlRV delta 933 zcmbQu-o`OOLXw4L`4e-T z+RD5auxy$7h5ya&$tB-KvMx_r>U>V&$AahQzrXxa(qp^+`Pcb6{M(F^AJ}&`S6CbC z_su)aNR znxM-0<(&HTub-MYcBE-PNL}*ksg~HbI{u%V*QURD;>F6z>9DLZYJrGoLz?=7lS_ld zIalsq^0lXSe|Tf{qiLB6{UOEs7crd;JK(ygq@kd(i*3<{K*xvtGg%frSd%Fhl5ivM z;o+K|{I8Hbg=*F`2*+$WhN{y%UPUP;r5VJ$`(GZwrQhZ7Gbfay%c!V8?g&Wz9dw`js)C9aDC0xXsWVD#mr) zc+NT_i!;^>=S9i0HBIYfh}5*4uWK##G4H(NCC$p>BG#`9c@1P-a`y=KEPkmcx+RB2 ziSKIEuZ1D6!y>HS^)7y<>sOZ&pMCmntVmsElgaJ;U4351mn}JBzN$4yO04C#ujJeL zylVSXFS1TcynM%RL1um37pBuu3SJWy-1m%-zURrUnf>hH(u%v^|7<;WQv4ey&-e1c zA6frf*Xz$cuu1c#=V~VYbejd*haZHua<*t~XTNoJd&I6C(|&&zwXTv+cCUEJGVOC& z*N=#lx`GhjT^paoF8Dp^XP}XAr?tJQ{x8|XeGE+Y3=-wCis}`1ish=-^*^ou$lm^6 z-ncID-)mtjN!}x$k0^5eY5ue0e^ABL>2(vrw>eMTZof@YfM2{(GAH?gJd4!@PPw(m zzs4S8U~8;b{&C%uqbBb5wR}0|k1zfBKU@W-bJY^ph?11Vl2ohYqEsNoU}Ruqq-$WP zYiJZ=WMpM*Vr6QeZD3(#V36tH9w39FBR4-KGp!Q04hg9j3xFCJJYD@<);T3K0RYa? Bl79dI diff --git a/graphics/pokemon/mamoswine/overworld.png b/graphics/pokemon/mamoswine/overworld.png index 201c3a7a845da835152716a9b39e11ff8cc14eed..2a4c4f7b8453e9b1ff8601653e51a04425024df2 100644 GIT binary patch delta 817 zcmV-11J3-e2&V^-7zqdi0001UMu)eNF&hyt008P=0026d000+od=OfsoFC=isQ*S^ zb#w##Ebk28J?_p69Pu03E}_a8a&8iASHL-U zz8Rn`;GBz~4G3lOi|q48WXqWj)S~EDW@rWluKLtl_iZM<&hRHVtoN+uOawo`U zd*~W)!;eL}blhfKrMZT zwqfnx>pmbbUoTYqy}0FOeh9m|m#vQBXP)>(mMzYsoi6Y!C~J=OA>yQ1y*J?^5q+ba z(;rliFN#J|R1$vsoH-X!E->y9&Xb<}d_J`c^3q6`xC%0026e z000+ooVrmwkxf4x0b)x>L;#2d9Y_EG00(qQO+^Rh0SyKu3f6PiSdobzf8R+&K~zY` z?bbbS(?A#p@HjTUx%x;J%)& zWL=Ed`i7*-oCDT z9;xSAC2?SUJhoO2{J?fo3(6WulhSh zSu_iDPTCv(WqbX2e=E-rTXCRS$+7x%kp)JD9JBl4?JMuycye;+yb1S}GV@;OLYzl5 zethOe;CtULkNQ!eoMSd&b#rnx9{V3$D(5TJr`8FYHKDpOEl-QOlwM9D1(lPrrZhf2XUi_g-*tqY;Z1Rm+;) z$+5$2JoFq)8nnUITmW+uO8EKE?mFt)^5f-4wC31t!9k#9QbS>h{6`8_Evg!dscA+u z-@&SBQlg=`DKq5@S{!v1)BO3vq$T@I77d_EsX}Rm(&*WuP$Mcu^Ii6yRrqmkGblt? z+;Ml=36!GMf9-b4UTC(BOq2Zyz$pG308v0z4Fh4xLA+m-$4n_ZBQ5~s;R<4--`kbB z`@O(;i5nDf@&`N~5aa0SiGbAamum3^LR5QZV5zd%H&PR%3GxXj zf7*XHegQairl7BuURwYF03~!qSaf7zbY(hYa%Ew3Tx9?G+P@0000bbVXQnWMOn=I&E)cX=ZrJTHXJ|VXoW*>h7nJ05iD72_{J^ix2`7v(aQLLUW7AF(hQmH#W>&~=Ysrm z2UDN&%*|*5mgl|iq+rT1L&BW zYNvzZI>RP^=Qg*+6e)m`>j1!QTbxzut75`&+nM~5CLN_?503u8)j5FO_0x_5x9lCM z_CRiN&u|sMgy+z}g1pldSampZtKt)hVM~wI)evj0DuGmZ%X>UXkLnmRH$4tEM)vKT zb&fy8SR_#Xa^Ui%2#_4G#6ZUK_*2pzvMPJF4 zKx7AYHy*Dtta+tRYUNhw+jkY@ec0rP0e_GZ#I3%oNRHx_Kyt7vjIFzF#-9<;Dz^i4 zDS{ry2R=w3wVjJ>!fA~~V(j0fxt0OyT*T|AJn{anh#7aS=HOe z<*#9*wqgDOSGfanCSO?hT+(hpR{LM1`_lKt^*4^* zNme=}et24FU}Y_H=ZrZCa*R{vbsz5WWHoqe>~K*(@X=%bp1Eh76;kIlFPggE^wYcxb!NK%htjQV8D7SVpPjfr?@JGh*@{=Y7T5=Ge7erJW=Yq=qQVP*b{>3he%6uw z$)ydZbMDpubG!6OUyB~+6ER@1_lqlZa9siAvZrIGp!Q0hKVaU R%7GdfJYD@<);T3K0RU{-LMH$K diff --git a/graphics/pokemon/marowak/overworld.png b/graphics/pokemon/marowak/overworld.png index d37ef573093733f62e47e4c90449eb8414163773..92f619e0ad099e432e06d8211304fabe1961f74e 100644 GIT binary patch delta 668 zcmV;N0%QH_2IvKl7#auz0001UMu)cm0004VQb$4nuFf3k0000mkzpth0000000000 z0000076v_-k*yzpN=ZaPR9J=WmjQ3%APj|zF*Qm4|NlMPK$2Y^(Dt;uo0O+%mG(LC zY>d-A9=C4Yx^?T;|D_QAjQ?u|8XN5J7^DBHAAgOeSVZ`~go~c}ySh zVlSyE^wS$~b(JW2fc^jj-^|TlDxyvT6V8;H;QHUqV`w;k1O@>!{)oJ9z$nET=eY9- z6Bu&l-JkF9F82&uNPtZ?<);e2&5z=12~}xuLi{p$`ke2j5D2e-C@Fg#M;VMW^@D-{_sIB zc2X>8%)h{Y<6-Y3-o_Ne88hX+LGTXm8yIqKFRI=K2bWHOyTfqKCA&lOmltq`%ZYQj0J3hyMCrTP<)!Ean(0^7EKW)0K|;RLqLY}yfm1k7MN;!77t zYhP(CfD+UxQ+lL0ycpD-&s;CUbx>)AH!Wgj?BBRk;J+DMO`wO_zQ5$1!)xl^*z2Rk zxEN&m!r`|8sX2D9>6SZJtQuVXgjWy|b$XsSY=Gq+9(-gsrC&)|IhA*1wm4&WpxsW9GcU zfI%DKxdh=J_mH9gS0ef`vuBNu&fjGG6%V(5j(!1)R~=AMt*HY50000l*!(QU) z>&pI&k(W)${Dz~=`H5Nb^%|Zojv*e$-(Ei0cgsM4Eg^j4l-GK(RmZ)r$Z1BtTX|jM zWTD`@;sv2y%5Qt!PF*l&|HRgzzT(K~QkgB=Cakad@#D-N^65?-JFjhB_x1g& zyJzSBy>7bWqxC$N!k+olqx6rixxC=@Pup}Km(J_nUlxCn`n*J@^jGQGRF%{%^&Wbr zoJ*!~t8d8fy6$bc@5VuapC!|O_%!Xj_u+-<+)Vo)KKoB>6Y4kIa91Gu{wv`<+w=Tu z-WONTVU_;vb0TL6^Wx6)!F%RdI=_`<7T?~ZdL)_WPnYv=1@$=N*oo)=e7;+C!tGh# zuWOC>m&Dwj`St8=2eXeeinblwzf{um{*Fx=^-n%kzWg5Y-1f)W!X-){rObPt1gkGd zUl?zb?)>@+=M4R$T|Z>&(hnc}drjrZ+U(EOd{YGyWVhY3lI>m-+3J@x@qO&`YCD;f zv+uUnU%th%fN}Lkc8ltCYq{5H;cBwWuUQqC`P$E9d!>9UHzGN1@7vuQ8kaloV_tqx zGv6qi=gRi_KUPm1HVDPeZflvYz;No2iA8nJy{{jBOb(xF{8@SZfe7}07IJ5MR?0MQ zt6gQ%Y{Q(&^z-J#zwG*^xMq9 zfPn5JY+WL+F3q&ur+N3!eer_ePv5?84t?K}b#?!<{cGc;7ye><9He~|n3hyaTq8?+%v5A$bskVWIm4ShEef@3}4Y~O#nQ4^}4Jz1l Ucqtuc2kKz(boFyt=akR{0GEbjApigX diff --git a/graphics/pokemon/marshtomp/overworld.png b/graphics/pokemon/marshtomp/overworld.png index a2d25bbab8b63ddac4c6b0586a484d0f1d0423af..951e60964cc5bd624d5aeb09a68660c9e8f753e5 100644 GIT binary patch delta 522 zcmcb~dWdC$gcJue0|P^`Tl;n(#aJBV?!>U}oXkrg$6#WjUOkWog8scL*@2Wma-v@u zkXC?VAjQCtwDa9Bpw1}yfrX<2$HOuXj*^}Q?C-FxbEFyqeO!#PQ2 zKe^_HxyZDwgMrwGv*#?ZzVl4}wcz<8spA{dHXhBF-f>p5ZKK%5N6gBM^%Lt4E7a{f z%$6<|kf?w3a?OKj2d&aYRXCKQ&V4YEk60vG5?tql|8+OSILy7wbCUau>bLLzt*j517O$vkRDSeggNS(L zWPgJh4#GTstv~$>?v`}&Pg!e!P3?F>bG@=s>zYNDONtz33m=rb7&>pV%AMIR3o9OE z6k2Ds%rV}knJ#TpQE6e6612PGarwJ`|7QkAK84+X)N|Zg_vE~?bn%-z(+!UKNN%>i z{o>$W^GJ>!y@$D?r%bO|@=Ve@z34=|2?M+I_ic`Iwko;Ggw6TL{=KXyYRblAd-$4< zbH($fE;@YboYcWfQI$&%SP0o{GM;yTkIg-$Nu|fF-V`2wQz+r`K44MxG)5FMi4PQYp00i_ I>zopr00!Xad;kCd delta 647 zcmX@aa+7s}geMC#0|UdhZCTrZ6id3JuOkD)#(wTUiL5}rLb6AYF9SoB8UsT^3j@P1 zpisjL28L1t28LG&3=CE?7#PG0=Ijcz0ZM31G}2SixHjbKc`- zCU-C0ebD&CwH7lqzP@ujPWv0=54dz1@(4XX^6p9bMsfE0Q)75HWL(<*_uc(_*6YH# zCWOaTKK)vrm2Mq8E4N{h;_j#j?e*I-mTk{-xHD~H>V>XpZ(hBNvMjt?Hf?KM{mN&a zW~c8-S#G$}lKFd2$i5eOd28SAs<<33^U3b{;$Ggm|18BvrNm43?L6G_LVPLj_VPz< zFMBTu7dGFz&%1kpQRidtI?ImZUjCC*UA>qEwV$!A;9>tbfuB9t`K?CRx+`k$zc)*m zdq^I*$-n-456@+d0;8DvDmnWXSJel@>I8dtZx-A5PrWi*xLH&vNNBTn(Kd>ab-fJ*ge4yI$gyI zJ+D}Evg$p>oPShB{ES=T_GI?+%v8k1jxwe6Ym4SihbDpgz8glbfGSez?Yp~e0g_D6BsKwLO K&t;ucLK6V;Gz!%K diff --git a/graphics/pokemon/meowth/overworld.png b/graphics/pokemon/meowth/overworld.png index 4961e2ce85f43748baa63eb65cf56908c6c25e03..cd3de0b77abb4966ce0ca0d11995c85e9eab3f1c 100644 GIT binary patch delta 695 zcmV;o0!aPk2JHoq7#auz0001UMu)cm0004VQb$4nuFf3k0000mkzp=>00000007Fo zk7xh@01#tgPIdqQ03ZMW03ZMW00000003gS?)m@#0#8XqK~z|U?UzAv!!QU%jgT5S zvG0G~evs29GJ=kqg%@TzZZnTcAA~TOrpqq7?6S)~XGC=Xr#G!u}-DHX=~ko(K3x3`@J|;W4J1snFN$ zhG#a?5OG;OIGTuyzMMTTk8>#*;WKiOOW8X`93HjKuDXEB9vNmX9&@gcRg{-fjQ}Ff zRA;BQB90P8g0VqCl~{fOXNcn5j3KsH7;*X{98j$^{+kO#m(QQ_Y zs}gX!L14YlzYEjjK_2hY$n(8QjA#<#x7#4(DC{g;1(sd6YJ77rxCor@%WDAK2hj1i z07c+3OP8QBFLnSfmm1AFEQw6xrVD>M7<`ucDvR9m#=604$GZUWd0B9@(&h59Sa%@c z;-bS6yi5vS)WPC^EKzB3=^a71IlY!h&ry-xWQod<5Lf)%_BPl&-*mS-B=B3{KI4KJBq!QsT&hDowYcnd)K z0*wVKqVd;Kc}?oTody9kk0B+kJ!jU{{=tJ$vN=qiz=oW8=2@DK1a|44#`MU`6L|J- dq?aAAZ?^0b5M8cB2aNy#002ovPDHLkV1jnVK8FAR delta 788 zcmaFM`jl;ggeMC#0|UdhZCTrZ6id3JuOkD)#(wTUiL5}rLb6AYF9SoB8UsT^3j@P1 zpisjL28L1t28LG&3=CE?7#PG0=Ijcz0ZM31G}2S?Da`x|WHTmtySp%Su*!M>IqW5# zzOL-g7>ti&yh@v!x?|z#pK%AeR4g>i zHU8O%?6OEd%=`Aj%V)E#*o8cHr|Q-=I^ACoywLl&&@a2tqVjL*ON}&lstP=OShs1( zepT=EhUcGR=J`B)DIp&}Daq_mGRv8CWg9OCt3%2nX|=Bv7VO#ms4j8~=9r6M1 z`aQfRh2Dt`v`=BXGvDy^ik4in+iaI-G_t-Hm2y}lwJ~$&q($1vZAabfcU(9SwdV8= z@wo?YtvP*gdPF>5*yZf}R%hmPOEcB}nQKLr!n#9`oUFFCyk3F#Z%6GjB zygydod=l@`kROl~#Bru0*HHS8)8pGdmcCtAKHCXAczXVs^S@{A`_mRG&YaWHrk7?zuwyCc9oq2cJje4gR_{&ti z(BJABm>TGu$ziG-_E-*H^%PKlF8nmxEQ8gx*%!z*>9%tC8xhT zEf+Gn?W%WAdh7FE-E~&A_m!o>zs@GlWeS@T$Ew=FmEu*;e&SBtV*fJ-r7y6mZLv+c zAb;Dr)qVe0`_(o7uWx_QIekBmarfH9nF4Qt=|{E1HKHUXu_VKYn_7#Ud^n^>8cXd75q85jgEDw&9)AvZrIGp!O+g9J>6!v8b6KphO8u6{1-oD!M< D49QFK diff --git a/graphics/pokemon/mesprit/overworld.png b/graphics/pokemon/mesprit/overworld.png index ea0c72eeced0ea47e9df2c6527a8b4670e86c312..5bb1711065ad851af9bd421b377264bb066712c5 100644 GIT binary patch delta 745 zcmVV`Tyho*E|fv5d2Zfo4NN!W2B#Pvi5@|^-|u=XAFs5g=d^XC@FXk`;>R{#omF! zGfpvD%6M>0XWSQFR*3DGoN?zz!vTM)dJQI1JGgI+xOm z+>yGQ#?Numl+Fm8^8vRMgJKF_Vszu z9hKdXpK(8oKA^GZq+6UIkkj)V0@42Ke#7S6?q67<5{Qq|;ew*MS{DeBm_>htnPS+T za)&ntv@xU!<0B;=si|-IY9I@Yf#j~|Om`tHwhAOU;4&Kk#wDjkp#6hym+i4jyy3es z_GpY9CSfvxq)i|2%Ag60@r68FbN&=R2j?yRR@2TO!>`K0+BFw__$(A#aI@u_sg2r26uclIEP77MoZIU zUK=!lB-5lXLTS>MRiM+AUBjK~DCMlFNCIb^aGDgMDbFXUS{hy%tb%j_n_Q~a@AJx_ z3ABqK;9}!n3A7>W@TEU3^)};6{d_{%V8d5~^&VrBYc=xEU_||`*3eE`SNY6fXX<8J$aTk7#G z_C}AYt!AEW)HQXlLe1ce?KGe4)x!@AzAqjd{CTe{ b{yV+_^kykLNAZSf00000NkvXXu0mjfshM!r delta 862 zcmaFBc8z_4gd__y0|UdhZCTrZ6id3JuOkD)#(wTUiL4V9r3DQb7+xhXFj&oCU=S~u zvn$YMqOZLyW0JSK3quF1tOrmFdx@v7EBiA>UN#jTdx4_diJkKG?Vc`tgTqDsxCV#(_{J(#BuE2p!)3&Zj{hJ&4ZLxLX zYyOpm?HhB0oE`ps_r6JH zrd)gV-KsZ7_T+(iJR<+L@??DY^Z46o{v2;*KAz&s*|l2ZG#&9OdfZfR@|7sGj3A)$9Do-Ha-eEU{@=dHaGCctm{8}HJHm^hMWD` z_HLy^)F=Lvfr=h)Yj<3Q zv2_Wxf8>B^Rkg%5q9i4;B-JXpC>2OC7#SED=^7a78XAQd8Ce;dSs5B>8(3Hw7}TZD g|Ae9;H$NpatrE8eek*l9paup{S3eh)bxsLQ0NW&b<^TWy diff --git a/graphics/pokemon/mew/overworld.png b/graphics/pokemon/mew/overworld.png index 067d6c83d67ba0b141628556654bfdf076e21e02..0a676ddf6cae192450f371b8c60342c96ded09b6 100644 GIT binary patch delta 620 zcmV-y0+aol2FnGI7zqdi0001UMu)eNF&h;x008P=0026d000+od=sN#FQ))gRgxse3 z)gbaS8{jtQYOp;>zZ9ieaSafS$+C)De^mXGaw#&qA4PB z{V?cuJkhTLagEGC$-$2}<-)_kk^5g&wF_&*6Dw*SU|;DJki-rXevY{v?I6nS&)d>PdG}@JI@WgTO7TpJ+Z;5%otO;$cORz>0f_ z^$F!~&60b8@{*H z7a6-}O;&MT(QVKY^=yh%+)`|LzLSIP-X*QTirbWc-e(WqinCfwD)<%-0+aV>%`c88 zYf5g#0kbJK=hnaTFD)n)x5J%%BY8Aeg?%cpzRi56bK}zl--&*)q8dV*#3Dbjyp4In z8f5aac$!v|1(hSefAqJ7BhXaj$<4Uy4LxvpLD^xLMnPw&n2nj3+Sxt1MyopiJM{=~VVpG%)t zI&Xh^n7^TZcK+eM=m@5{3?*hi(>deAqeDF3-sb-CL-xU|=Nlfc+FUFZ;BYzm*6i#9 zyYwqQaPF--#_>-3+>JA}v)9ZwjJvx__C2?p&Bu4!xQ}SQzVoJL{k*#C9Xq{WPcQh8 ze{1oM*F^^{F0H<@`DDj(@rg=|?A45C%U;LMTNph#v?p2Iy?S5$_a*Ni?#mTTS}n1A znsV~xX;!Ce?Jr245HbwzF^pAweD1I9`gYx8-y=zruey#t>=*385F^X}%2AbD`o&xeeqOl8h(~nfv}OgJhlkY74R%iHNEjBA7mAvx5%F6ZH8jJ$p=Y*39lGZ zSHLBY^SHy+T;Jz33E2c@w+&u!`YzF%;R~+jxeC0)2bM@^5b)mhu;R}BF^*|;3v|vk zr69pC@D*o@ZIXWzxA{H=Mg88qUn0?j%s#5)t^v z+fD$lEc}pQ6&R@vDv5P%VxKm=`$(qL2>&G0>-CyG=T)GlA|fT}pat2k1R(8#t25sx zXaaGmz`MYbJEhQ1!>JVRo)zCF__hOAM1sCN?K7Yohc|zL&}J`T&nue>7Iv;T-zHcE zGH+pp_%3v)@7rtP7M?Zso$&8}9iy9ArS8o>$# z1KHd!_Mvedwh68zipHuh9~0oJb9fb~^jT&Fx;ib|uG7Yo9ulNLE+WaYWUvao=qIcoHLDd#MQC3M1T+dxqYNSoWE09|;}ZGy&y{Rvx3l6wx!+}7h!zilwliTX_7 z-lXop96&>8Cg?9x|xb+5gA0=kqZ{!fbC90H{CpOBify)`-#Zd+J{5S3h zMBYnQ=alB+lATKxWd?69x?3qC4ESFP` z=7%mI#d+9c2E{DAFBE7Z^j+LXiDFz&{_Vg{jg9Vor>xlHT6eE6umY`}xOYFg47Qmk zkS){>BIo`pkyUi58g_XNd?K(OJ#GQ#W_gm}+sxD8MgM>eF&w_j? e;X4@qJB delta 963 zcmbQu-o-IN!jpxWfq`M$wybSHiY49A*O7r?V?XzwL{=bQA=x9ymw};5je((|g@NH0 zP^jSr14F3+1H-EX1_rAc3=HB0b9M#V03{SB8mX!<@+TeuvKf=S-CY=Fp5N7bjc>00--BVfC4J|s_RP6hFPVCn zckxbp^XfNeUe=sz``vPBsa!=)fyUCc4g0@Ls#~~PPC4+-1O9DXB3E7+3T1n>+TRJE za;}QUt@3czhHlADx#mLEB{A)Hr#WrS+wHjj>a5zSpV~@q3r=?`xjoT*(Rqe%5o>ab zW+Y_>zZTCw-<-EQJXx`dCu8X|nXYGF9Q^7tb1#Rj%hmt$tHN>3$9?ywDg|h7s(!IS zc>|BG`3mMc2Q=@9gfuE`>iDuV{@kqJdpsvUk(Qw^#sAQ7XU4P@x!nsZX4jm)p?E-7<|-@iWr4(h_0F&EJ3b7x-6zpxyvaKx zAviEM@nyS}!jBpDyKhaG61QWK_!Ru_(F=Fi#JApCA8B|^ioRjW+%#jmj@|Q}t65o2 zRVCDX{Cn+EKUZqBc0+iXf#*7YW}Q1l#!n9m%jtI7-n6~-i-%j@jG>3yoi$7R!$k2G zpVqY3lLXd?KInd8b-Di6+ucuQW&dTke3m8KWYcb!?c$7=n8jW8{+qQ|#Q&?qyTnbo zq6QzF)DN+2Khwvw_}l+kkIr6U-uu^jxBrFw`lGK_-eQg4dW~zw-tGIJ?Y~pU#L}k3 z8L-G$518ClOI#yLQW8s2t&)pUffR$0fsv7}fuXLUQHYU|m9eRnfr-1efrXWUft8kE hD2k5U{FKbJN^CkH8obL_z65Gu@O1TaS?83{1OT1mq;dcN diff --git a/graphics/pokemon/mightyena/overworld.png b/graphics/pokemon/mightyena/overworld.png index a7d232508614a60eb4dd4a7d69489e298b7c5f6c..4dc936895da74afbdd91c48265b18d1ed63ebc2a 100644 GIT binary patch delta 811 zcmV+`1JwNL2apGl7zqdi0001UMu)eNF&h;x008P=0026d000+od=tg>M#sNksR59^8ep^wxopSBH7S(4ligR zVX{te_0+8?(B-7!?YuwNvwhT5zgX^AH$X(xpvju9KGQ!5TF4xqY_y0ra`+bAe$5 zJw8ES!w2It({j6wz>M!?K;5H9qXdt*=fnj@4~q_;udFCT7c5j{~1)NW0#|*Ey~gX*SMpsRRmlP!^( z_l^-?hL@|BO3-nEgb~*Qn7Wc|n6&z|`W!jhrJ6qLLvOXMz7ehN pcm@2~-)}u)=hfpmDIfa}_7B&-75l33IK=<}002ovPDHLkV1gAIh7kY& delta 902 zcmbQh{)&Bqgd__y0|UdhZCTrZ6id3JuOkD)#(wTUiL4V9r9}-G7+xhXFj&oCU=S~u zvn$XBs7QTcptefL^~CQ$He-^vy9+}HtE>l*!(QU)>&pI&k(W(b`g2oa?!->{`X!z& zjv*e$-%dT7Cu}Hi{B5XQ!u7DSi7yg!Cx1J1blbL_1uGQZ+TOI{$jkINQaaoD9>YcR z2duvsY?$@KtZ%P9zHAxCR|X+v)l28)|8GoBJI?WU`~Kqw{1dO7UmedO`Xc!69=;8H ztSiInS4=Tja(A2%vmb2u-n7nnGE;Jf=L@^N*kM1cFiwo5I^*+Vv>60 z<{LWdr&Si;+;(DN!kLP7>BhF_f_u~!WnN`k`s2_VzUwDFj{MmdwCbmJ^1a^OiH95S zSGlSGDp|X}KCsDscG(?^+>6uY9{j$v@bpH*&%H8bNB&Gv+x)!VpEvAE+Ghx^{$|ZIt3Bazt$EF>iruzxx1V`f z*zZv^-2HWO{;@kcdzw3pcis=?%GbDi;=ramUMsn!&HicJ{(7eNS4u#KWMXJ(S4KR` ztj<-!^H!<^WyhNc-sW9us9moi@NtX69;T*MkJsF=H8|Dsb^V*YpN>n;y>veQ$*toS z&nEYMer0ubMa<wxC|6xlvidMTGlb%Kka;*$d=&82(Iu%eNtVhwRnvZy$gO zS+&G9q9i4;B-JXpC>2OC7#SED=^7a78XAQd8Ce;dS{a#Z8(3Hw7 z00000005*JcmeugK~z|U?Uvzg z!ypWVNopW=;Qe2BHp%|QzO`tYG;ylbN}r3**d(O1w6wIew6ye(v~6?zuhVb)9)=)3 zX<|P8_S$KNPnw|p6)ul>$|Z*Zh)jql_zsG>*GPc+~ zCWtE?Gv@h2TmuTJinm38Yk4<+E)nr-!h#kfZu5QVd5Zw2;~UrGsYJw6VvY@e0=1EFu#0N<4MbcY&yB1={d(MB$j_5^DOTUJLBK}> zVV1~1#5JPXQ@Z(wEapT)QnbC!DM#EASeqgPF=wq&tK(03GOX?OpVNSI*EUi24aA(q z?6oFN0OE-oGkfj*372jOx^Ey{=G3K&e!4edfa{dEk;5|xd2e!_(tHCk*C8e5=qgc) z?V$f6?V=8w{~`r^+Q7ZYXY5Xpqx&}LWh}Z%O&gdNPVnm%mfqACez6t}j?t9200000 LNkvXXu0mjf6zt{C delta 589 zcmcb?vYmB;gd__y0|UdhZCTrZ6id3JuOkD)#(wTUiL4V9r9}-G7+xhXFj&oCU=S~u zvn$XBs7PyKpq`44`AuOUn=#4T-G!lpRn`N@VK4FYb!C6X$jhd}yncQDpNXCF^?9By zjv*e$-(I%%JM199_Mmf%-X+#NhK@F&!Uj>Jjgxk42ryf=uzT`_<8t>CZi@(VaPv8I zSkDTWt;E6Sa3t|YNu0N_-U@-AyYu%L*Y)shIIXw)&*C>%e{BETdsr+xIJ0ow+x$6R z*BE}Y&pA4=c3+mnmrCY2^EZ|$C&;qxIcr=WyP-^rS-Z@D%c6O4$dRfB#&rJ4is?I? zWQzC%lh4JiT0ZBu@LZ2$3xd{4SUVpnbBIouF=e~nh0Q!lg?BeDS-UN43+pVFEr}a+ zU6!=oi}F5oVb5mvu(vM^u5RShn5~~s)-=f|Wwl|Sm-p(Z2Tzjp@xGTKoOA#`^0y)=j@D{rnc= zvw4%Iee}3_{pyOMMQIMXcWxb;f0p0zz|QyTCLL|S_)slz&4?&TNi0dVN-jzTQVd20 zMn<{@hPsAEAx1`4#%5Lq#@YrJRt5$lyQbWL=zwa-%}>cptHiA#^|?+8Py>UftDnm{ Hr-UW|Amr_< diff --git a/graphics/pokemon/misdreavus/overworld.png b/graphics/pokemon/misdreavus/overworld.png index fbb6a2341b1ab9fdf1f28e3d8c42cc0192636a0a..1f623d2e0ca6428037782361c02c303c6b0111f0 100644 GIT binary patch delta 790 zcmV+x1L^#!2yD!^424O2DILnb|KpBN5?UHNFq-cESP4rM#Aobd$DvHqWtUxc z*=2vvQu+j+@^gm|E#;gJ@|@r&KaKyXg#uEEPc2cHCyjC1KR&U4eD4t8cVWj1MV8-t zKva?}gvWzMmHeOsoD z4(Km%Uja1fR)PAr0G3}x8@C@<0Q7$;-S1Lb%uZn88&)KEKoORjV{ZRtO<*`7=Nul(vMxGoapOApBNsLN zXI&5>DZvuCc!IHK0cgzziFgVFw9cg2FV?*Jgl6 zd_r^?HMnsd*Vn#A2Ic*PqlTfnh7TRAg*=pB1spp}#}xS3;Zr+{{*TjNcG>@D-+^cw UwgToTEdT%j07*qoM6N<$g1(t;Bme*a delta 982 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 Tj?kB900000NkvXXu0mjfcCIqW diff --git a/graphics/pokemon/mothim/shiny.pal b/graphics/pokemon/mothim/shiny.pal index 7c5d2000a6..31bd384bd7 100644 --- a/graphics/pokemon/mothim/shiny.pal +++ b/graphics/pokemon/mothim/shiny.pal @@ -2,18 +2,18 @@ JASC-PAL 0100 16 152 208 160 -115 65 32 -230 106 41 -246 213 123 -189 156 98 -106 90 74 +40 80 104 +80 160 208 +232 232 136 +200 192 64 +136 128 32 16 16 16 -164 74 0 -205 205 205 -98 98 98 -148 148 148 -57 41 41 -106 90 90 -74 57 57 +40 120 152 +192 200 208 +80 88 104 +128 136 152 +40 48 40 +88 112 88 +56 72 48 0 0 0 0 0 0 diff --git a/graphics/pokemon/numel/overworld.png b/graphics/pokemon/numel/overworld.png index 38b5a2421d3b492942836fb16410207563d71c68..b12082c684e2926e3e9d2b69773bf41d92cd2934 100644 GIT binary patch delta 798 zcmV+(1L6FP2=WGy7#auz0001UMu)cm0004VQb$4nuFf3k0000mkzp|h0001klH}i! zwjY1gNkleAj!Fu zo3pm&v_N0K2rYio;DzQxJ5fg*M6CiJ@SLN9{179D4Gw`Kxkf}f0oXh+vyQPFXT^vY zfvRc-(C6@2_8M6_DQI$Wm;jS_jGa%5lf)69!~-f4RI}4Lz!5L{N{w_Bnp|->VRe64 zAu{cOP9N~wgy^Vl_iq57r2?q!ob0)qg=^3>Z61a6zCir`?FdV@7`D)m4_t ze7Z5T;+4K-epq9PO%8ou$V`WWDqx|GK$E=5DKI%Gqf>5Ec%4GRiC0%5N`unMPvfXC zxqLyO2FK(Ko}To3l-h_>AXXNaWWax)=KeVVn_~$Q2X$p|U!OB3r$Fp(R;a!>!P2qB zBc25c&M5>L=qQZe+j_iMIgQh6e+`$hJaUI z1(5IAlqeHTb=M9!6o&O4@-6MDka1G&n>-72_cd4fdUwqLY+fD;Szqh1Fywz4?_2bE zE5yf><4NF%v(V)(fm?;PmBTg<`aEvb@FC|*0hgo*-)o0gd=^-7wDEZdkmS?{g*>V1 z9k4l*@L^SnkNNJk!7XHkJoM|0+T!kz@pAxtsBT%{CcYVf|KY7iEwT#3ZrhgAwDlCR z`EErUm$~%nb=V!wSolp??ZR$uBZpsjy@WglWTRo5n*qch-rs>dPt1Ou$N%9_VaYFT z{%C9n%u(s>aB2v^N6pV=WP3Y>;?Au%f6=G(vI5wPp)*cXU|V(X|KI*<%+s0i`22yO c%l@W)1FxPVV1R%`ssI2007*qoM6N<$g5xZFTL1t6 delta 953 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 JPDHLkV1j$01PA~C delta 670 zcmbQk`j2&jgd__y0|UdhZCTrZ6id3JuOkD)#(wTUiL4V9r9}-G7+xhXFj&oCU=S~u zvn$XBs7P^QpsI>0d*Esyn=#4T-G!lpRn`N@VK4FYb!C6X$jhd}cTrB*abl-@{XS0@ z#}JR>Z?EjlJ7gfhUa;6>-p>gWtctcRDDleWN>Z^rm95aEv@vMj0`KQdA)2z*A+MsZ z1xnYL9df-e@phfn?|*&FiEpB=@4B|tZ=IX%8}HR@a~J6IU-<55EZhD!+%>4h*0(ur ztJ{s6CUe<&l`_6f*z);~v7-N$Djvx#uh{C({9s_4@nl_bHCwBKaM5aZKdG}5ZaTcM znSOFkRpU1vW)oL4nF^-46O?^YP8Ho;`mDP)A>`cQDQn8lK4npVVslKb;m*bPjbZ}9 z#W&bbNuIm#FOM&lO~yR>AIk@=gqN&tMa?@FGTS(JWft9$Ia?)s!m(lx-v!q%IKZ`&oB3gJrK^W#+!A42*rg4W{PdT~7^`+J-Y;jNZI=^Y6;AS$_f- ztx-0*rSJRe>}^wr(`&k8|FaqGd$nJzc6Z_))3&5~mwiHBm+jt6x%cg@@|AhlE-3m( z?BtR;{9)bdH*BgsTlX?wW?#PF_*%44VT6f^vT2N^-21Tl_pWLFGDnXU`~GgduAgz= z=JD||Kjt6d+x;Yt{#kZ*4)3w$-%mGkf4}{O({I5})3TYLH~y|Y|AO_O_trg)zt(7` zUom%yY|6+uxHAzL!Kx*$5hW>!C8<`)MX5lF!N|bKNY}tn*U%`$$jHjr%*xP2+rYxg nz(98UsuLg$mT(=p`6-!cmAG}}yb>w_>R|A6^>bP0l+XkKMNt(i diff --git a/graphics/pokemon/pinsir/overworld.png b/graphics/pokemon/pinsir/overworld.png index 3ac6218fe732c084f495b24eefd28773831de9fb..001af798e97df921ce975bdad538e810fe28d66b 100644 GIT binary patch delta 786 zcmV+t1MU3I2l@t(7zqdi0001UMu)eNF&hyt008P=0026d000+od=u&5I41{+u5SI6U;4>yS0uD4fmHH=^T5b5eW^4>(KcClLd+oK?Ui$?D z?jC-||5^YXZl8X_g*K8m6*xd~@}ffBvgyJN%c2vMr!l`K z;5gzD7qtk_r)I^*oGtEXev5DDoABZgu&hRXuIaZKS4}&ngQ|VRw;7z21aB4IbM7j) zPod@VO_R?!mk8+)m=L->G~v2PYE&3ag;UO|9s*t4L37T15f6b8{cfA_4}^c~axZYs zS>UL1kQ@5uJjGpMjOjW5$O7@~@)&J}Qx1INYG0TY9CA^Cho#P8#_17tgBE?Zz%dub z|4N}kp{Wxv<`T110wqUz#A$lO?j`D`pK`VqCnz=k(o-KFal{PKz@nK7DDXV8xnR=q z{$*q>&6=Q5;xQ-H45JfQmZ*PSr6H$4HU+3ztE~Tll=87r5OV5x?CvCS>piD=+9%~b z7fz5E-Ffj;D154&VDb}FAj%T&rgvVo(V_Ql!>a^$FAdFu4jSJ`V8Edx!u93*lKxQ~ zr#tRS=oedlNsw9uXOoNW(W=1uvE}GbGTwGYpq9%>;GR>U=qZy@VugQ`F1P3l=h?#! z9hWn~O<*}{0vFAk~hc&gNR5NVf|2yt39+FF2scF0A?i8Ew zt&rN|bTM(|&~d(GW};js$lVq$E*GBB6i`ymC}%y_Cnw_=P8HAAIavzHIg)itoDRfR zehkWm&1zBvcAN?9TzzI+o&v){jn&Rw6SL?Q4>wKD>askki(WazoBVi^=uRxZ+)ROG zY~!IjLH1t?#Vmnqg1xULBpc!9vUN$A`i{A^LOstZx@AGtV4DmSr_UggB z*#;8q1<`vNcpEPzdz`#^h1<6}d$reYwOsw3l@s?(N;X+JCvXezQ{8|qD;{aKD;_(L zuzJgBzORZW&mZ`2yiJj#c1!=ai}$W({OmkA;lC+E|Lpkvw;!w#z5X?x*=_QxUEG)6 zAE?VwE$i(Gevoot*?9rgjAs+;bcu<{s&)kjmgIljd0dnp%x>9gsZ=& zDy8n8x0qcpIx~5`S?_Y4g3G_pYo?}I9#;$GJHGsY^TZRzdr$ja)BkZmC@;B-%X(|K zgZa$mnG=NSzuGUz36niGd-r3TQvNJI>uJp_r}Ag$B{XfwO0E)NKWF^+h2_-Em!+hB zpK0ybclEY~?%ek!jFaVpyq_yul}&d0YqR_0X9lCEizl4RuD4F`>a_{HH~rsC6Q;E~ zr=(a7dWCA8E4CU~9Jew!za;$Y?v7K{mm6IV?%JML_HQ!JCY$BnBH&BbGtDnm{r-UW|6BUIA diff --git a/graphics/pokemon/politoed/overworld.png b/graphics/pokemon/politoed/overworld.png index aadde5b61471b7ffc29a1602c3007223559e03a2..a7310fdf6c3d2e9777d49940326c52090f6fa790 100644 GIT binary patch delta 663 zcmV;I0%-ln2lxe$7#0Wv0001UMu)cm0004VQb$4nuFf3kkzGHLyc~a8NklFCdTM=ZknM`M1hf{GtKAsGYFK z6Q*esOv#$!9$zPTD{F`jf464`?D2%tybb~LWH!*@7aL$YZ!>>HR>B@<#RHzopZwn! z{2w#`Q`|tr`2bv|S@}FIaGv4=KMDAR+XXC!!6!cocyq&ZS{BJ?HV|{Hd^%RX@L#P+ zrvO+!c&>Od_$b5RQ*bt*d3rn^3z3sB?K$nTo#oWQVkYs;Op#-c{+xdu4jHM|ruK#m8pKZ{|FY8>Dz$O~!TTJdZw?Pf4)}aCa x-~?Q)F0Xv9qTRF$Ugu8002ovPDHLkV1gl?JM;hm delta 870 zcmeytdV+m|gewa(0|UdhZCTrZ6id3JuOkD)#(wTUiL5}rLb6AYF9SoB8UsT^3j@P1 zpisjL28L1t28LG&3=CE?7#PG0=IjcznW$$k%b4Wt?!wT)D(eAM#$Mv->&pI&k(W)G zry%gjs)yFKj@;`NRovLj;=FxQ$-$Hpb2?W=v!ttUd%yq6S}UceYWBZ(f4_V4 zBJ0AlH+s%?xPO#85c9FDaqAu-_nn{k9<2TJmMJT)cd;&u(9WRxINm9r6aw6=uRj%) zciJs+=D4b_?tw~PiLLBFk@+4H1`96#KBc|LO2@=>f_wi0|6nc+Z8HXYQwHJBimWjy z6LcdSbao^>dLM3cV&9n)uX4+u9?MGKt)AOx@_px@hyqca4JX-pOgGIm2unS`#9W}r z{oMOajHlARbaj3-n$4|PUv50JMdPhUs>{0$>GPgyi@hwGGb3XHT3WX@ZBIHj*?eYA zu;bIC8wHlVcS&vWw=@3sQe|?!Ud0*_2eoJY-+O9*%&NI6s&4NhRV!RJ#V4ZBX5p=$ zMW-sXLUvxw?ya@okjz*(y=H^Zgu*AuC;6{N8U2>zj@$qH$K1~;?poK6$JJZU2(lO3 zc4JcgdZCJYy?-`N=$T$)&>g2hGF_gzN{u`mBe)xwCr89J^g-YmZf)?ciQ5=zUypW8y*9r_M8f zp5P2xsPV>{ar!x~+3m`Lue|e?H2&IIul_u6cU@lfrQ+T9$ZPxF+uR2pxXl=3}g%CWdq zsnb$Fao#!c>*Y_K6iuWeemM(VFY(tB@m_JTXNSui8P4`JVx(d_UoWIbHj! z%?}gC9{ViCt7X7T2=f%LES3SAUn;iASCbzmj5jt=O5rv)6%P__2If+5KjCs8s5Aqn z{xD&7kV~z#WL1Bd@RI{gzn`!SW(POX55`LyCCobj>rl~X5G36A4b=Ey!UYivpp-7Z z3lnZz=uUq&80hB`1?mg3C1Du>=C1@t|CF%&r)?q@Kswa;OTrc(#&HB4+K_OEBaH@L z1`dF`NW#2Q9advx0Ov$Rm6h@^mERK9`QoV%`;&c!K~^|=7O)Z$sd)Q@$TtbGvJE*& zYk`bo<|U)xD}ghA66o+b0F}S!r-s=M#)1ak5}tnrY6;5`osK!mQCbUJ_)Va}#|Ix@ z`IEjnxpyuBf{&XwaQ^7?B{GkI&7VH}%zrVs@cD|kw}2=6xP8kX4O}?l2lUQYCk-N8 ze`9_MFFWxL2eRM!EjZOZ_}=j{AQE^ej)A@imo32=I~Wg7c%=WVv%Xv(S(F$Z0PNX; Q000UA07*qoM6N<$f?&n~cK`qY delta 698 zcmZ3-x{Pgtgd__y0|UdhZCTrZ6id3JuOkD)#(wTUiL4V9r9}-G7+xhXFj&oCU=S~u zvn$XBs7QBWprK03o%%Q+n=#4T-G!lpRn`N@VK4FYb!C6X$jhd}y|Co@xrv?f^|w4- z978;gzn!$v>#&2w@%48mY`tami!XfL(vUUHG4cy$1Z!BdIvv+u+LEw&rG9`5Q|YHn z8LL*Mg)Rj}uZ=4-xBYy_y)xnPlI?##d++<-|J&)r|DT(ee>puzW*Yai9UISeJ>Btf zL7cYusleoucB{&`pRU-bwM6$6Ytfa6P3Kz$>hI1kZnVhL@jPpNwq^2HzFuDI=W1C^73Tt#<@7@Pn%hk0Lj^CJZ;ZzP++<{{)a-IeZ z($RY&AJ)$~(A@L2C6!}m=A1iL>z68K`@C?JR5=|h9i8{<#PeL%$|Rnj1z-6puKjq! z`|RXoDP8BM=dV0tes*-?qq9@^D|rjTe}0PExnRP&Gi_lK&2Ly29*8D}rq`K$<@AH*Nwi-)v*S^}*oj*a{3+4N?>z(e2GtuI)Ia>lR5a~F*#xmIakm+D z6#m>eBl1uAWa?|xgVyGj@x`}TYC;XCC-k22=~=6;zvAv4Q{{&|wf#mPug2Z{r6z2} zU;aF!+^$#h)D8u{@27H&(~J~-w}l@IpBH)X|4IA#%z@{(l-PcI1&n;v64!{5l*E!$ ztK_0oAjM#0U}U5lYG9~qXcS^(WMyn-WoW2vU}0ro;NRbxkD?JYD@<);T3K0RWu-D)0aR diff --git a/graphics/pokemon/prinplup/overworld.png b/graphics/pokemon/prinplup/overworld.png index 2ff43dd8cd44f4d30d7c4872ac38cb5609a3e391..69ca34346cfaae8a6448c84cd8cd50e80b8894a9 100644 GIT binary patch delta 635 zcmV->0)+k22C@Z^7#auz0001UMu)cm0004VQb$4nuFf3k0000mkzp=>00000002sF zYRUir01#tgPIdqQ03ZMW03ZMW00000003gS?)m@#0u)I^K~z|U?UvDY;~)$~Es#)( z$^ZZEO2SRtwFIem)4q7laoXk%Xav~qvRt}!>C&Z3m;RFg;2-!Wja={MLQ+b@gkugV z10q5WOz-Au5XA{6oKhx#ETtgjM8Ci#U?$O^fic$tMKuWUPA>WMh~zNgj7tTu0uU_F zyE&AUEMe5ZgfA#(v~ZC#il;a!FUq3^h8$S9C>TBE60js-W=JJyV8+3gSUyj2$kv}U z7~LUbE-S=0NeJo2!3xf}X0z)IhrYieKj4h_fFB9c$Dn~R*VO@kU8XafY-UU74xe#x z)WY(B$i$_(6($_}{@ONsXJpEOwt&$I9P@>C1>6QE9Qz}t1SLA&xNE4a`D)m}gp;uf z)qWlm&N$llCb!0ne;R68S2y7c9BbvmwW3qN-l0$K8n7oEjDK*qL$+PQwFUt@uRgc> zx<_((30~kN4QhdZiu8Rh4!+6lB`It56Y{M$=yPlZndL6g3roWTrX45WP`d)$9=sh5 zYGEdspP~jDj~bLoNoFwVuZIA%?D*mtG~l|f7SO@C<9INr=dMfB`*b_F_Xd4VBt_c2 z*@gP&-}npn43cYAVL1ND4~C_00ZV}<|8oahU=2oG9N0`&!E<)maLn>t!E-fnZcdecldWlC@P@~NR6 zq5(nPk$X6vqzlAGWzFZDxvQnFTdaj?mbL5ZJ36PzSLwK4x;vBmO7sDCxw>D!_wH9s zY#7o7iaFyhDGiFd-;e$~2XJ)M0q?Y9ea zgzT@ce?8u9=KCePb82JXKY=A|JN|tP+g<$Rn@Q~Dr`LK|l{N>IZ2XY^e2TWfo1bls zMe+0Qtu5dSYR=OAefa7Qvx94uk5w#6R`@=fGGT?8_Du zoRB*Ivg=+%6vzxo;LXz|uH|LdYIn{M5de*5#K$NG!4=Bs%MRr=1$ z-Mg|#p}*dHSBkhDSL6nKwmlxGH8Vl+8;&U?Fbf`M==Yr7J9T z_ntgAPW$_<>*vJ3*{hi^KiTJ?=45BMv$FgF)AZeZ9PUro?Wj-6;j(;KzrbRH`Twr- z_Lb*;yg2rA{~=&vQ7v(eC`m~yNwrEYN(E93Mg~Skx(0^2hDISqMpnkAR;DJ}1{PKZ k21Tdj4N)}Y=BH$)RpQpbJbigDPy>Ufs~@Y&I;Vst06N@IfdBvi diff --git a/graphics/pokemon/probopass/overworld.png b/graphics/pokemon/probopass/overworld.png index 6f743089640fd7e80200956127ab9c0408140a51..e4d0685df3086473d0fbd376ee382fd1bcb64a32 100644 GIT binary patch delta 963 zcmV;!13dhM38n~;7zqdi0001UMu)eNF&h;x008P=0026d000+od=0#Q%$R>ri?Aor0(QNBSa%*6k3mT|_+OM*^b` z1`e&;TJUu);3+>67Sa8~p=*Y(UV#$RPsHTZ~Ne0-o~ke+7mej2xonb6ag~ zpHl%(`Jn+(2P20F(5Ef@p5qVsp#k^#V}~={Q+%sKAwM$UK7Z&Cy8{0q{stcv6oFIy zu>qjw4qfKIb%;fwU{(B(@}z>uVHP46NF-MV+zPDn&tPsG?w)`fB>H;sD__KJ^a(15 zdx6BlBC2FdRq)@ye~$!y=z8N1nZVOw2&{uhl2FnY%PU{R@3a+4<*@L`->m{)BB|$_ z{z~AiLo1jL!-4@vzD{71AOA7!Nx#031Q$dzCu;evz>%N!JqJhv$dcLuXjM4{(qOXV zS~|$A9XkyItNdt=RkQ=N9;qgCTPumi?*#UIPPo0>5){aOf3H@sZHn0}0yTBzz42m@ zavNad(+fQFV>oPraK(_JzsN2oNRD^W_`SfMFNUX7u0Dh3yG+=_7X8Zdc05Qrfd`J{ zjyD0Ed)^8>^OIFf_FTocdU+RsBvkQxfdjw8E52<3`1ZJXEDPYKK{LD#uqO-x>-;{# zuoW|EiMSi$f6VU$4*UjB4d3;xK71uY>jq8nwuA0iE3kgaI5&W8ufZ;3xb>jrdtw`( zEU@B({%(-rrNWa>{_TgrbOhivs0^s^vw$jKDzM!P949}lV8|S=P}?OuFQLQqo{@$> z;uW}MhfM+k*q>DyP~nFI{b%f6pzlP9utnKfab0{Se_Ff~=BNBz&=>*i zk@a3s;a;HQ?Pd`Pv;ccS{ItH%2)n@CV;uzM05m@1K7ciducysOssft+9r#h842PLO z;D?PYm9vWdIp8J`@4tP@27&JqPrQNg<+oFS%|H&2_W39Nc4%@Ci3C~%(g3z!v%^UF z7U%0cf1u#Qe7ZtEjFf;@Uxk+fNByxt_d$K5RGs3MABQv@1Rf74c%Q!HG~aSS|AL)( zE^w+p6j<`;MSU(1qiLt+Ic_yNJ}nK;v=gNV4D)^9rNE2yfxw*TT3!yggRk-T?W=%t l_sW647Wm^Ua_ASXKk4o?=v{S_oB#j-07*qo1w^hwV1l!$$szy% delta 1057 zcmV++1m63m2!sic7#Rcu0002CwraKj000DMK}|sb0I`n?{9y%=AsZDi008P>0026e z000+ooVrmw0000dkx?roS;KND00001VoOIv0Eh)0NB{r;2XskIMF-{q4F)6&p>*fY zk%=FFK1oDDR7l6&l(BEqKp4f3=+ym^bZ<hFFIBv5cvlf_@nrI=X26CR)flfl_AgX%kRCG5gu1RI6v5L6=+=ns}UZI z2zfd@+_!+O4edtwcBTSB8zb3=OeY=1)-);;(A*YA?b^&X?)#&Jg z^hrPH^w9+Xok@2A0vqkm+l|uPIde|e^Dh4=yKo$T*$q_lCp(?!#x)Qp;isG1&u@x< zAZ|9Q8k>!9nyzx+=QNGGfFD8jcN+$wYFq^RR4AfP>Fv$CA{6>WkgCQsG5!n6IWL&; zQBMJPm$b(}5aO?!1z8P@GNq&Ci_I^7{gVZYiS}z?<44;S=S&2w4!9^3&~N^tg2RT( z%i6|w23RV&%EWi>oN!Wv!KurXJzNb}MA63hZgUA*Q(j7S#zXVsZCjK-Mx#OYIw=@oQabf8h3iIcUiW zRbWr+4N;UCp#Ia6h}}(Jy$mGH679nn9;%<;ZhSrM6K5z;gQ)fVJOfeUo`^zmRXY3#JQbT?Oh5+dvesspE}D(X!SR@Jnfc zpqbY7{M2)w$;FR_D1)7bKvDXC^FIS|I(0qQ4b6iJz$+<>rU0f4^cB@NDaxnh*+$BZ zSk4=*0&Cp{;vj~1%P=ty4ghCj6B%HYsI<<*Ja<@m#c~?&bQMUOH;D~Ic$RzTypaHm zC^JBn2s+HnFo$=Epk;jlw1&WCGv5MY&ixtBcbd-9%dlAhAs@6qX#(kHhj&jt+0$W?`gzONy0j=F&`bdQIy@1ss#jrx1@@D)Sgy&u@X zM<4z_=5-&x0cL`}JnHa+$N&HUC3HntbYx+4WjbSWWnpw>05UK#GA%GMEip1wGBP?d zHaameD=;`ZFfdP#g>L{n001R)MObuXVRU6WZEs|0W_bWIFfuYNFflDLGE_1$Ix{vp bF)=GJI65#eKGHqY00000NkvXXu0mjf!k5>Y diff --git a/graphics/pokemon/quilava/overworld.png b/graphics/pokemon/quilava/overworld.png index a7ee14f2f9a8bf3ca392de1f357013944919da9d..4a710024ebf89c75910364f56587c936ab9ce836 100644 GIT binary patch delta 956 zcmV;t14I1W362Pm7#auz0001UMu)cm0004VQb$4nuFf3k0000mkzp|h0000`aszRZ zwjY0RNkl}Vw6 zAwvxQLx$g2VniB$2$*e_RDDKi;CY@$4B3A@2>fdk@`#@EU?53oIg%?rrOa##Dj@W? zc|IdU8+{eL=Go5?4>I^Gd2xXNTi_IePYLNu$%mc>2k9K#JH_$Idt)baUa+8T1@eN{mNjYk#6F;y^Ros{nzKK3jha zj57oQsIRMl(>`1T;OkxfQTdZ9hz0?#_^h}c;G&?%zhp=RS{cIWX6G)&c?mbFNA%5y zfTr520M`>x@wqDyAzq@=kBeC(Z+$%h(m>w)-MLwSnBw&Q`&M8%dY`n*CGTT41PCr? zQ1Fg`C5kP!fMJGYXApdiIf*wuItzbr(&1{2@dWf%$T|Duwaei(w*nwAd5M9;t055l z*F(T+Di~#mmA`)}BVm7OSQiI@-F>D9v=5CiT8XiLR@_zG6d?Syz&a@yWynj7gp}Y@ z=}O1uj)TBNw_^Z;QRh(X3W)MW#ajV5{x!f7V(ZEy{43ljKy`8oIN>NW4_kjU*QXM? zIq1;64fPbtuKePCqW}UA{4P*gX^)MEfF$M0U5ED87*w3_^Bn;ryqvMa+B=)v6X)V0 z-R63o@-kb#mQ$Zi@lrx}hiHFfAcrpva>A>1Mjvn{IUi2fo!b_{g1d4yOA9$W_-!Np zTDR>W72yV7RZVHrs!7&3ouNtht?4 zPymWs=m9@f`<@{)?=AFV zpm_JPFN=%A+Ks>qxA`NsW$j#SZ~TgjViw8DtV{68>Z%e5+ac)Ep|`;uF#KLF{V0B9 epGM%nv_BS7B$k4FK~D?-0000 z0Dy!50Qvv`0D$NK0Cg|`0P0`>06Lfe02gqax=}m;001qKGBG4eltjD$0004EOGiWi zhy@);00007bV*G`2j&3{1|tOtja&|qY9D`)Nkl}(2%=(Jym+dRVviNN=v_Q{5ijvr zL?M5Jv%ls?E?PuT@DT{#*_rQW-g`46N&n-YiNYWDSBiglhl=%k_OkpFfZ^!kfG&US zBV;YPd=M4j5ULhweGsaxYQ9EB8EhTn3buBEX9_0}2@_$exWhQ$*$D z`WXnfNGA=HU3aze1Y7F|>H5ve6PsuTxW3i}e}e-E8Rd+r#nlbsYdeYKIcplOKUPqq zsAqs>-0bpzWkfUuRF8H^N$!7Dbp|9EP@p@t+UrBB^%OgCiE=A5ixs!uvJpxj6txTG z3fyHIjGNB1qPc?s%(M6HXrwP@JkoNlA9dvcb_z*{dKEX4*?Xb_lq#^w01yG0HcE5& z*_>0-DKOHFBJKEkFNn{TZRs(PoZ={FCwmdq0rX(N0s2JusU}UtQDlD!OQo`dv4cy6 z6maK#Y!A1S61lx1ULqZf7%y;S9hr9#DsX)6%t5$T@}RDN<3LXyarmJEPI~EAhXDPRHj$eLeaz zhQLQCyUO{U5j^^|%M5=vBh5~!dk`9v?Dq@S0<@i_GT`@4I|cQ1T5{{H6v zkXmecqfbkm;ZmgAoZj&3{6+KD{JQ^~>HJnW9EM>y+)D?D+6s5y(HS?td7Uw5sCK*# z_Z&<4aMRo3GE^hI!}RudFESl&XJh&CPG`8i#}*KC-f%MVgnobX8#my!qaR!EF&{cX z+H6a|93H>;?}{Iz3@~QooZ_+o001R)MObuXVRU6WV{&C-bY%cCFfuYNFflDLGE_1$ zIx{soFf}VMI65#eoLw5>0000bbVXQnWMOn=I&E)cX=ZrAJ4Kc>m|UcAzM<>v?yHF~_fg z#ILfyT{qBSxOC~#rAvP&0QhCVdj$zo*I*d%WPaq0-vpzq8Pj8_CFj~Z&03vy} z!_RoUf%N%0hIjREa4J+pa{3vE0$rB@mkpBE0m$4dBd!KFxe4^Re_XyGHj|FOK9}a$ z2eA4i;!>cy%t3lw+~J1o?*_by_5sWi1)OM4(CV`;hl2XCFf@Dg%#ALfa%&MUfi8c@ z&&;sTp)C$Mg41Bn902jy2DC?b26~+Nu|=3)K)?q^yv-2e8TWajo4=IA zn;Miid3@DV0-UK#)Ew%GjwOn?R!P$0m(EKZ~Lz3eUHXzueTZizUH zyCt*tC=hTNbu455Y1RuMsjRwVvJFOj3u5gp_Cg~5n*{jY*zWXo`90|I{3_R<3nltJ k5d^$jpZ=%77^Q!xFQFwD^%`j|ng9R*07*qoM6N<$g5E_FQvd(} delta 720 zcmdnPx{Ymugd__y0|UdhZCTrZ6id3JuOkD)#(wTUiL4V9r9}-G7+xhXFj&oCU=S~u zvn$XBs7QTcptg#3uBHNz&6wov?!wT)D(eB{u$OrHy0SlGL>EJ>lod9J!`5T}oZ$ zEJ6QRtu}3qwKlB}sqK9H+p(YVV8f}&Mm2tw_n+^MnZjUmz1ViM6>TlF++PYGI z&z*1YL{nrZ?71#}?YDpKfn<5XJw~5AR-CF&oMU|^FRAQ)oz=Pbn}QY6&g2=fy}fpK z(|N(2dsZ$xcyQSj#$BEh+LKMs8%*#pSu*eJ1>vx$lHZxiPdk0hr*^g-%4+8>PAk;c zGwONLW_8;5#F2?Bm`n8iTr7nTvveDNnPIG({B2GoJjkei>9nO2Eg!#2~+uYejDJYD@<);T3K0RWdNI6eRX diff --git a/graphics/pokemon/rampardos/overworld.png b/graphics/pokemon/rampardos/overworld.png index 7687dcc26416e80d8cfb898987c4b411a6e6c356..2e1c24c7901c00d734ba056be17909652a09f745 100644 GIT binary patch delta 939 zcmV;c162IO2=@n&7zqdi0001UMu)eNF&h;x008P=0026d000+od= z00000007x+3u*uW01#tgPIdqQ03ZMW03ZMW00000003gS?)m@#13F1WK~z|U?U>$4>m|j$IIl%kB2vzT3alLI{7v|F(b-Q(OhC zxCD{gEoblA9lza5IXb{EU*YH@rXMMPird4AOGJ}gJ%Kxpmg~`h6SU*h2ktvqa*hpJ z2+kO9cxDSn2SNY(h%-P1CKWj0Ef0ZX6Jv9RXUC=1+QQL6X!uJ$;tb#<6Jw?)yyGHa zFsaQFxZ{XuHH4#s5NewQY&aBlO;hUYll~o-#_2Jwzr{6#0^`WDS>KlH5|QzLGG}?o zC1)8^W8HeswS)fbpqm0VTuK&dtdfh>$%;c?6|~aYygc6EX9qe+HM;^fyywyS$DHQ! zz4THFG9^!?V#kl5`_aMO5wPYr>75es?(FnF2fF7wNH2*C?W%CckEowQiFbT{iF1s# z4|kdQoVI!fhrSMpSA{!1f}S0JIE8G-G0m7|ynoJdYr!Hbu~lk~*8|6n>;197i|T96 zF0$p=CK5J_uW)9$WbSY}NRz-F*O(l$bbUAIo+G^@>wR};V9gnURXS$bRJh?V35PM- zo6MdwMIjJ(cMNR!i$c8HS-#?Ay2RjV`(Nk*H0ZIZrEp&hpY#9M+00 z;5RptNcxLFdjNiOccV>Xh{rfjN5+F|z?EZsiZDHpCbq!*!i`d-y0FD}N8m8n;~8ff zD8d0EhQgE{my)mi47l*jZB{t=da+R};riqZwhag!SOQ-S`UWscDvtsmF+Q$Y0{#rR zaAX%92w#>!HF$9Ro@N7oDKWV@Gz$Z2kfH7>&?)Rm@*|q7AWIqn7cMxg7SS9x1rCGC zh3An;K-Nc`bMQO1kzxqZx}#+-D3^*#gzz!JYIzZ?o3_Uc}qqUYeGc#r6L4)OY(|+b0026e z000+ooVrmw0000gkx?!r3;TZ(00001VoOIv0Eh)0NB{r;2XskIMF-{q4F)4QCgLE8 zk%=CE0{TfrK~zY`?bSbT(?A#o@T+7qC#6)t=CfO=*&4U1l*x5%%Q3BFQlC{^Ayp_o zQ6nb40kl%e2CAyEriq2#9R|J!3!jE_Qv1$UE(=VE+kTh4&*MKi1)=}zFRgZKx&Jg^ zMc0;CS+mq|i4me~;K7;P$lmK(NNO7!Ct_fK(+Hig0Y8*m(f3RPNxj;|+M`fzLY}h$ zjgWA$RifyoX{ZD(_R7O|cuTmRrjbAT#0Iq6k+s;$$i`+D`xj`jomI1IT=BrBk#gH+ z1KQ(jiIG3S7#m+LiTk$6+ZLGZwAq06#FAOPFl@)TL=w9ZHb&Pxu4y(fDF&ueE2(dP z`|eO;g-qp8jHY*qF@EJKhwB%MY0HLqp1g6;?9_ua9U2e9bVjz^8xLN8-?M)JI>k`JA z#O$SBd64%nmlz+|TT&~jGtiy_XcDu3v$TJDk#VA_UBwR<{t$0)-2hITLO% z*ri!cVOkz9W(t*+Y>4B5!2{iyv+5*44igXpS>d?Y6P~G;0(hDED=bYDn3Pt3Ar8F2 zGN-Ux2Hy4Zz^fMo0hmGo zQUidUmmB;gL_N4Wy0>C(x-{j1tT3gir|*>CJ~oX_qf-U4LiYT0Q~Vhzqb@cg;jQ=| zFm_6xzh5H}4`hW7iB_-9%EDxSypOd59(Zi-Z)!FWp#Z%YXyRE%>SxUVRO6eq$nI2u z==>vgqV=2d`)W?S_Bs!o7rOCOEKq4A<`-v;+dsFE5Lgt3sQ;S(s-l=uQU$WYxV;_` zOU&!j8tWU1Q*7|SqHw-he$I}a5a>pQom!q#=Yow|AZjiW)<3WPVg1{9>o)+-RzkSF zQl|g_03~!qSaf7zbY(hYa%Ew3WdJfTGBPbNF)cANR5CI;Gc`IjH!CnWIxsLpA_c4f z001R)MObuXVRU6WZEs|0W_bWIFfuYNFflDLGE_1$Ix{soH8(3TI65#eGJm}g00000 LNkvXXu0mjfN!PcK diff --git a/graphics/pokemon/rapidash/overworld.png b/graphics/pokemon/rapidash/overworld.png index f63e4811b2ee2b7042810c05d34a5d1620bbaba1..337bcc89e8b4d8c404011deba3886f7b126621d1 100644 GIT binary patch delta 904 zcmV;319$wn2k*ywo11m{HK~z|U?N{4!>mUq_3=*OK|NlK&*>U1pmub_P z^Ab8uQ?J0gx&gP_XMDzA4kCKX;NAIe4qbg&vKLeaKvRaL!Fz++QV3|R60o#FKyL8n zC<0I#P~m{mpbAd~x5|Neh-fMB!oU(V3ow=bEfm0@1qQvtznWu&uMuv41}=`(^8gv1 zmspGWJ@H5YcYTAJkbe6Gj__KAMepD6M4)tCUGM_=4c?ilDaA${2*`2eCvYDHPTufD z;7xdtu+ZQ@K!JlHLhSR)apYIi#aqzl4m=j9Mt4SZiSGe{3LlIp6OW(c!o9W0vmrwr zeg~d4@_xUw+VDLTkmJICEN~Hr5i|oAm%&q4hKt=2JK;}*Z(1kw&>x<@zzRotEdjw@ z01Vj0m7#jZa^&Udli(9S4CvBTRU^g>1r)dyc~}A{g3Z9e`?jOxOcHlg>w8H0AX|pd_)3&a$E^wE0sh53_Jmv zS6?)b5YWEo9|T?eQZ5=MBgiu-;tE%O4FbY0r2Lzw(CUKB#S=x^x*ci`f)W0$+&jyb zXJH>Nadg4u=eVvrKo4EQI%zu-tne3^k6-8g6^;zIvqn$_2`*y}k-bL{l9WyxLWRE& z)Haz4NbtTjiIyCHB|=<8HiO3)bmCXxH?$?g)e?Uq0tbHCEw}k&+sMNC2kz~*uLPCh z#UjVGeLM}qv&;j(?&kaaK@tC5!G`;%0i?)y^vixdwDmK7VIa26qEhPSt`DVfIa5G@w(7Be<-mmiwK=AyNY_etJv;|@ z#ns9^Z$0KKLFeL$N1(pXcloQj-jqPcxwkntE2Y*O)&)hQSP2@wPX9DW zeMNCgGT-p^>b+e6NUQ7T)V;*L8LCEH=fVYe;Yn&JcexUsfCwa9zf)xVGIM!!lW@@^CeNJKuVJ@Zb4y efPKdQ8UFw_5gaXn9Pdg100000026e z000+ooVrmw0000akx?ilyg~sU00001VoOIv0Eh)0NB{r;2XskIMF-{q4F)1HF(R4z zk%=CE0`^HnK~zY`?UgZW+dvqGPjCpb=_GqFog_nc=}I7*o!B@T1^%pPv*Vmh=p<@I z_y+_!H#os#htfX~4E=YNY>io8O=Ok>a8 z`i?8qnBMifYaEbW`;x~IKuW6JUl}5QuJ^iN5O#5Z#x%8$m4KYN4V&<73o}Nn;`sY2 zH;3smgfK=;)p?Qz$2sQE@m4hpSY!}$_R;YwL(FyO#{xhggIB!dK`V z)uLwQueo1m3JZ>#K(mtTF0Y=F9Y7d%9qwDd;e%mzrv@lYp*X3^s{*r`kTH~hBR%YW zor`XF01^S%pyK*$8l5aE4jR@=Udyw4FpO9W8(uYmpK-}&F4EJksuz4FUzkS_K?c#l zk`+{3>-H*w7=}$C8^;hu*H)w7#`y*oQWpisQZEeG`L0-!-|#feVA@>3PB+O-^i@{; zG)-H4tmjpyrTC^=q8XApRNi0DGMZ>Juwyi zj+oC#p9KD}_n6DCBF%$N9>^xq8*;RfX!JJa6v4XrfOO|k(aq1^har7lrLrk2-`pr) zgrXvBxF`B}OE>q74(Py?v-H#4+$;XCD%Qtada?7-Up10Brhj_;0+@$%@RFrVEt&uT z03~!qSaf7zbY(hYa%Ew3WdJfTGBPbNF)cANR5CI;Gc-ChIV&(YIxsLWbrn$n001R) zMObuXVRU6WZEs|0W_bWIFfuYNFflDLGE_1$Ix{pnG&w6UI65#eK`5>500000NkvXX Hu0mjfl(Mny diff --git a/graphics/pokemon/regirock/overworld.png b/graphics/pokemon/regirock/overworld.png index 1a5f11a9e7d126a073c87a8307f7b90f943777af..683bbf9fb66120295868b48f06e342a6275f3813 100644 GIT binary patch delta 1054 zcmV+(1mXMd34sZa7zqdi0001UMu)eNF&h;x008P=0026d000+od=tgoW^IjyZfW$ zG$njoWQ+~>SR*0T+x-=eJzMCINh;JQ?IK^o?Hqtb8-M*XuzJX8|AgViq z1p@swzIQ|kG2Wlfn9~$yTY#2zT^FlOb7-6PfTxt6^IZt$XNq(_f3Gh%&C@i`XrjDo z$y%MYk)HCTz!S92l%DauM4kVQfg4UCM19fX5rP=OFitbABAi3zrpj%!A7CqGkSf5c?HYImZkaWc^;>s~e zXRry>@f!N-2F=XP0M1t{jhEiwE>YtW@0awb2H3b~50#F&K*F1y5fqwSed-j)iQQ7= z@J74ADi8-$7K`ykY&;CQ6G6=yr1GM{(+u`|tf7W^e@Yn|VB_9{_Z}`#RBj09#aRWu zJXDoi@V?Zb^PnT78FYb!(?Miwj8}o8yJg%eZcuqaBr-LFT@0bDD~_m_*QnIpzw~f{ zYCy30`k@Lu7^nt~%YhTw%!1EiG429iEfB2Y294`xN*&cpB>O`VL;3FifpL#rU@o0N zOS;Vff0A}LSn|O@6`0LB9&yD5p4T>m#w`*%gS|R-d2jSzd$>SVATXejX#!PPO=4YW zGpJm)0l7;hi|N98x-RgvxEoZyCH1w(qG8U51pTCk3Dg`D3rwm4ucMKi7VaYccsb1D zNS`cYfu6L=X_Tb4fDY6(?hVu)L)wX-R6j&@(_1QWW=&i=lb0ERw>BE&r z_PQQ7bpN7bEU;@Ge0026e z000+ooVrmw0000dkx?ro;<46q00001VoOIv0Eh)0NB{r;2XskIMF-{q4F)4K#y82A zk%=FFsYygZR7l6|mOpRXMi__h&`}=lELjmlE+&y7X%><&njuRQypMHAZ2!bLDGE^2_pzGR3{z<@#zVhRM6#Shi@j+AtC#s10GqOX^GUgDk~kH@2o z(Es({DO$>y76<>7bFfIkuW+@Q4{MLf=kQ;D2CTvaOyO>7kI3h6wwP77upWi+qZUDR z_Kcv~*4L%%KQCihbr#r7WeF;;HMa?V!`J|=wVsd?KKK1HmN)r^wbg(EuQi(lKV__q zYRycrgnioRmar5)Wu2NDpfGk?kBPp|_P;09=9XQ;-PY#Ga+dYQelb90Y℘!x%e% zY&(v#Ucw+eUe2<r)@RSC$W_a|ts=vj`2cU7@AIKJJxlq2)S;^n&W6;3DfRY(=}dSyFs)hKO~$+Z`VRPx zO|Ac4G~zI4z26pRrZc?02wIyVPcCJEH|LR;DeBMpz;PAzV8}=CpBbZ`@bH2<2Fz37qw>%3N78r!sd+lv+t>Y*auRt2)T#c&QOq1Y=KSt=cqXgA~zf5GH6i$1z-X};4ML&%Xjz!>xeeDGzFnj3q);FEW{8JIfN&|$te`4O_5eTyY5qOXHGsb#MNBkGl z0wI>?fa2cHucr0kVhEQq<1NC!_*_cf%$l$~X`){d87SV=lui;w2%9@ej8q8-gCs2kKx4dMP0SU- zyo{LS&8(&|Nymy1hUr*;kH?D7m_(!yU=THsqJmHk@r{3M6yY>3UWa{J31ihrX05UK#GA%GMEip1w zGBP?dH99phD=;`ZFfbtUFqQxS03~!qSaf7zbY(hiZ)9m^c>ppfFfuYNFflDLGE_1$ fIx{soH8CqNI65#eQLl(900000NkvXXu0mjf9qOJ@z(F z`wRY00?e?%eV~m!EDncdS*8J|9O@$C-{hn*R)t*;i_-(@LWprtra8xt!N+llEbiXX zV~AZ3i?cs9!-z6>1I#(&Gk9czgY|!>oZY3t1q*z*nA|T-9&u+(OkU%kE}aTl+(~>Z z#6<{lnb*MV5%t~TtvuD`vp^QF9?gY5@nZptOKbuM`b=Kqhgu){_1B+qcWw}_(bI2o zY4cfk%Amzl{*K?$l+PJ6dDM7%DE7$>&e+T8a)+NI)_1Tt3ZzMuUW$v}h?sx;cZYZ%9 zphSI%}QM>!g;sSjeHVL9*jhqDq zJLCe#?IFys6lN$J6aJppBoR|nMw$8ejFJ%O#HNgbFcWP&(j=9q91ZBq>7P9}A(3L%!iM;8cZUf_zW_#^(b4 z60;@xGdqMZNHX!L@+Kwl9cWkpo15`%0pCb`?0?!XaGE283e`e(00000NkvXXu0mjf DKKf%3 delta 826 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 XIxsMv&A+_>0000 z00000008|pgO>mR01#tgPIdqQ03ZMW03ZMW00000003gS?)m@#11U*FK~z|U?U>to ztRM`9g-`-x=lx%IuLK!6Db7s4eI*yI^^ar)lAv9dd)(t5_qaznjQNUx`8W)|<<=}j z^Z{3C#yPW$WzKju_?RanXNi)NcR4wK$^!NBU7ig-=1HH(Q++=_Z*l-i0`+R(|D5Y> zBeQ?VWn-MNS)cb^1m`@@f8=1sb$eByJ;;DL*I^~Wpsx$ygfk~D+vBzr(|Z^B%Yh0! zO5q7l`m8mmQ99H=<{Vg;I1k!xUFKXa(WbA6aK=5t?{u8V8RIjQn5rRbVNv(x!UC5h}akddA{7_ z3FjaJL$V1XuzGmL35$W^#u{O2I6<{z)95nK0w2L*kU^qDUM=CAbBLIKeTcrt3X|9d zaLy@2?NVB#+NNTqZ^qTe23nJUK7$Qz^v}2?39Ym`haXfY$OSH4fiO1`)H=D4zu(}= zh}Iw(BJyJNU6(uO%$RnS6<)&v%xQze-$lA*5a#wKVjXs&6;BA1fWfVWh z0SLA<{F+GuwZ@I6S=UCFk`DzkdV|&xFWvKcgSCJ-!g8P=4*1D!boe!vFiyeY7U}%x z%_7u{G7tk*EL`8rh62+~9#&vMcGE^7Nn#xbpjf{u4lK4wsXfDA{wSO5S3 delta 981 zcmV;`11kLH2fGN67#Rcu0002CwraKj000DMK}|sb0I`n?{9y%=AsZDi008P>0026e z000+ooVrmw0000gkx?!r$p|6800001VoOIv0Eh)0NB{r;2XskIMF-{q4F)3-6IY0H zk%=CE0`f^jK~zY`?bJPM+dvox@JAd$tMx)cp&fK*$SU0lJ0V>pJ&@8ancBIOsPQJh z5IKb`b&1`v4J6Jd=+Ld{)GyGFkgwB|Pm*PGPKGWmTJqSx9=kF_>4a1+EZDt>9aIKV}BC2-X)B6UP3 zJ<{5oLMR(CfpMmFwm71AX1UHPP>#-Vp6P6!^ovWv*3O02WC}*RxMnaXI)fq=Z}QoH zd!5ZITb;4j%XB6u!$o04#_x14o|&u@eQTCZwI18yC&U+tr?_r%F>>0Gh0Hyj=v)N8 z{79MYrL#=y@fZFJ@jH7`6|8yh5(5{lFq!*W1MtZY8hG3Dsov(5bNlnvLD0+e?xdW> zG@+f;*IJ(P!AB?9zPZXaIHw1Qx3qeHc@Uvo?GZA&q;lW0`9yCy91$kH>%2Buu?%Ek z!dbiA*>21W*M*SZ2rpv$*Zp$SRIW}CjNcY#V!t*#?Kdq01I8VW>h&bI2rFC{8Z=c1BgfVc)SmQ5DL-@tntd^U=9~^0QIt zvQQQb1#fk(>kBZ1pi9fZ%;*kVco6Z>#D6>f0O)H4#?ldRL`eVu03~!q zSaf7zbY(hYa%Ew3WdJfTGBPbNF)cANR5CI;Gc`IfH!CnWIxsNDXbV;V001R)MObuX zVRU6WZEs|0W_bWIFfuYNFflDLGE_1$Ix{soF*hqPI65#ewl%Zr00000NkvXXu0mjf D0Pwv# diff --git a/graphics/pokemon/seel/overworld.png b/graphics/pokemon/seel/overworld.png index cc9dbad620dcb544390594bee47c9f27b9054e83..7f83952fbea66a011819857f6d45c1cf540cf803 100644 GIT binary patch delta 650 zcmV;50(Je^2KEJz7zqdi0001UMu)eNF&h;x008P=0026d000+od=NdFn8t* zTrOvvamE>EoN>ng3HXCG5b@=SxP8I^nke`Mfk;F?g$Y5{iGreEj#7h&Kvtfqz=KHw ziueL%1es)uNI;ouIl`r<0_(W2#v9DyDx4BzW)RSCvMzrmYflB<2L?6XiHN_-j9|%} z)R!n%Fca8}3~GGYd~QYd)1(Bea+z&F*kUt*2f?_;Sdu77c72i)+~9aXbx7!unE>5; z1Sq&$#Xc}9K(+T> zAPh&0<`z0kGBRv&i3C)YL5Xu*`>tGsrP1vW>?g}(bSaj-zbe6=VS_v97SNm$o(EFg z2sRhtK+qbv*`cA4msRL(>ksi5cDOHq%Mj8pdlr9?1|KV|1o^lKc|2*~k>x=;G+Sb!ezp~+AW>BArP&#(eFJ2Wy_K0em#BBfEB7HV`A$wZ$e^K74lhYc;F)iNh_rbJ$j# zY}fs^Gx#0%Io;2S{KDHhECkN5H3+Yr$N8&%TBvXM6URdlc}AZ6%nq&_^({89S){CL zmw4pDO8uz~#zFoCd6rsSG9I1oE3UZiRd|r>{31e+p}@WEk>If`mh@YD9|?0aMNVcA zI2~#HqA62jqt$;0R+}?dE6+GLc``Y9N1c{h9(Ve;PUImU-GiDMD^7khh`biDLVl*_ z&dl8=_56=}g$|T@6fAx2sB_=Ik7-Sl$=X#4ajBao8%bV{R-SRA`)I-iW1)0*ZmkXB zvuZ^T^=vPYTd=uBbzj@v-|n_Tt{JR6&pfuJq;5-+KBPLU`$nV_-?GJ5{+*3)*H$=w z@gr|=<2SAXTY=+J{e6}mwSv*!Cxk9ve7IQkPvsFg^+Wa2YQm3>i#@RDb=Z^id%5As zuP$Z1x*fjmkEhjF?6Xn5u|9Ur#JPg^>ul>P>o&EhO8lvey0XK0iGSzIjG`aEpElT@ zl#UT*w1}^Z+1LMlLg(CLbM}~R{4!7LdE60pnHSNr*L^JV7iZZ0t<2o@adwZ$y2n;r zZq4emdXF~G{%)sHUcV}_J>c5Kq>7(6KW=~Zf8h`Ax9?|VzxJ?)FK#IZ0z{p6~z);uFD8$If%Gkup)KJ^N!pgwlyg~E|6b-rgDVb@NxHas{eJldh Pz`)_@>gTe~DWM4f_&YWF diff --git a/graphics/pokemon/shieldon/overworld.png b/graphics/pokemon/shieldon/overworld.png index 4636dda608d69f6094514eb64f938294141df185..16e2badb2b38f382216b117ef0f04172bc02c899 100644 GIT binary patch delta 545 zcmV++0^a?G1g->-7=H)@0001UMu)cm0004VQb$4nuFf3k0000mP)t-sn9!g&I5=2X zSO5S3NJvO{czBS2NWh>-$jHbzFevEg__(;ZXizW!0000000000dJm&W00053Nkl0l)o0hY>e_=hPT+R)cI(gR2xFzuz!qFyhY(P=8WN5&QB! z=Q^iTS6}ac#DA?rbk|6rg8{$%O@|+FKBhyw0Rguys`W6{O6x85c_K5YAM{tDzfUf! zqnt@>Ve{A8GP}>y)!}M#cEICy$ca=DS=VPCCZ`qWDs&#^uU2WV9wR;t)~+oo)GH{! z=P5NQYOo0Ckjp7oK6O4>=A6BRM101aHYGYACm4Z%r++qddm7Jg{WE<7`FjrGF(u>;00000NkvXXu0mjf)HwJ1 delta 504 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 diff --git a/graphics/pokemon/smoochum/overworld.png b/graphics/pokemon/smoochum/overworld.png index ccee071741cbf2c7da496bb3b7f3812b7a6452b5..1739f83d1f8df7cb7532ac3a68673bc83cec1511 100644 GIT binary patch delta 503 zcmV^*f7zqdi0001UMu)eNF&h;x008P=0026d000+od=(~kP`8N3TUa!)!I2UWDMEgX z@EDm8L;f+qpJ7tMSVfg{_Q;T8R2#5)WMl0b;JbL0)ER$rIV816>HiF;M8jO{CH9t* z)_~2y6U>vl--o!shm;ktIs0o|>ConqpW3HW;S9GNdR!jQS3vg^usIhHb9r~zH{kIv z8<4#bkE`p@BXI*cJEG`CX#k#B&RcXNHu~}5|+njaTIQN<} zDFF^=huq(`ZNU25-x>a{&$$?^;K|8Q8?ZT1$=EI%a#7x8Y>t;j8AHNng%&XaDn^X$l&q3OKsqR)%rgN_r|NdIrxU7l&dj8*HWz4c^U4F tHxo#R!(rqQn=#4T-G!lpRn`N@VK4FYb!C6X$jhcI)@v+#VPdCzeS@cq zV~EG`w^uiM9d?jl|DeBp$Fn^h*?;tsxI;7a9?W?bci_-WyT%u*oCW7_vCen+#dp{0 z)w4%W9x4A&d8Rbw^wjsex}MB`Sw8)by@wOih2{S9?dsKJ7FndQOl!+o&oN_R$5F*e zeHCKr>T|aAJ}}H(RyZeJ_?DLT)-#^BJsLIZGnY*jINGx9)LX|}_XInwmiBtBw0Ysu z!V}}aCHlq8P_OVTr`;EPi!KR7D(9}89HbuVb-T^1qfAjv*SmJg6u-vzwaiAbChndy zS8mk3W4AT-zgSQnmv+9xQ{D%Eesy)v`Ld6(M?5re<&NaNrn^nfn{PjDwS3L3_Ej3@ z+T|JXd+Mhc?4F|=7sj04ke(_%brH{oINsg@wl(3+eNUD5<+kx}36;LIA&#e~guSA# zZ~6M!w|-u$NXu28)Yg1+)3kF=k5|5#^P%&(yu<9o$qkLQu{FsD3bK6O@);akGVgUm zuH%h2Z%*pAT-;+UU-0hz{pEL?%Fi!e_f~(&=J)yUZ{Lq}sQRJ*lkt64_qn|}yOsf? zNVUW@q9i4;B-JXpC>2OC7#SED=^7a78XAQd8Ce;dS{WH>8(3Hw7)ak&7DCaGo1c=I XR*73fR@3ZtKn)C@u6{1-oD!M<)!Y7l diff --git a/graphics/pokemon/sneasel/overworld.png b/graphics/pokemon/sneasel/overworld.png index 3cabd75c549331f9bb086923c93c217572576fc4..a9e12ebe5f74422c0122a579b37d867b0b70f692 100644 GIT binary patch delta 553 zcmV+^0@nSM2BHO!7zqdi0001UMu)eNF&hyt008P=0026d000+od=44)23IOI2To=&%wur09lr)si~={si~=d zB!JKOP)g||eqNBX>(Jp)%JDa?E565nS5(S#iirOt$>bH_am-XewBTCna{(^Lbxlwf z!G*H&aKMKOkmOj9}1 zl16=*NGm_!JwdOJ?bWIq^!YtNEb6N);^p8*gCpMi1C-dF>M!EBam3}q9op0kAYhHsp r^S(&X8~x>obL=6<;A>w~Q-4a|#2phIklKtP00000NkvXXu0mjf<9r4} delta 666 zcmZ3)I)!b5gd__y0|UdhZCTrZ6id3JuOkD)#(wTUiL4V9r3DQb7+xhXFj&oCU=S~u zvn$YMqOZLyW0JSK3quF1tOrmFdx@v7EBiA>UN&W+uDF{gCw9u$AN6!`4DmSr_UhiO z#|{GQA0~3l4y!f_Qs`ZD=y{lrP;;T++}_yd2PQn~3e8#1xvr&mJ4a^BOU^m$AB1Bb zPf+vq5cHVe?lIBa!jFq3Q?&n-HsAm5*86=kVz>NaxRE+Nw(MuQ;hL=Uk9)JikMXUF zvG!&!R@ip?%jQD;KWnD_-B|z7k4IGQoaOdooj3B#EUX^yss9zJYaM-dZt=6ra%>%r zi~VM(K0n@3w$I^YX3UYJKh$%p+iq}r#Q!o&Dt46WDY1Xtt@<*D$#BWu>5&)ixtBzhG#h1c%MMh~_m{<;yh-F%CBG>PwFSo5;e(l%wu5T`i^{ZT4 z{p0dNeWY(Z+h{Agg?H+)RUe-H3*)@SaBu{(&3`&Fyp00i_>zopr02Fj0vH$=8 diff --git a/graphics/pokemon/snover/overworld_shiny.pal b/graphics/pokemon/snover/overworld_shiny.pal index 66f6e6532f..a951f0a24a 100644 --- a/graphics/pokemon/snover/overworld_shiny.pal +++ b/graphics/pokemon/snover/overworld_shiny.pal @@ -9,9 +9,9 @@ JASC-PAL 216 216 232 160 160 192 0 0 0 -32 72 72 +58 102 156 32 48 56 -32 96 96 +81 147 204 48 40 16 128 104 40 72 56 40 diff --git a/graphics/pokemon/spheal/overworld.png b/graphics/pokemon/spheal/overworld.png index dc394187ec54099b0acf4f86182098eaeaa825b1..f76c37e144e9447985bfa6298aafbb83e29e8a2c 100644 GIT binary patch delta 517 zcmV+g0{Z>-1@Z)t7zqdi0001UMu)eNF&h;x008P=0026d000+od=H&y zQ@n7+p~sI6!b8XS5=U4b0{k(jc)Okc)Bt1N3}PGyuz9=~RMyDn>uGR(h4c2f(-Ny7 zd_QYEE=zo`=gggqEimM=vbQ$Dy}`6S@hxc+L=>CBu7}41VI<;|C}qmq!r^IK*EV`w z*Un(dPdtBj0m=+S5GZ%--dHY&vPrOP5apzHc*-9agCD)Y^u&ArA;Ap*t3g2MX4vCA z#Zr-huj=dC;fWVU9x>!Akz$Yl+WLcfjMAR-o+MusqrE}qrNZDTi)b-SJES00000NkvXX Hu0mjfrUmb} delta 650 zcmeyw@{M(Zgd__y0|UdhZCTrZ6id3JuOkD)#(wTUiL4V9r9}-G7+xhXFj&oCU=S~u zvn$XBs7QBWprMN7l*!(QU)>&pI&k(W)`Al`0{`c-g?jb|9pohW5%kL%VuT0`adP{Z$b;7QO4Y>w>EG( zvP&p970j(}3149TUVY-y?FVJqO}}k&2+yvc{DJ#kKz7396Kad4_$%%;L|Dy!oRhHA z!Ib}t(xfXE@dn#U_=+z(q}M4Gx_o8JyXL=0c<$lXZ+wy;nFLIq?$iW+HY2z+1@2vb=1E_tnowT`_!F^XFg}_j#wyF;%-Mz-r5i0?d-*{%^OFzdYHp7vPBfMi(BirO>43H1k1gM86DwN&oYX1o zmR-%Z%-YuN@~6jPdpVNt_iyAd5j^jI>yh1y&Af9}_Hn#1-Zqg}UUGf$MgH*UV|LS0 z9rTqZ{z-k#tU6ozT4}9TT}binG})5{N7ZdS8fR21vL_hTPx&AHCTD?a?19~Uhl1Ga z?w4x$T@K-6G4ORnC}Q!>*k!5UPt>fo4r RHXW#g!PC{xWt~$(69CRV1$+Pi diff --git a/graphics/pokemon/staraptor/overworld.png b/graphics/pokemon/staraptor/overworld.png index a6f9360ac2a78967babde9ecb2e5f8c52e5ca73c..1dcbab906c448268e67b54528059e346136c6fc7 100644 GIT binary patch delta 1105 zcmV-X1g`tD3d9MJ7zqdi0001UMu)eNF&hyt008P=0026d000+od=T6 z2T4RhR9J=WSkZFhFbE8on8?@K|NpngBHIy2Y18IjZYIp6V|yiQ7ZAd|T;BG!x4o?~ zdIcx?dirc@jhc{m*7*&GCex85lz(3$&=FATk;JI1nA%SDQd1uFYml@~xc;tV* zR)Tmp3+T52h;g&UA`|Q$5yTG!iB ziV?K@@j^VjE+7Q}f=*mxcKbU;&J?M)?Gjc~L8;>Qt7k_; z!RD;1@q++z|C2VoP=hmk19^Ac->c#(|Ew$db@USZqZ3!@wvl_K?ol)`F@CkCp7>FD zqmj|`46)ZucIKdrQ;&bwLk?hrPkzcsp;cEZ;%Cj2Tx_IwT#;kZ!S(3b2~rJmNwTH$$haZ7v}@V1?G!7L<7g;Bp%(y# zMkVsat&Tef}gN2Z XHa#aQkt-s900000NkvXXu0mjfKidLI delta 1214 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 diff --git a/graphics/pokemon/stunky/overworld.png b/graphics/pokemon/stunky/overworld.png index b6c7c2b7a537efcfedd20b4443b0840a16a69bab..fb36b0cb876312e96a79fa6c92162d614de444a7 100644 GIT binary patch delta 613 zcmV-r0-F7f2D1f_7zqdi0001UMu)eNF&h;x008P=0026d000+od= z00000000FYpIra|01#tgPIdqQ03ZMW03ZMW00000003gS?)m@#0rp8mK~z|U?Uvn+ zgFpy{WqufDTi^e6_b}S*g#&C_lim!8rpbqTKsa{WR;*aDV#SITEA9%S&-mAaQhuLP zDL5Ci$cWz&RD%LMPL)e3T+IRkenU`ytIfN;&!tvou2tUTH^hepw5rj}0s{VdP{JdU zt<8wzpe*``NaMdi~Y z@T2nOF%hR!5|#{SYXn@LF(QY+MAHHyp3xl{MCDyN9B~yWk~xc*1^7HmYE0aJk{Atk zd4@ezsgkq)yuRp&Z^wj75%{!G0G-?_5FDOG4DB;xHTV;xqkSJItM+4)c*NFCgHDzz=;~@R?wq3p@)Pe0Dwk@Z;HGP{^3c zi}=Xt&mr*HjSfa!aC?|TGe^jO;nH{6d!sh=T@^-r(=F-y1Nt6&H*C=7y5tR8)*KVC zxmuL|%YeyZ%dZ&`SAj5UX+JnP&uz}<`k@jM%#r;eb2uz2^Uw!Ac}E9F8EMW{q2PLq znV2@{bN$c_C$e|s;FbsA{(!1+ngO2FA)38qn`n!iKRbh47o$lDA4@Md0WOXSwh{=# zq4irCSRxP;|2^d$^e-MHoy~E2ga&$e#W&&?5kC@LJ#}J|00000NkvXXu0mjfy%7m8 delta 677 zcmdnY+Q&9QLXw4E2ao`M;uXl#%Ff8p6}i&qqmb(!yZ~D zEe%c8+8upcbe?R9#fnY3i#CKm+%GP{H8G^VqU^)NzQvVGW;!3bVOZVAv?;`4J2&Ul zWHZIs9}%zJg7x^fYF^C!I`u}dyPNRo`>pF8tk{J2Ny_Fu5__@DLZxT=S-wTyPE0%V z3{=kCo@=NVP_(@8LjJa%yzaR3+YhaH_UB#Z>GgTr0-e~7O+WBM>-z*-18td(0--HW z%lB=1c%VL3#BP!GhUIRYD|bIKiYa)t$oadI-=PmH&efUEw0*u!`}Zw@hP_Vb_4%12 zpJ+=by$$U!Kc17Xz$di$?eg2~=C@YVZ(Wk}!&hBC>A!4m;>niu>od(*W@RR;7>U;F zPvPafeX`Q%Q?FXyqoudxeZT+s5}_ID!?;6G+eUQm8=t4T^_w-*_q?z)VeEN-mJbMCW@`4`e=W#2B{U)(5ORKK`$e*fiL61o@GWM1FOJi*z2LH@sjmz7+< z<>EF3|N4BwzSsY&-HdqMlG<~?cvdZOjVMV;EJ?LWE=mPb3`PbyA9+6ER@1_qlP&d$$4(UF^KA|-7(8A5T-G@yGywoed>jG* diff --git a/graphics/pokemon/sudowoodo/overworld.png b/graphics/pokemon/sudowoodo/overworld.png index 58dceaf06728c49865c57e6ef56621311a46bb77..c9a9dfdc3bc161ea36699ee7b2579991ea1e8796 100644 GIT binary patch delta 644 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 IM6N<$g3a5wIsgCw delta 510 zcmaFI{DNhIgd__y0|UdhZCTrZ6id3JuOkD)#(wTUiL4V9r9}-G7+xhXFj&oCU=S~u zvn$XBs7PyKpq|PeL7VeHHe-^vy9+}HtE>l*!(QU)>&pI&k(W(b{>%HNB@;X4>*YON z978;gzrDOS>#%_U`-g7!#aDO8PdFL4VBv(N7L^T`N?vB!JA8PMcCBbhiGZBfGalWK z*G?|TtDJJ~?e36eKeHb6U3j3l;J;Gc9nW-b=>tcB;AzXHtQ!}4XO*tLZFy<{UvU1xUfr|q`R62jTeox73)yVo9- zu*t0NsXuAYYjAq$nRJIpnVr{!Uw2<#^8K1G(3*Jh6}4yiE#CfNXgD?Lql^<{JTL%N zOI#yLQW8s2t&)pUffR$0fsv7}fuXLUQHYU|m9eRnv7xqsg_VK9v$>XnC>nC}Q!>*k ZF*HcRbxc3dxE82`!PC{xWt~$(6986Y&_VzJ diff --git a/graphics/pokemon/swellow/overworld.png b/graphics/pokemon/swellow/overworld.png index 06c500273119d58a234bce8ef09cfdfa00fd54f3..ddf43c778cf60e24bfd871ccd701743378e75752 100644 GIT binary patch delta 1004 zcmVEk7zqdi0001UMu)eNF&hyt008P=0026d000+od=RFyt#i_0;=)oi^hMkdnb9UfKYtx1jRqor@?=NckUXlbIFeJ_ble2 z{Lc8lB_IK8Au^0aiR#u$2^uY$yrX9RC9!e4~HGTXhI? z%LxwN8a$vcgpou*N|sUx@mK(DC=B?ji`>Z*;N}w0;3G3jK{AGv;si9f<9}gO(tvui zqya)aQ~;@s%zMA?@VZAdxRlto0T58m zncwZ--U)X2xDKQhOVsrx5`!o=cn@B0%nvNU>}6fGfux*E#WXmgt#Pp(7fZ~T=nj|> z?(BWrTnp{+v6V`bAa$YdL9M1z1LSrHxZOA{Jgdl-_^(1y&H_+;JnT}MJRnTiodp&9e1Y;0I5x}ZR6Xe&{+)xxTy4aA<0E05zg6> zlkhGLzC=NmtE`Y6Qu}|Z)mPp41__ic!czZ^p5f|P3(3jSYsY`B*xZGWhe}`%5r4yL z4%|LF=}`&v&+(E1>Try(3gg@b3)$YUPbl z+xGClqdOR{nGQ!?1}7ZmZ%^FOS?LD>r%znHAIQ*sHur15THJQ--#s%&r`7MwckO++ zPvbsgKQ+{r)!{(a*na=a?4B3S4T4829Z#=K0ZZ62q}Tsiz%;$}#CDeH7k@hV*FU@b a=k^5%Yav;gLE#Pn00008&H delta 1118 zcmV-k1fl!k2-FFX7#Rcu0002CwraKj000DMK}|sb0I`n?{9y%=AsZ1e008P>0026e z000+ooVrmwkxf4x0b)x>L;#2d9Y_EG00(qQO+^Rh0SyKt9)swW;*p6Te}zdzK~zY` z?Uui58(9#?pZo$>q|s(21+H>*h1(}T?;1=X653TB4=Bhjp?Y+i<*sq z^IE%HXRX2d^%zs}gL25C5emJgSz8-`R=czk0k~wkn^zJ@z9JAlNyUvBqffM77zdiQ z^_0M^m(Q9cFg5{bzU;r1^rc)U(0Ot+VdU^3pDxh;mtvb?36lmqe}FMn$YxlvcOeBA ztz;0|3M#HiACkaO%08d|mfJAV*tn~m7x_??0iU=j6^GF!$f$l3E&$DqXUrb z>4_DnxM{lppjQIq5oCoen_}yOFPAWpLx3a^o@+JQS)?%>07Uyo!bN!CBP4HeT9%{8 z`>fatP&#>-CDemmf6uxXDuL4>!t!-i?7tB%XvNmS48~Er-GixJVHN*u;CFI34&uY3 zWY~S?xJOgLD`tG}IF9EpV!5(;4K>@h5F_MyUS{ZGuGqZMn}5EJ0K<5(z+f(g;Ur0d zpklHgkMaEe@S<4RCM`7EM&+^uETM39rO_ZZLvioLR9dgK27n!Eyf6H?$@O1I(POy}QF_$WbrHLuHfA6pNy94W> zRaTtNnza;a2}CeaTur#TyE{ibJdt65(lMfAWw)QdJDXc~4J<2eqZ^9`QeQBa03hue zY5>i`?qiA=f1N+#JfkX&e6KdxS)52USV6Vj;#R4vadPy zF~woW_b63MG1blO-k(=kZ2N$TRSHALTu5OHMpM?;f1J8m+sH-lkrS8}71IFvnn#(dkqY9@B{$sdOXUzX?{{ZngAF&mqXC?pu03~!qSaf7zbY(hYa%Ew3WdJfTGBPbN zF)cANR5CI;Gc`IhFe@-PIxsLm>N2GO001R)MObuXVRU6WZEs|0W_bWIFfuYNFflDL kGE_1$Ix{soGcYSKI65#eF}I2t00000NkvXX1g=70g5a3{%K!iX diff --git a/graphics/pokemon/swinub/overworld.png b/graphics/pokemon/swinub/overworld.png index 60bad0ef611873c47a10a9dce39b93f6648f92fd..e4ce6c8c159c95adfaa6503d387d83d7ee3f765c 100644 GIT binary patch delta 462 zcmV;<0WtoT1*`;+7zqdi0001UMu)eNF&h;x008P=0026d000+od=?YYGV91yKLHGwh)O&am{1wdu48;5-k$i$w&j;%qw@PBra zLG}VA%s=4BZmo(aSSSN-O*LyiqjrR5siB^@Mg_=LpxhMD=O{w^j8Gdf;AW7dhWKw_ z5Klbl(5b+vfIcrIM>QEnd^0FMW|6@W_YvO;yepu?%S^PlScR@rGU7FXir8(cUkwfP zIq;#tz~O+G1&Q=`M6Rps%C+qwD1WR|0&r76mje=tbFqKXQ>@F&Tra;#6|X5yJPL4! zIxovIYv_N-!7Ym03mahDp!0YuEU3D5*xa=t2ObA_in-XQvk~^WJ;^|zeS&>X-+6oi zd&_Wp?k))V@Y{gt{kzZ-FP1xbt2>>i_iv4-O4uC*PMo00000Ne4wvM6N<$ Ef+Io2nE(I) delta 568 zcmZ3(GL3bDgd__y0|UdhZCTrZ6id3JuOkD)#(wTUiL4V9r9}-G7+xhXFj&oCU=S~u zvn$XBs7P*NppwevtQ{smHe-^vy9+}HtE>l*!(QU)>&pI&k(W(b_;2LP_=%nJ^^u+~ zjv*e$-(E2cZZ;5M|DfW1T_xoF#)7TZ0lS=qzcamOzTk8|a{9Y_KN;tIxjk!(nA5o> zvzw3C|1SJ+PkDlZN$RO7n!(Hd#2O^WP1g7%W$0FWtnr4?eEHjYUnC3_i(Y-S5iatz zWmC-V-xzT6?z7W=C(IV<-On+Y&Y-a3a*cL<>m9M{+)s}0kza8we~UERny(Daoh+t> zy9%tPYP4xcfKfhoy=|KSj^o)Rno$ znr*;!>sXMviFA)m^=U2Bg6V4eqirut4RC6XnKxgWZ~xS%H{EZ&QuX|CWA;O3GsciJ z83{AhMe9RSon+_j-5m0C$0FtYZ_cg1pRYf^_~Y%!V>XROl4WvyTpGP|e-woX+pkT^ zih9F;OqhT9<&5W1Y7b?N&$F$|IH#o7dJH`N1I<&ZC zpn-EBk3Q7!4xS}Kb@*-00|VVeBR3gjk;5U*6;kAJZwzmIj6^E|^u#Mv;z@cVhZpfP zFDdIo8GnG}Q7UY4;`EUfFtIXGQNDjJHLwTGoMH*j#p?v8RVo&Vx6QJEZ9YvpgORTz zbD6a}NX z%);TBYf6pcTJ=-E*90nG3p^XoTBIc~@hd_Kr6o@uM%xP$ExBe$$NYdRcIt;ftO`6G zuNQfVuvY|FvDrh0+VFS?SjTP({H=JooZc_3<+1snz#s6-{+;~*h-WIE6j=S100000 LNkvXXu0mjfGowIF delta 829 zcmeyxI+1;XgeMC#0|UdhZCTrZ6id3JuOkD)#(wTUiL5}rLb6AYF9SoB8UsT^3j@P1 zpisjL28L1t28LG&3=CE?7#PG0=Ijcz0ZQmjG%{3iS@nh+$YxCPc6VXuV3qX%a@b2e zeO=j~G4ir08Mvvg%$b-aU+?Pa;uzv_{O#3^d9xiP*gvdao};rR?Av9DO78{@1_)|kf~Z1KRa(wDo@z@D*Z*`fg@t+%g@^AgEA2a;KH5BW+r>PYymxEmlrCASrKL2&-n4Ofd!A4)y^nY-}71LnI|j^|7Nt-BqX+BWxLdJd2N z%VqB}?r#3PZTYmi(z1W+OkVO_Hr{13Df-Umo;|4nARU$X03gsYUxpys(XF!c7B%C>iMR1 z`|iP~^Sb?(GS09#ToG1Irp}- z4HYuKDibHns&D^(y3@Dwg>miPxXcY|cRFI!%?@jx<$ip{_2I4=d%1}e&CAft=Yv2Q`FV8O=dG>Cn{+-ykdPnS=jBx zqx8DUrUQ?DME^hjn7=+OZLQkPZ?V9Hrdr|}QIe8al4_M)lnSI6j0}v7bPWu34UIyK wjI4}JtV}Gl4J@n-3>>F1$vs8Uk(-~AnO2Eg$Mg7Qkw6U$p00i_>zopr0LzPUd;kCd diff --git a/graphics/pokemon/togekiss/overworld.png b/graphics/pokemon/togekiss/overworld.png index 0808c0f9bba4408f94b1bd7e451dcd2869e6af01..884cf4c6e03f2894736792d100c30cc88934d823 100644 GIT binary patch delta 728 zcmV;}0w?|829^ep7zqdi0001UMu)eNF&h;x008P=0026d000+od=Y5}*~_St8jefHUB zpJk(${J)LdT;YNQf%LX~3A1Zq8A(i^;I%d4|`NuDqBM>gcaZ)Jd=`LHhR4 zC)ETkcv5ggkt)8eMuM5g1apUfupHmWF+TPN@5=^R|1m~&2HpznbA2UHoxqe+Qpf36 zHD2p?M9th4GeWUL206+^hw=tw2c+P3Os+$ai>n*sA}vqAlG`a{mkudrq?}Qua&(a5 zCe;+{dboJ}sQ#k7)*-PPMIJv%H3W7;>CRf-`l2hjZ@7xI2*LJmZV57fftf>Kdkt$@ zS)VjqugB%*^3x znRHX}=usP=G}_U+?@!vXr<)CHmmhUe2&GYXWr+D9u zU6u}Sjq2OsF>jv14;|hs+S~ug^g`$95Ud>j-R47j$KkWjp4cCn8W65veA{9G0000< KMNUMnLSTYg22srb delta 775 zcmbQn_JD1Igd__y0|UdhZCTrZ6id3JuOkD)#(wTUiL4V9r9}-G7+xhXFj&oCU=S~u zvn$XBs7QKZpuCFb$6PTWn=#4T-G!lpRn`N@VK4FYb!C6X$jhd}>0j0MXkw>)y_%;Id}UTXM!KMVhiwd3Z%VVB z_aa)UX2#54hO%j#)fYu41bFD=2}T@vlxA9vtG;SM<+2)Rp!sny}37j^$7L+bNo?TC&VK-<%`wQ*v&i66f+;1+oq<kiTRkf`ASo!|8bJwch zg-M>%HX1&Q>MwFye7#;YA^61hH)6Awhg-xwUXgLAqxQ|qapyRNi{6{Du9^bPhHP>*A4Yinz3Yinz3 z>%Yjk&-jPU-H+GrxiF$-LXCg615zED_E7l49*>3J79ZRqqrx4;*JUhx;5FrHP4(w zDnum({50^BF=Cd7PYdTL*NdX3N&huJN@d*9`@>ueoSAce9wU#D8O5WCBVd2Up9~xn zS|1Le@ZMTuQDYNl+2Y&qdKoy*sLS5g>U|&IVU0Jw1GZ-5FWFm}@@3*jIs0`XA@_4Q zpw6$}Ywg|2!4R-FBZnhj9X-x$=4b6y=Vi`2_NXt`FF70`mQu#&b1MVKFkOF?HGk^Q wmuDq_w1;C6a8dki&x-47wE!BrW9yIg1(Mbl8o1q)6#xJL07*qoM6N<$f-p7LVE_OC delta 578 zcmdnbvX^y&gd__y0|UdhZCTrZ6id3JuOkD)#(wTUiL4V9r3DQb7+xhXFj&oCU=S~u zvn$YMqOZLyW0JSK3quF1tOrmFdx@v7EBiA>UN&V;25SM;iJkKGd7dtgAs)xyp5N$q zC_sem!R6k(T*q(IoC>CRAGkUxOUBipaLTM-3~YLV9vpnVZW9H3*Vr|DV&Pk|nfr~3 zSH#?yxjkiXbmyH;OS)A5`(O1rUp|K^8i9*ke(vTFx_|mwDnsNU-UTb(xZO}F*3H|dNo^dHm+FUn3@K>YMgRTpLGav2C3AB2)BYgSe>E(9{?El;3@>~9^`g&*{ z>z@Y~Pqrirtbe|Fx!rN`dE(zDe0)=V%J9J1eYZKSp54o1*KK=q-uUG@Nzo#mrFg_Y4%G}r zK9xA&m>$tiahC&l_-ZC;#2w5zXXQ1&$3HP3Y)#(GEH#pUG~z{{3G}O}aKu?5lb6_Z zQX?H+yqQ95Ny>PI7iYQ))P}(k4bAuFE4A%P3xm7q~KgFq!cl8Xtm^0 zB{!_c!D+-zAo7eTu20x8<6vOOX^^jVUDfYic{mcM+pz+!O!ONhD# zN|V^3wyZ_$$lAb&MWBdcuh#{~2 S6vFoa0000IqW5# zzOL-g7?O}We`S2?Q*i#=gr!p}Cg}Xv`Lq9c`8COf z$+E8_{`+J;P1o`JgyPvU+{2QZ;#`xplbm-4>`quUORSWx70$J-4gx*(owTk^73BJP4M{~ zW7GOe^H{0vlR3fBPjesGK0aAf(Ov`;t!kK^Ha+;qO)clr>x#l98_yZCbnEEV&kv-Sj-I!ks#tJvU++f` z9_OtWf3wR4+1*!I8oS*~ZMybGq0^!Mi5zo|Z}@OSxTv8gaQesFraE0~x5TaVUE9HX z{mr%a)Bl;VY+Gz~?0J~da-G+HI_u1J#4N9!@=F%i__JQMRWR%Kj-)VswoQk7dS@<3 z65Xs3QZKC}eI`0jqL(>3(`xssN3Z^!J-6$vG2`1k84oUa7+VWQ2VUGh#Z2nok)tU= z6C2~RtS`6KT(%bJ5}cCUa>~V}#dYnZOUG`WnCaI%jmJc)Hod3$S_t2Q$hjwkRQ@uh z@P^y{mKC&IR{P>PyOCV|%dMWilN${loa^5||9@T5wK)y-A(wcqvUj)!IOTXfl~EA; zePnUbX2oycglDiFYS`_sH1RKwPjt58^JM+w1*b2w^qD*E(lQUe5inn;Bp@@PO6mEW zH~m_tqvK+3&P^-+cm5Z12)j&D>CUX{z~rV{;u=wsl30>zm0Xkxq!^40jEr;*40R2S zLX3>8j7_af4BWL1EUXL+y!5U2py z00000002~jVXgoG01#tgPIdqQ03ZMW03ZMW00000003gS?)m@#1J_AJK~z|U?U&(_ z+aL^tBTFLOIrsjr+m!%=z)sp`I{g#o+DrV&W>=DdyWKwHGd|-phC%cm|IY%5w(VKO zEB^L)Qvl0`A^f*|oQa=B&6KLBFafQ9N?!;l_&VSf50dn$fr*k3DJGyY0f8#v;=zlT zkq3iZ5)uXSlEdc)LO3Y~U-5}DiKwaNtqwL%Dnc9$4m=v%tfs6@ARf+eJ5@07MLw7Y zi7^3zPn5+5d4ty!s;0So;bB@Am0#0;!eis8HmgLPu#^QDLC>>dGn5n`ax(l&$qR zteT}7ei#gVFi5(2fi>Tu@P5zuh{-mcD|GN!A(tc4Q&RP}1k9WQwE`iZYWK8N#y&wG zYcM$TX3!@P%)mL_F;a#-voy|szoBZKqnd*RIpj41)~!bZ79MGP4;1RYOrh`>{^_t( zz=;`*d@yJw@F}-!VV zULznASYCSR0j)v<4+4um1W-zMTj4k)VByxkhHpWkt*q!#BJ?P)i?GapJQ`4Uphcj+ zGQ(O~Dx}i6=vbkm&jnh2+`y25g_r)FcM~iNX=jhv)4GxK%qN2`86N#7>Tg^-*Wizd ztSvpkn1B&M!xK(8>1qI)9zPEVE5D{q2n{%KS}QmRoGbX8^PRuZlF^4QrFVugYM^cVhn!Gl20aS`bG z9RwCSagP`jh+nlH_edE9+Ojiq2@$unKlUB%of3Jo5k6TfJ?CxTGlAZB#E7!rmaV?d zbMYLx_7}zUP&L&*b=WY;`ccUHM;q6ZE-I%@fB!u}CUI)BgIhYyK@e!ivs^Ni?dZ0gh9@2#ZSN-bS>LCy zPNjOKA6BeuIPjA{H*WP1?3pqPc{#OKUT}(>a8$7d!(yBD$r`@)5EjSwBoK1qOSgji`bKB1;x0+gKUI=u9sRmvDQD^R<#9#Ae zF>{XTbMii(4D5Th&gLtDX3zt&tp_LEFmAmN=$9)$d;S<@ljOYWcU(9FPmgImdnM2e zhQK+X-G45SkHTEsUuVf4m3OmxiEF^sL!JwKIo`VeNW-fghy1pj&-l0F7x9B7%@C$q Q0ssI207*qoM6N<$f{_;dS^xk5 delta 1162 zcmV;51a0026e z000+ooVrmw0000gkx?!rLk~+>00001VoOIv0Eh)0NB{r;2XskIMF-{q4F)4G(l(XY zk%=FFrb$FWR7l6|l|66cHW4z_-z`2Ro8!xs$(pWEl=S`a?X z|5YFu9fwcx^ZL&S+K8{7xXO9{15E0eVfI;L84Lie8londBLD{iWw7kz}VigIPHjfRnXPBgoKE^2SsY}XSEY_9&KZl0VPrWohNpyo zL~KdOnrDQ3Ycisism(~eK$1`!5EFps$l@RXR?T$Hlbl0n4ILZ9Y(AS5H@|&%-OQ7T z&q%Y&NR<;zB;!*Pfak!X$|z$E(YuD^yt%Z7p0yz&Nm6awc9qX&BsBrXR5LA&!WUXk z8{m-%z;j^HtU@z;J4;?Bh1r?If_XN7hG?v2Oxtz=Ka zEgA!nzl+OPm8c$N1ZuI{RxLj02|6RoR)GT>!O=1u<~9J&2<8)aSdnOMe*NaU5S^i8 zXTX6sZCfy4#$ZesXa;TsbEpX%wTofSbfG#%48R{1dh~v|KELXYk!Lqv024)jBRDjk zg=S%y;+IJ&*DV#X>FBuTok4W*52g1XGkghu0319BHwt^xq&)>(TFoGznJ&&W*2&!1&Nqbz26U&GO>@~m(9{O$L*_Bw(?Xqpx3u*-eOsAG{*xlHi1H^)VY&^#tN;W@n z9Q?SB%jKKy^+OIYlIm)ZtJDjktyEWqOb7cGt6h&l__M2-#cb{j&`xew%j<3ex>;{m za<^x>kg_MJ45geN802!ZTjbz(vf|b53Ya&z-B8*W+(}B$Zuh)hoNcCk1I??xf$E}k z_on*@O*NkhUou_WzToYDX0ZQ0y78W%GCUkt^kFgh>cggc<$S9i|JWVG@IdfkduCjB z^}5a5hcWzL+rP-`K~pDI`GWue03~!qSaf7zbY(hYa%Ew3WdJfTGBPbNF)cANR5CI; zGc`IiH!CnWIxsMghy^kL001R)MObuXVRU6WZEs|0W_bWIFfuYFEif@HF)~y#GCDIg cIy5&cFgQ9eF#grOjsO4v07*qoM6N<$g4F8(egFUf diff --git a/graphics/pokemon/vaporeon/overworld.png b/graphics/pokemon/vaporeon/overworld.png index beec2a377559ce82e95273be362239f6aa66849a..6343bf315d45b02145d8a548bbcef510ba0bd757 100644 GIT binary patch delta 867 zcmV-p1DyQC2-pXZ7zqdi0001UMu)eNF&hyt008P=0026d000+od=T5 z8%ab#R9J=WnA>iwFbqYpb0-7y|9^Y7!=*r+q*bN%JTxlpsEZ-X;Ml-4{f)ozV}qFS zo0)!Fq%}r@WUQN}F7ibL<(8__u$@NRVyPc?e@Zxn0mXHOIgmQp_nl zL}Q9!jCoN6HU8+i`4x*?`N3+b0vPZj$g&13Hv@2myPC5x#Sm$pk0NmuR5(97mKdTy zN0e*TZ^Wg}V4Zqdp^YLS@p*}`^0&sYhaid!7FaRA3RXNa&f+tGIbwewAmceIeP+bv z6z_uS1t=WL04uoSWXzj!mZiv`#zF2bSaHNqHPoCvzpX(Pe6!C=00UkM_a@lr<(E!e z5krtPHfLmr)PcKT#ic+!kAfzJ0*Ad&OK4H5$bk0*hg@!xq;IY3vXqYxL4{X^4sD8T zSu5~UTGfb4iX68RjR1cRtfd%Zz;0bP)k^TjS$%9oqawn^AzJklJmB&;R8mM4+ydOV z`p5)55#+63*EbsnZ{W>P6iKdH|NrA-He5=vrk|1)Pk>g&AapS&)%LJmhbZ_Pg zZ$5Mq+|Y5`0U$4^iRFH8d#}?l6u@mPGsyj9=d}+q2selwPLelA9WJc>eLC{Kd5p40 tZ-%LN{1F`QGx++6+ppHBNB_pJjDI7zBoK@hLDm2O002ovPDHLkV1kXho0$Lr delta 973 zcmV;;12X*B2gC@F7#Rcu0002CwraKj000DMK}|sb0I`n?{9y%=AsZ1e008P>0026e z000+ooVrmwkxf4x0b)x>L;#2d9Y_EG00(qQO+^Rh0SyKt0S@4p7mRgi{mcSKKCluGQiddjD*<)f0iKXgdvM`jPb?KC) zw#3wpmH{zR%8XhTvUG}v?qxvy0M3o?e0MahfFc%di1eKAo;UYt1Mt86R#6au<-aLZ z<{vz2Tx)X8G#R%D^_q$4)ytzOPo&XFvvi39lK09go^ z#3jgWZCuJ%7Fh`IaqO=G-%oy4FXpsPC^8E|IdFPs&GNeDT$HDb680%4zDN|N4B5PB z4RMhLo_MW!p4YAIkKx3(19&0jStdc#H-rFzCw6Tj^h_48+d!UEe`X9eqHtT~gp{F$ z(m}%d^bF!>NMzJWgiiK%I`eq8!8k{JNAEIW#?8evKtHMZF*gMLq&LU0b}sB@6Y5x| zWiswX+edFcs!TXyvIwv{nrMG5epahKAFy2_G0>J1;Yt?J)@-Z9xEF+bzOOPNW3XbT zyTXrxV8_pPiO2xAf5}P5Z5Dvr9k1h2&V>t66s- zL@gIr80TIXQM7r;gc-wrD*O}#VH9j0gNvC6HLO+mfEBE@C_}?o2tOYpD$KY>57UQD zGwd&IzXf9$ARA+o+XTq;9LAb~7hdh3k;`Tzq+G3rG~oUEf8*+`v&Domg9;HgxqwR3 za~V(GMaJH7Tn$qp<$j+X)&uAJ?fGv{nNVh+5g~un&rdQN!L3Q-{=uMYrb5cL#k$ms zCF4$Uh8biQg)&3UGWD~8Wu?N59ok<1vS=8M>}1IdD#=yB1z>_MV~F(OS7N2Yl(lTk zFfQ1Qn*%V8e}Uq9uFC~f2y<^JJszHt!_DrFgf$CumrXq`+#IUoS!pe|9)ht9^;3kp zUY=u&ZT=mp)Z?Le*~LTQyJ#wpg@Cp?mFL@I6`(ADumiF15-y-F-vJbzvcLsU61bFC zcvhVAI-x@BkSO?~NKfUO!UYe@V#T$78UD-i11ljbbExUrpdJ7K03~!qSaf7zbY(hY za%Ew3WdJfTGBPbNF)cANR5CI;Gc`IeF)J`QIxsM35Scx(U><^Q^-Kjm5- zwLa{}8Q0(SxvoL{Fc|zQaNFd6j@7U7VSKt&^kgvWV}rk9K=`+(26nNq`mhE9Wc9~@yuc&AtV`-Oo~ zg@^%0CPL+u)|h@g1ib}Jj?ASdIRWxt)z(c69YGT z;?vne92HsQheiXP(h!K*(Mbq8;R6GtPYndCF`8i-5whNn->_)s+n~tQ0Coike1)=` z3^?mhztS8)=`wcP~CEqoAbPj{%4K^1?i>r@kSyD-!*Qe$lJ%d&;2 zOM|*a21JWJpynKpYDhN>aLPc(D`TX<9mW!_=fBlu{=J9u0tw{$1s1;6Gkz(YE$Zs8 zw5b4(0iY&@F8jd-MXwzYq7^_Z20-{XnCOD<>jWqkR%*H8V4sSA7F0juSAYi()B?tu zr*k8^DHkFiXZN8y6wS{j-6LcJjjnQ~XU6JLIoO1!dIczQ3&<(O!Bx(>JZSZbc3>3E zdc%OIVM>jTbYt3mf-?$3epL4BGu10V9>JIfFcQ%ns>6~X69V!STN8+ow<$V!GxueQ zZ}f~9;uMAs|4Pq)fCxNS#NPly%($%QD|Ii{e0xJ=3};Z*6&~oaSB7ud=e|QxXh@?C`Y5HdBzx8h{wLS_Z z6SjB`Pjpn11c<&g`bbZ(K<}zRZ>vyUtE1LuLFp%-ztm|&pEk$EkD+Uw0Ev1Ic&Ez% zOTYLJbS{<49~_r@T!)(%`R6})9|cYl^i%zf|1SOjwyGx2V{Cce00000NkvXXu0mjf D3c`UN&V->rjKYKp}zTM87g1tpLS9ih&_% z=eu7F3`{>fT^vI^j=!DapMBdvqFr?HmpeL^x;!zyZvx6ZW1S-P`qqZU9$K)0?^K?z z_d991V|#V87d+u+DPP{(VBIh4Ry8ZHzPWb&-bw#8Ba^sx=hku_>3{S`ZttX=mUplB z{hN8~j!wG9;XmDfyjF*v+H}H-F^wa%|HA4gS}R+&R{Na~lswJGvGqDfP1~x+uOt%R zJ#{)c>jNK?(+?}h2b*6#`6}`G!0FZlGXth+KjZ!%mv*(`{fq9998Nx``g)=MN`b0Y zgLAF*MK2Z$7}xrF&oMEG6%dFOs8TmS{z+T-mb$t7Oo3NF!xfWqPo38JoUuW{fa9dz zN}qLoQ;(l%(OkY=CMs#)a#p>~A|DD)MHsqqob34Zu=EK}g^V9}qu~Ws+tZuoJ*_{M z6K#~bi(#4N(|u|Sbd*o&KYFp??Bg5hX=+pEa4AlRI9$JZuFZtsJQd;HtFKO3Abyke zb9cwaE39na*RcQ0O4j)P_=N4_!YLf73ZmOhxQ{UYQOMi*-_>-7p^KEV|Ku54 zodfeMB)(m$xf;VGQ+cw1t0YpaqoP7~f8lQN3kyy1A`UMTc)sDdCo?C%hDm|z=dZW^ z@BFNNHvINyz8l3I^-_V2e{BT5J+n%xW%Hi#=Hi7{92>ovrKwFE?3E9-kXW85t`-FH#HZmP(Q*iJ$rS11Z!U8TJ}r@ z7DM41QzjZMj9zVDb6;-TZDuBnBC)+CfFgQCzqUY)~)Dg{h6ydix1a558(ZK^3&Q>AG_nqZ~so+5H}+!>eOE~ z?ZjlKZSJZ(#jb0nOpM;{eM8~X=6UY}B&L6^kJ-z zm0Xkxq!^40jEr;*40R2SLX3>8j7_af47Cj`tPBj^L>O=&X)sE)%FR#7OsmALV=imQ Q7Eq@1boFyt=akR{0O^RS*#H0l diff --git a/graphics/pokemon/victini/overworld.png b/graphics/pokemon/victini/overworld.png index 3c76017a13680dcf52e301c85b190b62c162408f..9a003032b0b470bb4e02030f59e5139b5c13a43d 100644 GIT binary patch delta 554 zcmV+_0@eMu1h)i`7=H)@0001UMu)cm0004VQb$4nuFf3k0000mP)t-sn9!(7DH7&Q zD2^x*ZDlLyu1^2}07)Yh=_E=HT%Zf4pu{*Imt@046u%#750D6w~GW5U9`WCE#$25K~h3 z=l(yg26fQ~MK?i(J#foD~kb9q-z+eM}-1roVz@Jk7sW8Y69VQpKFh-ME1;J1SZ^0X*YNVe4hDHasTFA z-De>p$?zIpGkV!;ARDVdv?b5$W!$2Gd@C$}! zZQ~R4V(MDkLPs;?O6GDG55dwQ5eJciwQ+JWC#TQgDk%5>;u9403B*|+!PUgY`$cm| zaFTq7me2L_`xA=l)TvYFmob{3U#+UnkBTLs+FzeloW<@oK}qNpoXd8qI%|eE+F)d8 zbL_NQtC&`GUVqT;zy{C+JALeWm5uB+9;pS3CS%;g%&Tl<_trzupkR|>?9%Es9Gs-6 z+z16@%ss99IvdzcgvQ7`zjAL&b7MGH-95@H1`+2;xIE+pNQEmcz`fp z^$D9q9&`)_iU}j?Np7%FO2I}ErBwB15)leb6Lr8fA<|B{(TE43`bxMU@Esh#PCV#0 zIa9pI3g|o#B<-pj@BnOJz4Iu6-rG_eT8T9T9$E?Tz=xju@cxmA)rm77fCgD$ftl{t sA8r^!I3vMf;(O>%Q<%s?|0D=~0HS1^k%T9AF#rGn07*qoM6N<$g7cO9wEzGB diff --git a/graphics/pokemon/wartortle/overworld.png b/graphics/pokemon/wartortle/overworld.png index 53c5c24a05840e266e8f749cea5b391849e059da..ea8525237637a59760014469955da51e7332b13b 100644 GIT binary patch delta 637 zcmV-@0)qYK2IB>g7zqdi0001UMu)eNF&h;x008P=0026d000+od=B>1Hl));{f1e!+LbC? zRjTG?$opWR+qP=es#U92ty=YKDy8r7|6M8Pq2YkvqJf+<{v(w#(P-!aPn6w?nO!e` zd2Gh*L;tAp^Y6doTc?~NIN^yX6LTqrnLy4d&lc+B7WT_R&v^4Qe`?Qx*?EV%VJ%)2 zuG56O6mjEB;2ksm@*|46WWrsr^a=w^IGq9ED`vb4at{6P95v}VzP}-XCBAX+4&zls z3|FXNyy1v*sXbl7f;XRjUgifB*9083+6@90!Q_=3Cbq zJRe6GKwCiPs0&3{p3kS4AjCF$rHOo)Xso&Z7=6Zo5k;ya%iSJCF2w z01EYA9N*R2KW&~Y2Lm@Ns#)A~ z-|H~N^@*^{Q-+&Q0%V1bR6jnpB50}C)C%q;^V7f7&O6xiHqCtZ&9nB>i?`gZw|)A` zEPCdpHUA$llqGlbCK^6JpkZEgX3eBeugs6v_gMC&USzu4wng@ZY`#~$alVFpS5}{- z_5sfAp7Ga2A2RZ!XdZ9daGT-yo{7oFZUs!6#F7>($WY+LZ8UAwhvI#q4<;^|{x9i| zaPKm%66vcwCx2`>y@O9fW9HTCC zuaNA%^J$XU412C_^HumSogtVUizU6=q+v#?(kFz~K zKk=Sbc5>q3{>)c%7cUpwpE2oczLR#y=7RgS6YA%x?o!|TrLRu(V`LS(io!Qn2m8yJ zi)=1)M@7a99b0VR^P+Qo{ox60Gp=_&tC*7U`)Xg``kjyCr@h#8ZJ*r}vHhFuKfl;| z%LCJpYKdz^NlIc#s#S7PDv)9@GB7gIH89jQGzu{?vNATYGB(pT qu&^>PIP)WCA&Q3F{FKbJN>mLp$U62ey&?W6tH3A}@Yl z-npE+;f~qVkoFS+r|sV!=<0Usoc}TH^=2vc>d$KZYSEq3>aINy*Yo6R{3zD`v*6ZJ z|N9%#=Sdt|a&P_}!I+X;F4`Z=>*QW7=C7z(=Ca%C+Yfej%ZwQsY8g@_<4YPgQR~rm(30z`!9+gZ-2PA@6J=dPQipu)oBq)ovJwn|0YQGr}5gj{%g3Yop!OOacy|V#rv}BgU%$} z5=icPcWQ54w6f%j=zND=2Y*yry|*+dk@{8NcK9Rf$32|+>w5REsh9SfC7GA&d_VDa zTF1wiB|COHPU%~E^P*3rxy|E^W$XcmA3A?sTE(Rvt9e9n^ZAO)+s>Ikh*Iyb zyMs3@u6$=1xN6mb;&*-wHys>hHGcQmT(5l2X{dDVdse)-<=1&(J&OyZq`b4+X71S$ zdA=$&U`f5A^tyWu`=+Eg#B)`L-ZYQ9qx0eIR0*bwym^Ngyr>Rhun~OnuKde+g)+{S z&rSFbYH$TjDEY$i#W09#hyMG&+>Ndu;vcaq8^t@9Zk}rh3}e+2*NBpo#FA92FVdQ&MBb@0C<7l4FCWD diff --git a/graphics/pokemon/wooper/wooper_paldean/overworld.png b/graphics/pokemon/wooper/wooper_paldean/overworld.png index 7f8857dc4679a3398ae5b38af5a62f62e2503c32..f82da6a04dcafbe908a8a3dcf474bace463e76af 100644 GIT binary patch delta 402 zcmV;D0d4;G1N8%tZGUq~L_t(oh3%H%Zo?o9ghRoh_4_~Y?nttwtFc!_+y3~fR;oT@ zpMemTC6!90QmIrbl}e?C1o}sQJ^k8ypU3<%7Y&97e38Dc4C#{)mzQT=-sKm|Goyfw z0EQR_TwdM!E-w|}YF4MZH4dVeqgKd=5m zzC1T*6bSf%IaQXyh+~S7cx3P0n4pMbhTGw<*(>038hmX2+N=SWv$56`YR%Xo5$C1` z8TL@XdInq$gKf;uy)?D_MSNHiSVVf+|4zB8(E+~tIo>=3#N)_bNzt0!z=_)(>}_&= z5MdpI2On!-6n_xi$J_OJdN_Q%rjQzQGwa~s^BhtkM$L}m!JEmszFZ=m9^*dW@`D#= z5(16@)tSLBuI9^7D))DFstdNi!x!#Bq<2E_1Xg^!DG-?%+)O&R5w5Uuypz59ml@^y wt7A|Y;3QxU|F#s2zB=B&tNkP(_1F3U#Xu4~6eD`Z01E&B07*qoM6N<$g89S9wEzGB delta 404 zcmV;F0c-yC1NQ@vZGUx1L_t(oh3%H>Zo)7Og&Pvr;P-#v9jEP9hA%_awm&`yB=kAX zv6H4*mQtxyDwRs5QmIs$BIqCa_4F$<`!T=FNs{3SUx?RLL)Zxkd3)yVU4C(T%}8J~ zKtl`zA#e9~=J@*_hvbyrQq0?JPQb?mx9M!H!Z+}y>3&=PuF+Vf_Kd=5$ zzC0IbOpx#cYpX1S8ApqdcxGod8kBK#cpUzQy#gUugOAPM@CpdI7B+@JV;DOm3adzrdE zh_H^qgU>ZECVwE=$J_Jk=@IbxnnG&y#;f4qeh%u8MtMi^9^*0J@`Jaa z2?$FqT_??J-*C{ yuD=8ZNdtlenj^j~C8Mv7kMC+f2`K%wJ^S<+7zqdi0001UMu)eNF&h;x008P=0026d000+od=jDh_xwNvXm-d&^+w-XdYq^VMA9p-CYn|nnw0wX51@Bb_uh&c338(4;X=?|F zf%RRCzy(j4+)2c|a&X19YZA{4bnd;8Ha(zw!Vm&ZpA8;%K8MbwDvTwss{D$hqxr#k z0V5?e_q_A9LHf$8%9UAG<-b;y*!lDT`nE3FvBKzb(F^+{pMs_~6()&f^`8me`RiqX z+iZYLdG3D_sYH+k)lZHJtHH|m4-N@{k|IYcu(F>@=jEfs5P5#EL_-GN<$w!*7@^Lg zc1Xq{P=*8WK#HWd239CzBwWVlsIb{hO<3PWAOyLem`)3aL^N=M4+1O_XIQpll_0DuLUo0*m54Nme+O`szBo>hcy=kT6up_7_+C}w>fUOs$)nA7B5HC5-{@7eh4~I zob9xoD>yyusZH}J(K44a{kF{t?>PSl<%CLeTd;5VR*yn#;Pf=gOSD-Zw?$x`>gCkH z1?MB9mQ_Zd+*s~7cjB*)(+bSV5J?SFmC1p<&{^f<-gU=mPRV9ZMPip%mOCzeT;Ew| zh+hm5DN4!G24Shz))jKeDZ}l)b2~Vc7B^tX`z?;GL;Uk1_w8Bm2el2P)RE_T|Y*{z^98OHioD;PLv3+ zx+4&<)M-^o!U~T?5lpVH8eCkbmz;Re*|_k8?5?o0_YYYAt|^pCN?Wo|=bz=r@3nPx z<$O-lOCzU04G#%&j_6aI!jY)KGk?M)vHH#3iaO7=mp)hQnc!r2b=hn8p4NA^$}Qbt z=Kafzovf}N<|#V5?dDda$3AXx!blfXh(2v(@8Q}(|;^vo~2sL zjQz_u>=BeUPgs-xYW6?bonij7B*Tc4$zEa+gjUg-1Ll^>qJ`M)4UQzNSzda?cr$;w++?qdfEjK)$Xm#S)MW1^YD?I5^qDcP5H9m z81o(WgUt8knPiNbYtQ_hC-h>*M~)0#>4YaozI}_$0nDJf_*pUUB2khBJTf zGW6Ki3#jPNjb9R|A-VS3u4l!O1|?0GVwz3lg0D$?!z-|VlO6~Nfrxz%xD$*?mSaL+25N!d&}oIy}IhOywceE zSlj7x>ZA3mE}6J>UcLKv>I2!BgclQ+u~@Tg4qNQ#o-)Nq zqh<2-$r}ykt*GDQr0&(H>QuSu-$(Ta_N(kg<7SERZ`8~N<|@?^*NBpo#FA92 z000000036muPXom01#tgPIdqQ03ZMW03ZMW00000003gS?)m@#1LR3WK~z|U?U;>{ zq$m)CrI6xBeE-+IEI=9sp*LptE-qr3o*3n;(aaJG>}~to{=Of1gJ>2vu#@{QI5RlEJ6!ND4ZL#P zz~KgNB4En3SBWb>&hmu>c#I*MsR5_PpFcGHj7y%US+2gLmHA zPO*kO+{q-j*5?lT7?87;w+6S(d*~yEN)AkyK!oyF{BtpkPo2m3AcHsF7)*76VvJ-N zWd^@Coz;3l*&#JNpVz!NIhGQC1yNaGI=LReieDK-V9F2_4l~&D#vl$MHDK^^$uP$w z1oY(qF#`PL60n!FoTo!x*owF$m1PuO3RnD-K`vvIM;UzZCWAzWv=Cw`voVC!Lmz|3 z5pO)AVitoNpVA=FvOP~rtQ>xr3E|)HCWGkI;;+k~sJ(IV^jT7h1x!+ZxvI5|{11Kd zD+2m*ic#N0pi2TR^jiH5Z!=gjJjmeQ@oF$%BNezPNpkobFyFRMlZPd^@)(*KaGt2I z&KVI1S&l^=TU`p}ir+Jc-a!Uq>WGz>^R~`nbZWA>$zfM(Upb#v8E=fzS_B40acR}9 zc+HWdC{41GpgWBaUAY{8K9&g)#ZqR{T)RJj1=kS*p-AB&;wQzl|GMJUDJp#4Y+2O@ zV9K|=U*sT(%Sw$Z)$JAZgSP?LBzXYMvQvPaAmAaCTF;;-$$}6>09lH(U&0y-~Xv zzxC!?pAGg9b41~PW79UnYkcl2(Sn!8X{DXLPfWSIGVbd2m9hF8F)jOb=t6>_RQBr+ z19M&l%1S#kFy$))6P(oODlok;>1V)=4=V+-%Zn#40026e z000+ooVrmw0000gkx?!rCILxa00001VoOIv0Eh)0NB{r;2XskIMF-{q4F)6%)^pcb zk%=FFzez+vR7l6|mcMV?MihY0B)}k}W2KO{!=0@*bqi2D*sZ$NV3ua85EgLIft3N$ zLkvU_N~&lw7y>A!Xa?6y=A_7AYH8ug)KaHt0GUfspwXiLrT2qJkrb_>$=c^Z{3!E% z?~d>81i=5nV+Fo*3VkWpc3055301t5Yv#s(?R?I%5CB`Zm-4?0OjzWC5P%+ju#B~R z>@4F7L4kobz`+t$j|ceZl|JkH(Zo~XS@~KIM+S6(1c*sDGyM`L} z0*eY=I;Wki!mm^26)IbCeEOR5B#L9igm=cLf6z9bjAAC#X0vJNJ$}=u*Wc?L=nE_= zbUKEURoF&?e?@oMYGDRHXbivS`8i5vHx8$>@F;lvCaBl@!`>oSRA@>*GkG(AD`b=m z-5-+|hG;AFVZwRBU%}y@Vfbax9|ptFCHf+#6%I&N;YV>iX8eeLiX97)_kG{ThHT;j zA9nYwwVnPC`(BS!F)wM9^zftPIZ82!8DEYs(j5^SuH(2JA_WCjf7>I?&n6Scu|XB{ z_{O7~S2w$X1b1XY6*_cf+t~(xN>UaJwY9#wc7Kw*l;4(_#s0Iu@btvKiVfh>DX|r~ z6F|WrH4^euG#Nk7wx%-Eid*5|jp>v59GBRD?oo4SBPl?Dvyu%7ZNfKx>C)5G{H66wpl(Z zv=7Tn zLkk+k^Pshr)ZwdaUov-vDMZt56TGD|pgi-HoD1*TcsoudI%mXOFvRbk5W zKF|WEGyuj6;<)g%G+O5+W-InC3HntbYx+4 zWjbwdWNBu305UK#GA%GMEip1wGBP?dHaamdD=;`ZFff>000000033S9Y3^P z(h{z?#k_GZM>ETTcUFOo|G3gW=0vRYQ{cA5mT<*AXDhHNl%~uF-r}`BKON%KE*rjQ zs_1OtiRFo(_-qXz;fn7jsB1)^QHGp4`1!KZgtf&nbKnbpG6;bp^b$x6PkCjUPJskU z8*gS`Qq<*PD7@`|<+NFeaOHjM{+>?=#7xkJR;A@2@yJgGsVD_yn1sYvYz2}T)P=K# z#$gqRNJOR&pGOYLm3J{_u+luDWw1FdB^@O0c?oBOgpJmRw~wAcGJ^~E1$R!U0@3Ad zZe)~W2Gtv#cktw0`epS+QdyQ7U-5%M-<`Cs(j0mM-QdE1NqtXh1(vGc%2Q;|(YkGX z6n?{J{k{fcDfXDybIwNwNByh7O+U%e-<&Z%CSR~p z&P^}QFv$L#>tZ|~d5qVDYVgpdNLYYfM@QgdaODNr$3?aXOj`A+oZkQ<;2m%EPZ{e2 zm4XiL>38mb30;mEi@G{{I~sx2;KuQPS71?H-{jNmxWHy$<82$j62U>o#$kU$d%Pxe zxlB@A9kQemXa@JZcNk$_9i;OEumm&k!`p;<(qyz4PwbqT!7X9P1;F}iO56&>6$5N4 zxx0@|l2RcXdvI8^TUXxGKan}G*{#nHI1+~31d268^wD8a42c^YamFtXzHga978#Fk zCzjM~5J!c*wYL{Ah975L7U1s&|4iT=|2F;r4g4eoYhmO%00000NkvXXu0mjfRH>Nn delta 994 zcmbQozL8^sgeMC#0|UdhZCTrZ6id3JuOkD)#(wTUiL5}rLb6AYF9SoB8UsT^3j@P1 zpisjL28L1t28LG&3=CE?7#PG0=Ijcz0ZM31G}2RXWmwYyWHTmtySp%Su*!M>IqW5# zzOL-g7EamTas2I7$80G_5%v!^cU*Ywb?ur6SI`Po^TSdx zHo1>)Wn}P8@-bOC-HV6!t*cOAi`<)CACE?R32oXg#H;t4@ssAQ;7mLJ^pf;DQ~QoP zDZW?ucWmbO`FCZ*TI61DlzV-D%90D`r#tDZzF4kivetvEbFTKqP*dk8y;8CDfnu}5 ztmlZAE%bc0FV@sWPwnLOn&=EE^9_f@1vcfpSNi!P=*??qmB;fgESXoKCKTQFY4ekh zOK+UJ_}XWwy2;8nxo2Y@Fy+_z{W`^vn^xBO1%1TcL* zY8`WT--FJ(`d75>H?x=>+gnrlrhmq+UTw8^b3R#rN`9YgUc}Cy@0OB zBNv{t&o#MXQ1)B-f4Px;Gyj6aWh#dcyKi`RBG=nD*Z(cMo~&hT&v)%T3-7Q$y7aTO z*IdTTa2=1CT1?TLb>2LSZzkJ(E{QmvP{`kQM8{xf(1GxC^{m+zoO_D$y8MOrJe=Ue zcGZ5zYVGJFq7grjG3nhY!YZ+$pp1r4jV-RrT^|o^yD-YnI@+e?>-tx7+?%!%uf8(4Cq)ULPOQP`- zFhpbG=Du@Lc@d~QI(Hjq`O*lmt~qF&`3T{GixJ@#b>)M9s)3Me-nT~poWMJl{ojq#YZY0h$bJsc;fM`H>#K7415@PNl>dW@gVyW z9x(_ckzeC4tsqJVUer%Lf)UG>JgSb!a2>a3iO`0+){+1+zsK=f4hhCpAtcss{-m|GpDLw zYNvWo1y=o`L|XHcWxb0_fO5}K5pka9!~2h@3Q0qHY`LLS-IBW$Pm~JPdT%w-JQ#S> zj|o(wm?#X_RV~tvCvJNjk_mHvLLgW9o=vCTd8fDzYUKH3e_gdM$)%(QuJfDOtH6L^ zP5mX$IN159f4@!>%G9;ito}P6XjT*xK_I25^4ow?VmIDP%(!qxm}uBRn+rArtM?gX zNS$f@Jmmw``BLJL=%f^|hv|y?5K0UiNX~}i0xt9y-BO@gRhuN0CMb{h7MT?iYelFJ zJAR`C{g^+{L!89lCW55l9k>Sh(x22Mx7cIqRrdgof8&GvDKDGM)gqHZ1Sq7??Cyc( zrUGPjnKF>nPG-Bl=12xKt{#|Kxmd(Bcv(@@%R!&$r^<=aT;AQv3s2?os)`yPsb1jq z1bz6`ZW#T9(?{oAYU~yrcz`O4i^vl68!j99)&sPdBs+v#7k9p<5gm#eJL5utoSqEl zv=G22fBd9;u1;Yx-f&tyuan>yh72=rJW#%*bYhQT{G5yCqKPjGn9qllB0Ux!5KWwR zCsM2;rHFqVc+mo#FDQ{5^ME%0Q@rAG-p7G`d)|M=+bR!fDN(mPv|fBcks1AL=6=N~ z;55N`u{(Z^H-)lNNV{d8aAxc;_}Mz}1s;BbGn)> f{i#U2?dR0026e z000+ooVrmw0000dkx?roj`pZP00001VoOIv0Eh)0NB{r;2XskIMF-{q4F)3v;O_Z5 zk%=FFTS-JgR7l6|)V*)pMic;W@&-dAPZmP~^+26TQG*tTLY7RFo@}oobXCU)Mm2R2 zVU`+2BZ1#uAb&xVJ$t7NMS=E@>V5Fzq|^cmX92v?md5*2%DB!W54nUY;jsKb;q}CUIW^Dl0n?l!b1JsuN@le>E&V|n|UsnCv zMn%%AgStqQO#QWGfFQVmKnA#~64ciJ<2P0iPUpgRllq=^+w3$Ezmadcn!q}bH!Qfn zfqOQ*iyf6jWnaQZctrwU`g~I#ZEbkdjN9)IFAz)8ExKw zRCYFZBBMUeTwcIU&d+aAFCf(R+dXl`iX0J<8ult;50Yz$C)Wu;e=jq7wbtImA|sIk zCj1^CU)*9T_k{Vjw#Di_v6mA_$PQ^@xTx3}01SVN7Jq;i)z#4m$fj=u4D?m+EgT9Q55YR%;lwYYBK{N)tVvzYd2bxZ3l$G^0+?$9jMM-T^4*e)aI#ybP+KP;@40+A&BgeC{edf% zF8^^m9{eie?^Vg>wN=T~3~I$HzC{L224(#ci9&|ZgXy6wb`ZU6b>XFjSg9=8e1*!p zM=ndImRto?Zy*=ra+vQBUEZ7*ZkNiGndyeK$oLO#T5Q#DO7T$}OSNXND2iygio`{g zs9)k%c(5z6J%DVF=c2~kKeVEMU1UfXi~d8gtx_sR($P-sk=12v=;g%=#+Y7k=aC9i z4-ZZ^8IZMKw{%4!zMPHwVr?;<5tf-U*<$_a+v|M0ZesPf%J$ANCLlkrLY|^&gJ+-J z?w?Jc=W9nz0P>gD|J?RF+MYQ9+eBH&>(@xx;Ki7Y$IWnB*>3KPKNZ`5Km4{|+xCqK zE{0x4!t}r`DJ!ypv7TcyHw?}5|Jd@8Pb~DC!%v$vBw55Vv!F+|e+oy76PC9ek{A9{ zCZlM?%n815c+%CX()3ApNatYi|FsJEkUpI9^V{CvpY%7{{sji>CowxI-~<2w03~!q zSaf7zbY(hYa%Ew3WdJf+FfuYNFflDLGE_1$Ix{soFf%JKI65#e|BWx(0000bbVXQn zWMOn=I&E)cX=ZrP{v6-%jGO0!a0r|J9g~Yv17-MD~RYV{ZB*Th?(rmTK}g(DJ2IC zD4QPjZ@zJwep{Dh;R%404?V!w2IOO_Qvp*9ItF-Gw#s z>8P)E$ypkp*zGh+rvrXn8|Jc2SzxL=9WW>$tD@5y3^Y)6*w>MT8JO@!RU!E=jijb{Fg-ynpI2O6W@m4OpSk z24Nl2Zua}v0)X*#_^QuClq1G>k@4#!uv9t#`h9c;*d`ZbK)KS&fMKvV2+qNjtDa#o zGY>XF;^??<`V$9-Rh7wr^UKme86eP&zv_X5x&q+sTj)Bt^b7^uP@q;PsBIBkP1!W5~lP30000l*!(QU)>&pI&k(W(LYqxuV*u+k`dd9P! zE{-7{$KOsq=yyaxz+q+!|AH-^=UIi$zfIUv7Cq@-!!iB~@)u$czvo^%HBof&#qN{m z63z1^pBd^LzM-mD*y;U-@#^(IuRm={zAE`Y^@@gdfYM|BzY~_#osuaOaM@tA_Wptu zF1f3xY%uz5mwbN7Yolenvv$k=sg-RsFQY&2Ht<7(vGb zrGjqznaAB9@4fx~!-*%pHzY4AE)!Fl>}{v#`Bm14qC44 zAJqzGpW~hywrerx#LY}ve^fu~HC#4$+BCu8^XugY3RE(_)iajbM*c}V8C&h3K@ zf{HP{6Q{4+AeX0M@L(pxIhFvCg3U(e_Cga{LJP`VP3~z0JIZbKm_MI$M`}FxvA4IU z3fYNXV4C(q6IZu{!6U){t{AiX8P-szzA0@ag8WRNi0dVN-jzTQVd20Mn<{@ zhPsAEAx1`4#wJ#tCPvx@7FGrZMn#URQFP?yr(~v8V(NftaMu4R4%EQl>FVdQ&MBb@ E0NuwKHUIzs From 90089ecf51adddf0c8ca05463b39518bd9953716 Mon Sep 17 00:00:00 2001 From: Salem <65783283+u8-Salem@users.noreply.github.com> Date: Sat, 7 Sep 2024 16:13:22 +0200 Subject: [PATCH 07/37] add debug build target (#4817) * add debug build target * fix maybe uninitialized error * add option to undef NDEBUG * debug for agbcc * init instead of ignore to not break agbcc * make clean removes modern and agbcc artifacts. explicit use of -O0 again for NOOPT * automatically enable debug menu when building for debug * automatically enable debug menu when building for debug * automatically enable debug menu when building for debug * clean up previous mess omg * remove preproc around debug menus * automatically enable debug menu when building for debug * clean up previous mess omg * Apply suggestions from code review Co-authored-by: Bassoonian * Update Makefile * Update field_control_avatar.c * make debug print independent * remove unwanted changes * remove trailing endif --------- Co-authored-by: Bassoonian --- Makefile | 36 ++++++++++++++++++++++++++++----- data/scripts/debug.inc | 3 --- src/battle_ai_main.c | 4 +--- src/battle_main.c | 8 ++------ src/debug.c | 3 --- src/field_control_avatar.c | 15 +++++++------- src/librfu_rfu.c | 2 +- src/pokemon_sprite_visualizer.c | 3 --- src/pokemon_summary_screen.c | 4 +--- src/start_menu.c | 9 +++++---- 10 files changed, 48 insertions(+), 39 deletions(-) diff --git a/Makefile b/Makefile index 6f8951d378..52bfe1e93f 100644 --- a/Makefile +++ b/Makefile @@ -41,11 +41,16 @@ REVISION := 0 TEST ?= 0 ANALYZE ?= 0 UNUSED_ERROR ?= 0 +DEBUG ?= 0 ifeq (check,$(MAKECMDGOALS)) TEST := 1 endif +ifeq (debug,$(MAKECMDGOALS)) + DEBUG := 1 +endif + CPP := $(PREFIX)cpp ROM_NAME := pokeemerald.gba @@ -60,6 +65,7 @@ MAP = $(ROM:.gba=.map) SYM = $(ROM:.gba=.sym) TEST_OBJ_DIR_NAME := build/modern-test +DEBUG_OBJ_DIR_NAME := build/modern-debug TESTELF = $(ROM:.gba=-test.elf) HEADLESSELF = $(ROM:.gba=-test-headless.elf) @@ -86,7 +92,8 @@ TEST_BUILDDIR = $(OBJ_DIR)/$(TEST_SUBDIR) ASFLAGS := -mcpu=arm7tdmi --defsym MODERN=1 CC1 = $(shell $(PATH_ARMCC) --print-prog-name=cc1) -quiet -override CFLAGS += -mthumb -mthumb-interwork -O2 -mabi=apcs-gnu -mtune=arm7tdmi -march=armv4t -fno-toplevel-reorder -Wno-pointer-to-int-cast -std=gnu17 -Werror -Wall -Wno-strict-aliasing -Wno-attribute-alias -Woverride-init +override CFLAGS += -mthumb -mthumb-interwork -mabi=apcs-gnu -mtune=arm7tdmi -march=armv4t -fno-toplevel-reorder -Wno-pointer-to-int-cast -std=gnu17 -Werror -Wall -Wno-strict-aliasing -Wno-attribute-alias -Woverride-init + ifeq ($(ANALYZE),1) override CFLAGS += -fanalyzer endif @@ -101,6 +108,12 @@ OBJ_DIR := $(OBJ_DIR_NAME) LIBPATH := -L "$(dir $(shell $(PATH_ARMCC) -mthumb -print-file-name=libgcc.a))" -L "$(dir $(shell $(PATH_ARMCC) -mthumb -print-file-name=libnosys.a))" -L "$(dir $(shell $(PATH_ARMCC) -mthumb -print-file-name=libc.a))" LIB := $(LIBPATH) -lc -lnosys -lgcc -L../../libagbsyscall -lagbsyscall +ifeq ($(DEBUG),1) +override CFLAGS += -Og -g +else +override CFLAGS += -O2 +endif + ifeq ($(TESTELF),$(MAKECMDGOALS)) TEST := 1 endif @@ -108,6 +121,10 @@ endif ifeq ($(TEST),1) OBJ_DIR := $(TEST_OBJ_DIR_NAME) endif +ifeq ($(DEBUG),1) +OBJ_DIR := $(DEBUG_OBJ_DIR_NAME) +endif + CPPFLAGS := -iquote include -iquote $(GFLIB_SUBDIR) -Wno-trigraphs -DMODERN=1 -DTESTING=$(TEST) @@ -146,7 +163,7 @@ MAKEFLAGS += --no-print-directory # Secondary expansion is required for dependency variables in object rules. .SECONDEXPANSION: -.PHONY: all rom clean compare tidy tools check-tools mostlyclean clean-tools clean-check-tools $(TOOLDIRS) $(CHECKTOOLDIRS) libagbsyscall agbcc modern tidymodern tidynonmodern check history +.PHONY: all rom clean compare tidy tools check-tools mostlyclean clean-tools clean-check-tools $(TOOLDIRS) $(CHECKTOOLDIRS) libagbsyscall agbcc modern tidymodern tidynonmodern check history debug infoshell = $(foreach line, $(shell $1 | sed "s/ /__SPACE__/g"), $(info $(subst __SPACE__, ,$(line)))) @@ -154,7 +171,7 @@ infoshell = $(foreach line, $(shell $1 | sed "s/ /__SPACE__/g"), $(info $(subst # Disable dependency scanning for clean/tidy/tools # Use a separate minimal makefile for speed # Since we don't need to reload most of this makefile -ifeq (,$(filter-out all rom compare agbcc modern check libagbsyscall syms $(TESTELF),$(MAKECMDGOALS))) +ifeq (,$(filter-out all rom compare agbcc modern check libagbsyscall syms $(TESTELF) debug,$(MAKECMDGOALS))) $(call infoshell, $(MAKE) -f make_tools.mk) else NODEP ?= 1 @@ -246,7 +263,7 @@ clean-tools: clean-check-tools: @$(foreach tooldir,$(CHECKTOOLDIRS),$(MAKE) clean -C $(tooldir);) -mostlyclean: tidynonmodern tidymodern tidycheck +mostlyclean: tidynonmodern tidymodern tidycheck tidydebug find sound -iname '*.bin' -exec rm {} + rm -f $(MID_SUBDIR)/*.s find . \( -iname '*.1bpp' -o -iname '*.4bpp' -o -iname '*.8bpp' -o -iname '*.gbapal' -o -iname '*.lz' -o -iname '*.rl' -o -iname '*.latfont' -o -iname '*.hwjpnfont' -o -iname '*.fwjpnfont' \) -exec rm {} + @@ -256,7 +273,7 @@ mostlyclean: tidynonmodern tidymodern tidycheck rm -f $(AUTO_GEN_TARGETS) @$(MAKE) clean -C libagbsyscall -tidy: tidymodern tidycheck +tidy: tidymodern tidycheck tidydebug tidymodern: rm -f $(ROM_NAME) $(ELF_NAME) $(MAP_NAME) @@ -266,6 +283,8 @@ tidycheck: rm -f $(TESTELF) $(HEADLESSELF) rm -rf $(TEST_OBJ_DIR_NAME) +tidydebug: + rm -rf $(DEBUG_OBJ_DIR_NAME) include graphics_file_rules.mk include map_data_rules.mk @@ -305,6 +324,11 @@ ifeq ($(DINFO),1) override CFLAGS += -g endif +ifeq ($(NOOPT),1) +override CFLAGS := $(filter-out -O1 -Og -O2,$(CFLAGS)) +override CFLAGS += -O0 +endif + # The dep rules have to be explicit or else missing files won't be reported. # As a side effect, they're evaluated immediately instead of when the rule is invoked. # It doesn't look like $(shell) can be deferred so there might not be a better way. @@ -443,6 +467,8 @@ agbcc: modern: all +debug: all + LD_SCRIPT_TEST := ld_script_test.ld $(OBJ_DIR)/ld_script_test.ld: $(LD_SCRIPT_TEST) $(LD_SCRIPT_DEPS) diff --git a/data/scripts/debug.inc b/data/scripts/debug.inc index 12dc693fd0..4851c87c40 100644 --- a/data/scripts/debug.inc +++ b/data/scripts/debug.inc @@ -1,4 +1,3 @@ -.if DEBUG_OVERWORLD_MENU == TRUE Debug_MessageEnd: waitmessage waitbuttonpress @@ -448,5 +447,3 @@ Debug_EventScript_EWRAMCounters:: Debug_EventScript_EWRAMCounters_Text:: .string "Follower Steps: {STR_VAR_1}.\n" .string "Fishing Chain: {STR_VAR_2}.$" - -.endif diff --git a/src/battle_ai_main.c b/src/battle_ai_main.c index ffaa058a08..f554da437d 100644 --- a/src/battle_ai_main.c +++ b/src/battle_ai_main.c @@ -196,14 +196,12 @@ void BattleAI_SetupFlags(void) else AI_THINKING_STRUCT->aiFlags[B_POSITION_PLAYER_LEFT] = 0; // player has no AI -#if DEBUG_OVERWORLD_MENU == TRUE - if (gIsDebugBattle) + if (DEBUG_OVERWORLD_MENU && gIsDebugBattle) { AI_THINKING_STRUCT->aiFlags[B_POSITION_OPPONENT_LEFT] = gDebugAIFlags; AI_THINKING_STRUCT->aiFlags[B_POSITION_OPPONENT_RIGHT] = gDebugAIFlags; return; } -#endif if (IsWildMonSmart() && !(gBattleTypeFlags & (BATTLE_TYPE_LINK | BATTLE_TYPE_TRAINER))) { diff --git a/src/battle_main.c b/src/battle_main.c index 319c26bcfa..c77c325db2 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -517,9 +517,7 @@ static void CB2_InitBattleInternal(void) gBattle_BG3_X = 0; gBattle_BG3_Y = 0; -#if DEBUG_OVERWORLD_MENU == TRUE - if (!gIsDebugBattle) -#endif + if (!DEBUG_OVERWORLD_MENU || (DEBUG_OVERWORLD_MENU && !gIsDebugBattle)) { gBattleTerrain = BattleSetup_GetTerrainId(); } @@ -552,9 +550,7 @@ static void CB2_InitBattleInternal(void) else SetMainCallback2(CB2_HandleStartBattle); -#if DEBUG_OVERWORLD_MENU == TRUE - if (!gIsDebugBattle) -#endif + if (!DEBUG_OVERWORLD_MENU || (DEBUG_OVERWORLD_MENU && !gIsDebugBattle)) { if (!(gBattleTypeFlags & (BATTLE_TYPE_LINK | BATTLE_TYPE_RECORDED))) { diff --git a/src/debug.c b/src/debug.c index a2bf55d95a..a3978fbd40 100644 --- a/src/debug.c +++ b/src/debug.c @@ -68,7 +68,6 @@ #include "constants/weather.h" #include "save.h" -#if DEBUG_OVERWORLD_MENU == TRUE // ******************************* enum DebugMenu { @@ -5129,5 +5128,3 @@ static void DebugAction_Util_CheckEWRAMCounters(u8 taskId) { Debug_DestroyMenu_Full_Script(taskId, Debug_EventScript_EWRAMCounters); } - -#endif //DEBUG_OVERWORLD_MENU == TRUE diff --git a/src/field_control_avatar.c b/src/field_control_avatar.c index 582617d555..9452e1273e 100644 --- a/src/field_control_avatar.c +++ b/src/field_control_avatar.c @@ -135,13 +135,14 @@ void FieldGetPlayerInput(struct FieldInput *input, u16 newKeys, u16 heldKeys) else if (heldKeys & DPAD_RIGHT) input->dpadDirection = DIR_EAST; -#if DEBUG_OVERWORLD_MENU == TRUE && DEBUG_OVERWORLD_IN_MENU == FALSE - if ((heldKeys & DEBUG_OVERWORLD_HELD_KEYS) && input->DEBUG_OVERWORLD_TRIGGER_EVENT) + if(DEBUG_OVERWORLD_MENU && !DEBUG_OVERWORLD_IN_MENU) { - input->input_field_1_2 = TRUE; - input->DEBUG_OVERWORLD_TRIGGER_EVENT = FALSE; + if ((heldKeys & DEBUG_OVERWORLD_HELD_KEYS) && input->DEBUG_OVERWORLD_TRIGGER_EVENT) + { + input->input_field_1_2 = TRUE; + input->DEBUG_OVERWORLD_TRIGGER_EVENT = FALSE; + } } -#endif } int ProcessPlayerFieldInput(struct FieldInput *input) @@ -201,15 +202,13 @@ int ProcessPlayerFieldInput(struct FieldInput *input) if (input->pressedSelectButton && UseRegisteredKeyItemOnField() == TRUE) return TRUE; -#if DEBUG_OVERWORLD_MENU == TRUE && DEBUG_OVERWORLD_IN_MENU == FALSE - if (input->input_field_1_2) + if(input->input_field_1_2 && DEBUG_OVERWORLD_MENU && !DEBUG_OVERWORLD_IN_MENU) { PlaySE(SE_WIN_OPEN); FreezeObjectEvents(); Debug_ShowMainMenu(); return TRUE; } -#endif return FALSE; } diff --git a/src/librfu_rfu.c b/src/librfu_rfu.c index 152bb716e9..cd7cb6cc5a 100644 --- a/src/librfu_rfu.c +++ b/src/librfu_rfu.c @@ -762,7 +762,7 @@ static void rfu_CB_pollConnectParent(u8 reqCommand, u16 reqResult) u16 id; u8 slot; u8 bm_slot_flag, i; - struct RfuTgtData *target_p; + struct RfuTgtData *target_p = NULL; struct RfuTgtData target_local; if (reqResult == 0) diff --git a/src/pokemon_sprite_visualizer.c b/src/pokemon_sprite_visualizer.c index c83716aeda..a0b7ddabc2 100644 --- a/src/pokemon_sprite_visualizer.c +++ b/src/pokemon_sprite_visualizer.c @@ -41,7 +41,6 @@ #include "constants/items.h" #include "constants/event_objects.h" -#if DEBUG_POKEMON_SPRITE_VISUALIZER == TRUE extern const struct BattleBackground sBattleTerrainTable[]; extern const struct CompressedSpriteSheet gSpriteSheet_EnemyShadow; extern const struct SpriteTemplate gSpriteTemplate_EnemyShadow; @@ -1763,5 +1762,3 @@ static void Exit_PokemonSpriteVisualizer(u8 taskId) m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 0x100); } } - -#endif diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index a1ebc2b188..bf6ab45a2a 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -1640,15 +1640,13 @@ static void Task_HandleInput(u8 taskId) PlaySE(SE_SELECT); BeginCloseSummaryScreen(taskId); } - #if DEBUG_POKEMON_SPRITE_VISUALIZER == TRUE - else if (JOY_NEW(SELECT_BUTTON) && !gMain.inBattle) + else if (DEBUG_POKEMON_SPRITE_VISUALIZER && JOY_NEW(SELECT_BUTTON) && !gMain.inBattle) { sMonSummaryScreen->callback = CB2_Pokemon_Sprite_Visualizer; StopPokemonAnimations(); PlaySE(SE_SELECT); CloseSummaryScreen(taskId); } - #endif } } diff --git a/src/start_menu.c b/src/start_menu.c index 0525ccf70d..71ab87363c 100644 --- a/src/start_menu.c +++ b/src/start_menu.c @@ -784,10 +784,11 @@ static bool8 StartMenuDebugCallback(void) RemoveExtraStartMenuWindows(); HideStartMenuDebug(); // Hide start menu without enabling movement -#if DEBUG_OVERWORLD_MENU == TRUE - FreezeObjectEvents(); - Debug_ShowMainMenu(); -#endif + if (DEBUG_OVERWORLD_MENU) + { + FreezeObjectEvents(); + Debug_ShowMainMenu(); + } return TRUE; } From 8c3531ffc7049b351011a5ae5be120e1730fd049 Mon Sep 17 00:00:00 2001 From: SonikkuA-DatH <58025603+SonikkuA-DatH@users.noreply.github.com> Date: Sat, 7 Sep 2024 09:04:47 -0700 Subject: [PATCH 08/37] Grass/Water Pledge Swamp Animation + Sea of Fire animation tweak (#5325) --- data/battle_anim_scripts.s | 46 +++++++++++++++++- .../battle_anims/backgrounds/swampswizzle.bin | Bin 0 -> 2048 bytes .../battle_anims/backgrounds/swampswizzle.pal | 19 ++++++++ .../battle_anims/backgrounds/swampswizzle.png | Bin 0 -> 25120 bytes include/constants/battle_anim.h | 1 + include/graphics.h | 5 ++ src/data/battle_anim.h | 1 + src/graphics.c | 5 ++ 8 files changed, 75 insertions(+), 2 deletions(-) create mode 100644 graphics/battle_anims/backgrounds/swampswizzle.bin create mode 100644 graphics/battle_anims/backgrounds/swampswizzle.pal create mode 100644 graphics/battle_anims/backgrounds/swampswizzle.png diff --git a/data/battle_anim_scripts.s b/data/battle_anim_scripts.s index 622dd24f18..296de004ac 100644 --- a/data/battle_anim_scripts.s +++ b/data/battle_anim_scripts.s @@ -28312,10 +28312,19 @@ gBattleAnimGeneral_SeaOfFire:: monbg ANIM_DEF_PARTNER splitbgprio ANIM_TARGET playsewithpan SE_M_SACRED_FIRE2, SOUND_PAN_TARGET + fadetobg BG_FIRE + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 0, 11, RGB(21, 2, 0) + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_DEF_PARTNER, 2, 0, 11, RGB(21, 2, 0) call SeaOfFireTwisterDos delay 3 call SeaOfFireTwisterTres + createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 1, 0, 10, 1 + createvisualtask AnimTask_ShakeMon2, 2, ANIM_DEF_PARTNER, 1, 0, 10, 1 waitforvisualfinish + restorebg + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 11, 0, RGB(21, 2, 0) + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_DEF_PARTNER, 2, 11, 0, RGB(21, 2, 0) + waitbgfadein clearmonbg ANIM_DEF_PARTNER blendoff end @@ -28350,8 +28359,41 @@ SeaOfFireTwisterTres: delay 2 return -gBattleAnimGeneral_Swamp:: @ To do - goto gBattleAnimMove_Haze +gBattleAnimGeneral_Swamp:: + loadspritegfx ANIM_TAG_RAIN_DROPS + loadspritegfx ANIM_TAG_SMALL_BUBBLES + loadspritegfx ANIM_TAG_THOUGHT_BUBBLE + playsewithpan SE_M_RAIN_DANCE, SOUND_PAN_TARGET + createvisualtask AnimTask_BlendBattleAnimPal, 10, (F_PAL_BG | F_PAL_BATTLERS_2), 2, 0, 4, RGB_BLACK + waitforvisualfinish + createvisualtask AnimTask_CreateRaindrops, 2, 0, 3, 60 + createvisualtask AnimTask_CreateRaindrops, 2, 0, 3, 60 + createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_SMALL_BUBBLES, 0, 4, 4, RGB(12, 11, 31) + delay 1 + waitforvisualfinish + fadetobg BG_SWAMP + createvisualtask AnimTask_CreateRaindrops, 2, 0, 3, 60 + createvisualtask AnimTask_CreateRaindrops, 2, 0, 3, 60 + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 0, 11, RGB(11, 26, 10) + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_DEF_PARTNER, 2, 0, 11, RGB(11, 26, 10) + waitbgfadeout + delay 4 + createvisualtask AnimTask_CreateRaindrops, 2, 0, 3, 60 + createvisualtask AnimTask_CreateRaindrops, 2, 0, 3, 60 + createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 1, 0, 10, 1 + createvisualtask AnimTask_ShakeMon2, 2, ANIM_DEF_PARTNER, 1, 0, 10, 1 + loopsewithpan SE_M_CRABHAMMER, SOUND_PAN_TARGET, 20, 3 + waitforvisualfinish + delay 10 + restorebg + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 11, 0, RGB(11, 26, 10) + createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_DEF_PARTNER, 2, 11, 0, RGB(11, 26, 10) + waitbgfadein + createvisualtask AnimTask_BlendBattleAnimPal, 10, (F_PAL_BG | F_PAL_BATTLERS_2), 2, 4, 0, RGB_BLACK + waitforvisualfinish + clearmonbg ANIM_DEF_PARTNER + blendoff + end SnatchMoveTrySwapFromSubstitute: createvisualtask AnimTask_IsAttackerBehindSubstitute, 2 diff --git a/graphics/battle_anims/backgrounds/swampswizzle.bin b/graphics/battle_anims/backgrounds/swampswizzle.bin new file mode 100644 index 0000000000000000000000000000000000000000..54864dd530af53267a00c6702877b233370ac649 GIT binary patch literal 2048 zcmeIvReR6{6oB#3FmiPBzHD@lW^|73?pn}YBL*AYUCJ;>lT=XBPQn%x6qK|(0P%mt zH{fQ^d7g9kI~VT>Aq{CsM|v`lkxXQMV6qTOR|rlY1^#KC z;aQ&JdG@iN103WKhk1b)Il@t1;$@C;oD-bn6sLKGS9y)sd4o53EAVgg4)5|F?{kK; zoZ~zn@F5@ZF`w`$pYb^txX2fL$t5oH6<>3Ot9-+^TnqelZg7)Z+~zyJ=Lde|Cw}G^ ze&siQ=MVnmFaG8q{^bsLxkrd;OlvyRo8kWVQ_N^4Gn>UwvzpE9<}jzZ3^TWR%xgaL zTfl-Avam%gYB7sjLe!Fm2R_15mbQ##EoXTvSkX#Wwu)7)W~9}vVNGjU+d9^@o>A7f zfemeBW19rNsm*L|3tQUCXj|LHwzjjq9qec)JKM#scC))Z>}fB1+sD54v%doz82CXB zc8EhA=5S+-HO_cPIMPv$c8p^k=XfVL(Me8ric_8DbZ400OlJjtwsTB$uJcSX+4(MT vp^IGX5|_Hn<*sn0t6c3G*SgO2Zg8WU-0T*&2LAtssgqhDwLofthf&}^i@~Wi literal 0 HcmV?d00001 diff --git a/graphics/battle_anims/backgrounds/swampswizzle.pal b/graphics/battle_anims/backgrounds/swampswizzle.pal new file mode 100644 index 0000000000..68d0311f6b --- /dev/null +++ b/graphics/battle_anims/backgrounds/swampswizzle.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +255 0 0 +140 214 132 +115 181 132 +115 181 99 +90 148 90 +90 148 74 +74 115 41 +74 107 57 +57 82 24 +49 82 41 +66 74 33 +33 57 16 +41 49 16 +49 41 8 +16 24 0 +140 222 173 diff --git a/graphics/battle_anims/backgrounds/swampswizzle.png b/graphics/battle_anims/backgrounds/swampswizzle.png new file mode 100644 index 0000000000000000000000000000000000000000..9b4a88cf0a9b6443e0ba9450bf34004e484c775f GIT binary patch literal 25120 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 z Date: Sun, 8 Sep 2024 07:28:16 +0100 Subject: [PATCH 09/37] Fix some Pledge move combo issues (#5330) Fix Pledge moves looping, adds tests for pledge+incapacitation situations --- src/battle_script_commands.c | 6 +- test/battle/move_effect/pledge.c | 438 +++++++++++++++++++++++++++++++ 2 files changed, 442 insertions(+), 2 deletions(-) diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 3f483c9ea7..fb6ec724e0 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -16659,7 +16659,7 @@ void BS_SetPledge(void) u32 i = 0; u32 k = 0; - if (gBattleStruct->pledgeMove) + if (gBattleStruct->pledgeMove && !(gHitMarker & HITMARKER_UNABLE_TO_USE_MOVE)) { PrepareStringBattle(STRINGID_USEDMOVE, gBattlerAttacker); gHitMarker |= HITMARKER_ATTACKSTRING_PRINTED; @@ -16688,6 +16688,8 @@ void BS_SetPledge(void) else if ((gChosenActionByBattler[partner] == B_ACTION_USE_MOVE) && gBattleTypeFlags & BATTLE_TYPE_DOUBLE && IsBattlerAlive(partner) + && GetBattlerTurnOrderNum(gBattlerAttacker) < GetBattlerTurnOrderNum(partner) + && !(gHitMarker & HITMARKER_UNABLE_TO_USE_MOVE) && gCurrentMove != partnerMove && gMovesInfo[partnerMove].effect == EFFECT_PLEDGE) { @@ -16726,8 +16728,8 @@ void BS_SetPledge(void) } else { + gBattleStruct->pledgeMove = FALSE; gBattlescriptCurrInstr = cmd->jumpInstr; - } } diff --git a/test/battle/move_effect/pledge.c b/test/battle/move_effect/pledge.c index a1ed91cab6..f17e75dfd2 100644 --- a/test/battle/move_effect/pledge.c +++ b/test/battle/move_effect/pledge.c @@ -330,3 +330,441 @@ DOUBLE_BATTLE_TEST("Damage calculation: Combined pledge move") EXPECT_EQ(expectedDamage, dmg); } } + +DOUBLE_BATTLE_TEST("Pledge move combo fails if ally fails to act - Sleep Right") +{ + u32 speedPLeft, speedPRight, speedOLeft, speedORight; + PARAMETRIZE { speedPLeft = 4; speedPRight = 3; speedOLeft = 8; speedORight = 2; } + PARAMETRIZE { speedPLeft = 4; speedPRight = 3; speedOLeft = 8; speedORight = 5; } + PARAMETRIZE { speedPLeft = 4; speedPRight = 3; speedOLeft = 8; speedORight = 1; } + PARAMETRIZE { speedPLeft = 3; speedPRight = 4; speedOLeft = 8; speedORight = 2; } + PARAMETRIZE { speedPLeft = 3; speedPRight = 4; speedOLeft = 8; speedORight = 5; } + PARAMETRIZE { speedPLeft = 3; speedPRight = 4; speedOLeft = 8; speedORight = 1; } + PARAMETRIZE { speedPLeft = 40; speedPRight = 30; speedOLeft = 8; speedORight = 2; } + PARAMETRIZE { speedPLeft = 40; speedPRight = 30; speedOLeft = 8; speedORight = 5; } + PARAMETRIZE { speedPLeft = 40; speedPRight = 30; speedOLeft = 8; speedORight = 1; } + PARAMETRIZE { speedPLeft = 30; speedPRight = 40; speedOLeft = 8; speedORight = 2; } + PARAMETRIZE { speedPLeft = 30; speedPRight = 40; speedOLeft = 8; speedORight = 5; } + PARAMETRIZE { speedPLeft = 30; speedPRight = 40; speedOLeft = 8; speedORight = 1; } + GIVEN { + PLAYER(SPECIES_WOBBUFFET) { Speed(speedPLeft); } + PLAYER(SPECIES_WYNAUT) { Speed(speedPRight); Status1(STATUS1_SLEEP_TURN(2)); } + OPPONENT(SPECIES_WOBBUFFET) { Speed(speedOLeft); } + OPPONENT(SPECIES_WYNAUT) { Speed(speedORight); } + } WHEN { + TURN { MOVE(playerLeft, MOVE_FIRE_PLEDGE, target: opponentRight); MOVE(playerRight, MOVE_GRASS_PLEDGE, target: opponentRight); } + } SCENE { + if (speedPLeft < speedPRight) { + MESSAGE("Wynaut is fast asleep."); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerLeft); + } else { + NOT ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerLeft); + MESSAGE("Wynaut is fast asleep."); + } + NONE_OF { + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerRight); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_SEA_OF_FIRE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, playerRight); + } + } +} + +DOUBLE_BATTLE_TEST("Pledge move combo fails if ally fails to act - Sleep Left") +{ + u32 speedPLeft, speedPRight, speedOLeft, speedORight; + PARAMETRIZE { speedPLeft = 4; speedPRight = 3; speedOLeft = 8; speedORight = 2; } + PARAMETRIZE { speedPLeft = 4; speedPRight = 3; speedOLeft = 8; speedORight = 5; } + PARAMETRIZE { speedPLeft = 4; speedPRight = 3; speedOLeft = 8; speedORight = 1; } + PARAMETRIZE { speedPLeft = 3; speedPRight = 4; speedOLeft = 8; speedORight = 2; } + PARAMETRIZE { speedPLeft = 3; speedPRight = 4; speedOLeft = 8; speedORight = 5; } + PARAMETRIZE { speedPLeft = 3; speedPRight = 4; speedOLeft = 8; speedORight = 1; } + PARAMETRIZE { speedPLeft = 40; speedPRight = 30; speedOLeft = 8; speedORight = 2; } + PARAMETRIZE { speedPLeft = 40; speedPRight = 30; speedOLeft = 8; speedORight = 5; } + PARAMETRIZE { speedPLeft = 40; speedPRight = 30; speedOLeft = 8; speedORight = 1; } + PARAMETRIZE { speedPLeft = 30; speedPRight = 40; speedOLeft = 8; speedORight = 2; } + PARAMETRIZE { speedPLeft = 30; speedPRight = 40; speedOLeft = 8; speedORight = 5; } + PARAMETRIZE { speedPLeft = 30; speedPRight = 40; speedOLeft = 8; speedORight = 1; } + GIVEN { + PLAYER(SPECIES_WOBBUFFET) { Speed(speedPLeft); Status1(STATUS1_SLEEP_TURN(2)); } + PLAYER(SPECIES_WYNAUT) { Speed(speedPRight); } + OPPONENT(SPECIES_WOBBUFFET) { Speed(speedOLeft); } + OPPONENT(SPECIES_WYNAUT) { Speed(speedORight); } + } WHEN { + TURN { MOVE(playerRight, MOVE_FIRE_PLEDGE, target: opponentRight); MOVE(playerLeft, MOVE_GRASS_PLEDGE, target: opponentRight); } + } SCENE { + if (speedPRight < speedPLeft) { + MESSAGE("Wobbuffet is fast asleep."); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerRight); + } else { + NOT ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerRight); + MESSAGE("Wobbuffet is fast asleep."); + } + NONE_OF { + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerLeft); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_SEA_OF_FIRE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, playerLeft); + } + } +} + +DOUBLE_BATTLE_TEST("Pledge move combo fails if ally fails to act - Flinch Right") +{ + u32 speedPLeft, speedPRight, speedOLeft, speedORight; + PARAMETRIZE { speedPLeft = 4; speedPRight = 3; speedOLeft = 8; speedORight = 2; } + PARAMETRIZE { speedPLeft = 4; speedPRight = 3; speedOLeft = 8; speedORight = 5; } + PARAMETRIZE { speedPLeft = 4; speedPRight = 3; speedOLeft = 8; speedORight = 1; } + PARAMETRIZE { speedPLeft = 3; speedPRight = 4; speedOLeft = 8; speedORight = 2; } + PARAMETRIZE { speedPLeft = 3; speedPRight = 4; speedOLeft = 8; speedORight = 5; } + PARAMETRIZE { speedPLeft = 3; speedPRight = 4; speedOLeft = 8; speedORight = 1; } + GIVEN { + ASSUME(MoveHasAdditionalEffectWithChance(MOVE_FAKE_OUT, MOVE_EFFECT_FLINCH, 100)); + PLAYER(SPECIES_WOBBUFFET) { Speed(speedPLeft); } + PLAYER(SPECIES_WYNAUT) { Speed(speedPRight); } + OPPONENT(SPECIES_WOBBUFFET) { Speed(speedOLeft); } + OPPONENT(SPECIES_WYNAUT) { Speed(speedORight); } + } WHEN { + TURN { MOVE(opponentLeft, MOVE_FAKE_OUT, target: playerRight); MOVE(playerLeft, MOVE_FIRE_PLEDGE, target: opponentRight); MOVE(playerRight, MOVE_GRASS_PLEDGE, target: opponentRight); } + } SCENE { + if (speedPLeft < speedPRight) { + MESSAGE("Wynaut flinched!"); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerLeft); + } else { + NOT ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerLeft); + MESSAGE("Wynaut flinched!"); + } + NONE_OF { + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerRight); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_SEA_OF_FIRE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, playerRight); + } + } +} + +DOUBLE_BATTLE_TEST("Pledge move combo fails if ally fails to act - Flinch Left") +{ + u32 speedPLeft, speedPRight, speedOLeft, speedORight; + PARAMETRIZE { speedPLeft = 4; speedPRight = 3; speedOLeft = 8; speedORight = 2; } + PARAMETRIZE { speedPLeft = 4; speedPRight = 3; speedOLeft = 8; speedORight = 5; } + PARAMETRIZE { speedPLeft = 4; speedPRight = 3; speedOLeft = 8; speedORight = 1; } + PARAMETRIZE { speedPLeft = 3; speedPRight = 4; speedOLeft = 8; speedORight = 2; } + PARAMETRIZE { speedPLeft = 3; speedPRight = 4; speedOLeft = 8; speedORight = 5; } + PARAMETRIZE { speedPLeft = 3; speedPRight = 4; speedOLeft = 8; speedORight = 1; } + GIVEN { + ASSUME(MoveHasAdditionalEffectWithChance(MOVE_FAKE_OUT, MOVE_EFFECT_FLINCH, 100)); + PLAYER(SPECIES_WOBBUFFET) { Speed(speedPLeft); } + PLAYER(SPECIES_WYNAUT) { Speed(speedPRight); } + OPPONENT(SPECIES_WOBBUFFET) { Speed(speedOLeft); } + OPPONENT(SPECIES_WYNAUT) { Speed(speedORight); } + } WHEN { + TURN { MOVE(opponentLeft, MOVE_FAKE_OUT, target: playerLeft); MOVE(playerRight, MOVE_FIRE_PLEDGE, target: opponentRight); MOVE(playerLeft, MOVE_GRASS_PLEDGE, target: opponentRight); } + } SCENE { + if (speedPRight < speedPLeft) { + MESSAGE("Wobbuffet flinched!"); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerRight); + } else { + NOT ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerRight); + MESSAGE("Wobbuffet flinched!"); + } + NONE_OF { + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerLeft); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_SEA_OF_FIRE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, playerLeft); + } + } +} + +DOUBLE_BATTLE_TEST("Pledge move combo doesn't fail if any mon wakes up") +{ + u32 statusLeft, statusRight; + PARAMETRIZE { statusLeft = STATUS1_SLEEP_TURN(1); statusRight = 0; } + PARAMETRIZE { statusLeft = 0; statusRight = STATUS1_SLEEP_TURN(1); } + PARAMETRIZE { statusLeft = STATUS1_SLEEP_TURN(1); statusRight = STATUS1_SLEEP_TURN(1); } + GIVEN { + PLAYER(SPECIES_WOBBUFFET) { Speed(4); Status1(statusLeft); } + PLAYER(SPECIES_WYNAUT) { Speed(3); Status1(statusRight); } + OPPONENT(SPECIES_WOBBUFFET) { Speed(8); } + OPPONENT(SPECIES_WYNAUT) { Speed(2); } + } WHEN { + TURN { MOVE(playerLeft, MOVE_FIRE_PLEDGE, target: opponentRight); MOVE(playerRight, MOVE_GRASS_PLEDGE, target: opponentRight); } + } SCENE { + NONE_OF { + MESSAGE("Wobbuffet is fast asleep."); + MESSAGE("Wynaut is fast asleep."); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, playerRight); + } + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerRight); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_SEA_OF_FIRE, opponentRight); + } +} + +DOUBLE_BATTLE_TEST("Pledge move combo doesn't fail if any mon thaws out") +{ + u32 statusLeft, statusRight; + PARAMETRIZE { statusLeft = STATUS1_FREEZE; statusRight = 0; } + PARAMETRIZE { statusLeft = 0; statusRight = STATUS1_FREEZE; } + PARAMETRIZE { statusLeft = STATUS1_FREEZE; statusRight = STATUS1_FREEZE; } + GIVEN { + PLAYER(SPECIES_WOBBUFFET) { Speed(4); Status1(statusLeft); } + PLAYER(SPECIES_WYNAUT) { Speed(3); Status1(statusRight); } + OPPONENT(SPECIES_WOBBUFFET) { Speed(8); } + OPPONENT(SPECIES_WYNAUT) { Speed(2); } + } WHEN { + TURN { MOVE(playerLeft, MOVE_FIRE_PLEDGE, target: opponentRight, WITH_RNG(RNG_FROZEN, 1)); MOVE(playerRight, MOVE_GRASS_PLEDGE, target: opponentRight, WITH_RNG(RNG_FROZEN, 1)); } + } SCENE { + NONE_OF { + MESSAGE("Wobbuffet is frozen solid!"); + MESSAGE("Wynaut is frozen solid!"); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, playerRight); + } + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerRight); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_SEA_OF_FIRE, opponentRight); + } +} + +DOUBLE_BATTLE_TEST("Pledge move combo fails if ally fails to act - Sleep Both Left Wake Up") +{ + u32 speedLeft, speedRight; + PARAMETRIZE { speedLeft = 4; speedRight = 3; } + PARAMETRIZE { speedLeft = 3; speedRight = 4; } + GIVEN { + PLAYER(SPECIES_WOBBUFFET) { Speed(speedLeft); Status1(STATUS1_SLEEP_TURN(1)); } + PLAYER(SPECIES_WYNAUT) { Speed(speedRight); Status1(STATUS1_SLEEP_TURN(2)); } + OPPONENT(SPECIES_WOBBUFFET) { Speed(8); } + OPPONENT(SPECIES_WYNAUT) { Speed(2); } + } WHEN { + TURN { MOVE(playerLeft, MOVE_FIRE_PLEDGE, target: opponentRight); MOVE(playerRight, MOVE_GRASS_PLEDGE, target: opponentRight); } + } SCENE { + if (speedLeft < speedRight) { + MESSAGE("Wynaut is fast asleep."); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerLeft); + } else { + NOT ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerLeft); + MESSAGE("Wynaut is fast asleep."); + } + NONE_OF { + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerRight); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_SEA_OF_FIRE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, playerRight); + } + } +} + +DOUBLE_BATTLE_TEST("Pledge move combo fails if ally fails to act - Sleep Both Right Wake Up") +{ + u32 speedLeft, speedRight; + PARAMETRIZE { speedLeft = 4; speedRight = 3; } + PARAMETRIZE { speedLeft = 3; speedRight = 4; } + GIVEN { + PLAYER(SPECIES_WOBBUFFET) { Speed(speedLeft); Status1(STATUS1_SLEEP_TURN(2)); } + PLAYER(SPECIES_WYNAUT) { Speed(speedRight); Status1(STATUS1_SLEEP_TURN(1)); } + OPPONENT(SPECIES_WOBBUFFET) { Speed(8); } + OPPONENT(SPECIES_WYNAUT) { Speed(2); } + } WHEN { + TURN { MOVE(playerLeft, MOVE_FIRE_PLEDGE, target: opponentRight); MOVE(playerRight, MOVE_GRASS_PLEDGE, target: opponentRight); } + } SCENE { + if (speedRight < speedLeft) { + MESSAGE("Wobbuffet is fast asleep."); + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, playerRight); + } else { + NOT ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, playerRight); + MESSAGE("Wobbuffet is fast asleep."); + } + NONE_OF { + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerRight); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_SEA_OF_FIRE, opponentRight); + } + } +} + +DOUBLE_BATTLE_TEST("Pledge move combo fails if ally fails to act - Sleep Both Left Faster") +{ + u32 status1; + PARAMETRIZE { status1 = STATUS1_SLEEP_TURN(2); } + PARAMETRIZE { status1 = STATUS1_SLEEP_TURN(3); } + PARAMETRIZE { status1 = STATUS1_SLEEP_TURN(4); } + GIVEN { + PLAYER(SPECIES_WOBBUFFET) { Speed(4); Status1(status1); } + PLAYER(SPECIES_WYNAUT) { Speed(3); Status1(status1); } + OPPONENT(SPECIES_WOBBUFFET) { Speed(8); } + OPPONENT(SPECIES_WYNAUT) { Speed(2); } + } WHEN { + TURN { MOVE(playerLeft, MOVE_FIRE_PLEDGE, target: opponentRight); MOVE(playerRight, MOVE_GRASS_PLEDGE, target: opponentRight); } + } SCENE { + MESSAGE("Wobbuffet is fast asleep."); + MESSAGE("Wynaut is fast asleep."); + NONE_OF { + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerRight); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_SEA_OF_FIRE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, playerRight); + HP_BAR(opponentRight); + } + } +} + +DOUBLE_BATTLE_TEST("Pledge move combo fails if ally fails to act - Sleep Both Right Faster") +{ + u32 status1; + PARAMETRIZE { status1 = STATUS1_SLEEP_TURN(2); } + PARAMETRIZE { status1 = STATUS1_SLEEP_TURN(3); } + PARAMETRIZE { status1 = STATUS1_SLEEP_TURN(4); } + GIVEN { + PLAYER(SPECIES_WOBBUFFET) { Speed(3); Status1(status1); } + PLAYER(SPECIES_WYNAUT) { Speed(4); Status1(status1); } + OPPONENT(SPECIES_WOBBUFFET) { Speed(8); } + OPPONENT(SPECIES_WYNAUT) { Speed(2); } + } WHEN { + TURN { MOVE(playerLeft, MOVE_FIRE_PLEDGE, target: opponentRight); MOVE(playerRight, MOVE_GRASS_PLEDGE, target: opponentRight); } + } SCENE { + MESSAGE("Wynaut is fast asleep."); + MESSAGE("Wobbuffet is fast asleep."); + NONE_OF { + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerRight); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_SEA_OF_FIRE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, playerRight); + HP_BAR(opponentRight); + } + } +} + +DOUBLE_BATTLE_TEST("Pledge move combo fails if ally fails to act - Frozen Both Left Faster") +{ + GIVEN { + PLAYER(SPECIES_WOBBUFFET) { Speed(4); Status1(STATUS1_FREEZE); } + PLAYER(SPECIES_WYNAUT) { Speed(3); Status1(STATUS1_FREEZE); } + OPPONENT(SPECIES_WOBBUFFET) { Speed(8); } + OPPONENT(SPECIES_WYNAUT) { Speed(2); } + } WHEN { + TURN { MOVE(playerLeft, MOVE_FIRE_PLEDGE, target: opponentRight, WITH_RNG(RNG_FROZEN, 0)); MOVE(playerRight, MOVE_GRASS_PLEDGE, target: opponentRight, WITH_RNG(RNG_FROZEN, 0)); } + } SCENE { + MESSAGE("Wobbuffet is frozen solid!"); + MESSAGE("Wynaut is frozen solid!"); + NONE_OF { + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerRight); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_SEA_OF_FIRE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, playerRight); + HP_BAR(opponentRight); + } + } +} + +DOUBLE_BATTLE_TEST("Pledge move combo fails if ally fails to act - Frozen Both Right Faster") +{ + GIVEN { + PLAYER(SPECIES_WOBBUFFET) { Speed(3); Status1(STATUS1_FREEZE); } + PLAYER(SPECIES_WYNAUT) { Speed(4); Status1(STATUS1_FREEZE); } + OPPONENT(SPECIES_WOBBUFFET) { Speed(8); } + OPPONENT(SPECIES_WYNAUT) { Speed(2); } + } WHEN { + TURN { MOVE(playerLeft, MOVE_FIRE_PLEDGE, target: opponentRight, WITH_RNG(RNG_FROZEN, 0)); MOVE(playerRight, MOVE_GRASS_PLEDGE, target: opponentRight, WITH_RNG(RNG_FROZEN, 0)); } + } SCENE { + MESSAGE("Wynaut is frozen solid!"); + MESSAGE("Wobbuffet is frozen solid!"); + NONE_OF { + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerRight); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_SEA_OF_FIRE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, playerRight); + HP_BAR(opponentRight); + } + } +} + +DOUBLE_BATTLE_TEST("Pledge move combo fails if ally fails to act - Paralyzed Both Left Faster") +{ + GIVEN { + PLAYER(SPECIES_WOBBUFFET) { Speed(40); Status1(STATUS1_PARALYSIS); } + PLAYER(SPECIES_WYNAUT) { Speed(30); Status1(STATUS1_PARALYSIS); } + OPPONENT(SPECIES_WOBBUFFET) { Speed(80); } + OPPONENT(SPECIES_WYNAUT) { Speed(2); } + } WHEN { + TURN { MOVE(playerLeft, MOVE_FIRE_PLEDGE, target: opponentRight, WITH_RNG(RNG_PARALYSIS, 0)); MOVE(playerRight, MOVE_GRASS_PLEDGE, target: opponentRight, WITH_RNG(RNG_PARALYSIS, 0)); } + } SCENE { + MESSAGE("Wobbuffet is paralyzed! It can't move!"); + MESSAGE("Wynaut is paralyzed! It can't move!"); + NONE_OF { + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerRight); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_SEA_OF_FIRE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, playerRight); + HP_BAR(opponentRight); + } + } +} + +DOUBLE_BATTLE_TEST("Pledge move combo fails if ally fails to act - Paralyzed Both Right Faster") +{ + GIVEN { + PLAYER(SPECIES_WOBBUFFET) { Speed(30); Status1(STATUS1_PARALYSIS); } + PLAYER(SPECIES_WYNAUT) { Speed(40); Status1(STATUS1_PARALYSIS); } + OPPONENT(SPECIES_WOBBUFFET) { Speed(80); } + OPPONENT(SPECIES_WYNAUT) { Speed(2); } + } WHEN { + TURN { MOVE(playerLeft, MOVE_FIRE_PLEDGE, target: opponentRight, WITH_RNG(RNG_PARALYSIS, 0)); MOVE(playerRight, MOVE_GRASS_PLEDGE, target: opponentRight, WITH_RNG(RNG_PARALYSIS, 0)); } + } SCENE { + MESSAGE("Wynaut is paralyzed! It can't move!"); + MESSAGE("Wobbuffet is paralyzed! It can't move!"); + NONE_OF { + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerRight); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_SEA_OF_FIRE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, playerRight); + HP_BAR(opponentRight); + } + } +} + +DOUBLE_BATTLE_TEST("Pledge move combo fails if ally fails to act - Flinch Both Left Faster") +{ + GIVEN { + ASSUME(MoveHasAdditionalEffectWithChance(MOVE_FAKE_OUT, MOVE_EFFECT_FLINCH, 100)); + PLAYER(SPECIES_WOBBUFFET) { Speed(4); } + PLAYER(SPECIES_WYNAUT) { Speed(3); } + OPPONENT(SPECIES_WOBBUFFET) { Speed(8); } + OPPONENT(SPECIES_WYNAUT) { Speed(2); } + } WHEN { + TURN { MOVE(opponentLeft, MOVE_FAKE_OUT, target: playerLeft); MOVE(opponentRight, MOVE_FAKE_OUT, target: playerRight); MOVE(playerRight, MOVE_FIRE_PLEDGE, target: opponentRight); MOVE(playerLeft, MOVE_GRASS_PLEDGE, target: opponentRight); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_FAKE_OUT, opponentLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FAKE_OUT, opponentRight); + MESSAGE("Wobbuffet flinched!"); + MESSAGE("Wynaut flinched!"); + NONE_OF { + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerLeft); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_SEA_OF_FIRE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, playerLeft); + HP_BAR(opponentRight); + } + } +} + +DOUBLE_BATTLE_TEST("Pledge move combo fails if ally fails to act - Flinch Both Right Faster") +{ + GIVEN { + ASSUME(MoveHasAdditionalEffectWithChance(MOVE_FAKE_OUT, MOVE_EFFECT_FLINCH, 100)); + PLAYER(SPECIES_WOBBUFFET) { Speed(3); } + PLAYER(SPECIES_WYNAUT) { Speed(4); } + OPPONENT(SPECIES_WOBBUFFET) { Speed(8); } + OPPONENT(SPECIES_WYNAUT) { Speed(2); } + } WHEN { + TURN { MOVE(opponentLeft, MOVE_FAKE_OUT, target: playerLeft); MOVE(opponentRight, MOVE_FAKE_OUT, target: playerRight); MOVE(playerRight, MOVE_FIRE_PLEDGE, target: opponentRight); MOVE(playerLeft, MOVE_GRASS_PLEDGE, target: opponentRight); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_FAKE_OUT, opponentLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FAKE_OUT, opponentRight); + MESSAGE("Wynaut flinched!"); + MESSAGE("Wobbuffet flinched!"); + NONE_OF { + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerLeft); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_SEA_OF_FIRE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, playerLeft); + HP_BAR(opponentRight); + } + } +} From 03e87a7d62162e94eb3b857315e9f83f42e7b951 Mon Sep 17 00:00:00 2001 From: hedara90 <90hedara@gmail.com> Date: Sun, 8 Sep 2024 10:38:52 +0200 Subject: [PATCH 10/37] Pledge fail into opponent pledge loop fix (#5339) * Pledge fail into opponent pledge loop fix * Fixed excessively aggressive canceller * Move the Pledge bit clear to its proper place --------- Co-authored-by: Hedara --- src/battle_script_commands.c | 2 ++ test/battle/move_effect/pledge.c | 23 +++++++++++++++++++++++ 2 files changed, 25 insertions(+) diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index fb6ec724e0..13795ee61c 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -6438,6 +6438,8 @@ static void Cmd_moveend(void) gBattleStruct->poisonPuppeteerConfusion = FALSE; gBattleStruct->fickleBeamBoosted = FALSE; gBattleStruct->distortedTypeMatchups = 0; + if (gHitMarker & HITMARKER_UNABLE_TO_USE_MOVE) + gBattleStruct->pledgeMove = FALSE; if (GetActiveGimmick(gBattlerAttacker) == GIMMICK_Z_MOVE) SetActiveGimmick(gBattlerAttacker, GIMMICK_NONE); if (B_CHARGE <= GEN_8 || moveType == TYPE_ELECTRIC) diff --git a/test/battle/move_effect/pledge.c b/test/battle/move_effect/pledge.c index f17e75dfd2..32e9e070b4 100644 --- a/test/battle/move_effect/pledge.c +++ b/test/battle/move_effect/pledge.c @@ -768,3 +768,26 @@ DOUBLE_BATTLE_TEST("Pledge move combo fails if ally fails to act - Flinch Both R } } } + +DOUBLE_BATTLE_TEST("Pledge move combo doesn't trigger on opponent's Pledge move") +{ + GIVEN { + PLAYER(SPECIES_WOBBUFFET) { Speed(4); } + PLAYER(SPECIES_WYNAUT) { Speed(3); } + OPPONENT(SPECIES_WOBBUFFET) { Speed(8); } + OPPONENT(SPECIES_WYNAUT) { Speed(5); Status1(STATUS1_SLEEP_TURN(2)); } + } WHEN { + TURN { MOVE(opponentLeft, MOVE_FIRE_PLEDGE, target: playerLeft); + MOVE(opponentRight, MOVE_GRASS_PLEDGE, target: playerLeft); + MOVE(playerLeft, MOVE_GRASS_PLEDGE, target: opponentRight); } + } SCENE { + NONE_OF { + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, opponentLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerLeft); + } + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, playerLeft); + HP_BAR(opponentRight); + } +} From d6d2f2033de91545e699e423688a7c79ccf173ef Mon Sep 17 00:00:00 2001 From: PhallenTree <168426989+PhallenTree@users.noreply.github.com> Date: Sun, 8 Sep 2024 12:41:23 +0100 Subject: [PATCH 11/37] Fixes Pledge move combo timeout if frozen (#5340) Missing `HITMARKER_UNABLE_TO_USE_MOVE` in the frozen canceller --- src/battle_util.c | 2 +- test/battle/move_effect/pledge.c | 23 ++++++++++++++++++++++- 2 files changed, 23 insertions(+), 2 deletions(-) diff --git a/src/battle_util.c b/src/battle_util.c index 656607480b..afb7e474d5 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -3296,7 +3296,7 @@ u8 AtkCanceller_UnableToUseMove(u32 moveType) if (!RandomPercentage(RNG_FROZEN, 20)) { gBattlescriptCurrInstr = BattleScript_MoveUsedIsFrozen; - gHitMarker |= HITMARKER_NO_ATTACKSTRING; + gHitMarker |= (HITMARKER_NO_ATTACKSTRING | HITMARKER_UNABLE_TO_USE_MOVE); } else // unfreeze { diff --git a/test/battle/move_effect/pledge.c b/test/battle/move_effect/pledge.c index 32e9e070b4..96fcb94191 100644 --- a/test/battle/move_effect/pledge.c +++ b/test/battle/move_effect/pledge.c @@ -769,7 +769,7 @@ DOUBLE_BATTLE_TEST("Pledge move combo fails if ally fails to act - Flinch Both R } } -DOUBLE_BATTLE_TEST("Pledge move combo doesn't trigger on opponent's Pledge move") +DOUBLE_BATTLE_TEST("Pledge move combo doesn't trigger on opponent's Pledge move - Sleep") { GIVEN { PLAYER(SPECIES_WOBBUFFET) { Speed(4); } @@ -791,3 +791,24 @@ DOUBLE_BATTLE_TEST("Pledge move combo doesn't trigger on opponent's Pledge move" HP_BAR(opponentRight); } } + +DOUBLE_BATTLE_TEST("Pledge move combo doesn't trigger on opponent's Pledge move - Freeze") +{ + GIVEN { + PLAYER(SPECIES_WOBBUFFET) { Speed(4); } + PLAYER(SPECIES_WYNAUT) { Speed(3); } + OPPONENT(SPECIES_WOBBUFFET) { Speed(8); } + OPPONENT(SPECIES_WYNAUT) { Speed(5); Status1(STATUS1_FREEZE); } + } WHEN { + TURN { MOVE(opponentLeft, MOVE_FIRE_PLEDGE, target: playerLeft); MOVE(opponentRight, MOVE_GRASS_PLEDGE, target: playerLeft, WITH_RNG(RNG_FROZEN, 0)); MOVE(playerLeft, MOVE_GRASS_PLEDGE, target: opponentRight); } + } SCENE { + NONE_OF { + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, opponentLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerLeft); + } + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, playerLeft); + HP_BAR(opponentRight); + } +} From b8251e3a756f838f744910597fd84e1501414e70 Mon Sep 17 00:00:00 2001 From: hedara90 <90hedara@gmail.com> Date: Sun, 8 Sep 2024 16:17:18 +0200 Subject: [PATCH 12/37] Another Pledge fix, Powder this time (#5341) Co-authored-by: Hedara --- src/battle_util.c | 1 + test/battle/move_effect/pledge.c | 24 ++++++++++++++++++++++++ 2 files changed, 25 insertions(+) diff --git a/src/battle_util.c b/src/battle_util.c index afb7e474d5..c0ab04b5b7 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -3551,6 +3551,7 @@ u8 AtkCanceller_UnableToUseMove(u32 moveType) gProtectStructs[gBattlerAttacker].powderSelfDmg = TRUE; gBattleMoveDamage = GetNonDynamaxMaxHP(gBattlerAttacker) / 4; gBattlescriptCurrInstr = BattleScript_MoveUsedPowder; + gHitMarker |= HITMARKER_UNABLE_TO_USE_MOVE; effect = 1; } } diff --git a/test/battle/move_effect/pledge.c b/test/battle/move_effect/pledge.c index 96fcb94191..2220b74186 100644 --- a/test/battle/move_effect/pledge.c +++ b/test/battle/move_effect/pledge.c @@ -812,3 +812,27 @@ DOUBLE_BATTLE_TEST("Pledge move combo doesn't trigger on opponent's Pledge move HP_BAR(opponentRight); } } + +DOUBLE_BATTLE_TEST("Pledge move combo doesn't trigger on opponent's Pledge move - Powder") +{ + GIVEN { + PLAYER(SPECIES_WOBBUFFET); + PLAYER(SPECIES_WYNAUT); + OPPONENT(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WYNAUT); + } WHEN { + TURN { MOVE(playerLeft, MOVE_POWDER, target: opponentRight); + MOVE(opponentLeft, MOVE_GRASS_PLEDGE, target: playerLeft); + MOVE(opponentRight, MOVE_FIRE_PLEDGE, target: playerLeft); + MOVE(playerRight, MOVE_FIRE_PLEDGE, target: opponentLeft); } + } SCENE { + NONE_OF { + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, opponentLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerLeft); + } + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerRight); + HP_BAR(opponentLeft); + } +} From 6d020eb366269a7da5c37aa51b8e9be51d63a8a6 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Sun, 8 Sep 2024 14:14:05 -0300 Subject: [PATCH 13/37] Cleaned up duplicate dynamic type functions (#5338) * Cleaned up duplicated dynamic type functions * Small cleanup * Oops, last cleanup broke stuff * Alignment Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com> --------- Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com> --- include/battle_main.h | 1 + include/config/pokemon.h | 2 +- src/battle_controller_player.c | 15 +- src/battle_main.c | 279 ++++++++++++++++++++++----------- src/battle_script_commands.c | 2 +- src/pokemon.c | 172 +------------------- src/pokemon_summary_screen.c | 13 +- 7 files changed, 202 insertions(+), 282 deletions(-) diff --git a/include/battle_main.h b/include/battle_main.h index eb0af5aa77..7e3206c554 100644 --- a/include/battle_main.h +++ b/include/battle_main.h @@ -80,6 +80,7 @@ s32 GetWhichBattlerFaster(u32 battler1, u32 battler2, bool32 ignoreChosenMoves); void RunBattleScriptCommands_PopCallbacksStack(void); void RunBattleScriptCommands(void); void SpecialStatusesClear(void); +u32 GetDynamicMoveType(struct Pokemon *mon, u32 move, u32 battler, u8 *ateBoost); void SetTypeBeforeUsingMove(u32 move, u32 battlerAtk); bool32 IsWildMonSmart(void); u8 CreateNPCTrainerPartyFromTrainer(struct Pokemon *party, const struct Trainer *trainer, bool32 firstTrainer, u32 battleTypeFlags); diff --git a/include/config/pokemon.h b/include/config/pokemon.h index 89e72cec17..15db4881b5 100644 --- a/include/config/pokemon.h +++ b/include/config/pokemon.h @@ -51,7 +51,7 @@ #define P_TWO_FRAME_FRONT_SPRITES TRUE // In Pokémon Emerald, Pokémon front sprites always consist of two frames. This config can revert it to only use the first frame, as is the case in the other Gen 3 games. #define P_ONLY_OBTAINABLE_SHINIES FALSE // If TRUE, Pokémon encountered in the Battle Pyramid won't be shiny. #define P_NO_SHINIES_WITHOUT_POKEBALLS FALSE // If TRUE, Pokémon encountered when the player is out of Poké Balls won't be shiny -#define P_SHOW_DYNAMIC_TYPES FALSE // If TRUE, moves with dynamic type changes will be reflected as their current type in battle/summary screens. +#define P_SHOW_DYNAMIC_TYPES FALSE // If TRUE, all moves with dynamic type changes will be reflected as their current type in battle/summary screens instead of just select ones like in vanilla. // Learnset helper toggles #define P_LEARNSET_HELPER_TEACHABLE TRUE // If TRUE, teachable_learnsets.h will be populated by tools/learnset_helpers/teachable.py using the included JSON files based on available TMs and tutors. diff --git a/src/battle_controller_player.c b/src/battle_controller_player.c index 209a40e751..afff143266 100644 --- a/src/battle_controller_player.c +++ b/src/battle_controller_player.c @@ -1720,7 +1720,6 @@ static void MoveSelectionDisplayMoveType(u32 battler) { if (IsGimmickSelected(battler, GIMMICK_TERA) || GetActiveGimmick(battler) == GIMMICK_TERA) type = GetBattlerTeraType(battler); - end = StringCopy(txtPtr, gTypesInfo[type].name); } else if (moveInfo->moves[gMoveSelectionCursor[battler]] == MOVE_IVY_CUDGEL) { @@ -1730,32 +1729,24 @@ static void MoveSelectionDisplayMoveType(u32 battler) || speciesId == SPECIES_OGERPON_HEARTHFLAME_MASK || speciesId == SPECIES_OGERPON_HEARTHFLAME_MASK_TERA || speciesId == SPECIES_OGERPON_CORNERSTONE_MASK || speciesId == SPECIES_OGERPON_CORNERSTONE_MASK_TERA) type = gBattleMons[battler].types[1]; - end = StringCopy(txtPtr, gTypesInfo[type].name); } - // Max Guard is a Normal-type move else if (gMovesInfo[moveInfo->moves[gMoveSelectionCursor[battler]]].category == DAMAGE_CATEGORY_STATUS && (GetActiveGimmick(battler) == GIMMICK_DYNAMAX || IsGimmickSelected(battler, GIMMICK_DYNAMAX))) { - type = TYPE_NORMAL; - end = StringCopy(txtPtr, gTypesInfo[type].name); + type = TYPE_NORMAL; // Max Guard is always a Normal-type move } else if (moveInfo->moves[gMoveSelectionCursor[battler]] == MOVE_TERA_STARSTORM) { if (gBattleMons[battler].species == SPECIES_TERAPAGOS_STELLAR || (IsGimmickSelected(battler, GIMMICK_TERA) && gBattleMons[battler].species == SPECIES_TERAPAGOS_TERASTAL)) type = TYPE_STELLAR; - end = StringCopy(txtPtr, gTypesInfo[type].name); } - else if (P_SHOW_DYNAMIC_TYPES) + else if (P_SHOW_DYNAMIC_TYPES) // Non-vanilla changes to battle UI showing dynamic types { struct Pokemon *mon = &gPlayerParty[gBattlerPartyIndexes[battler]]; type = CheckDynamicMoveType(mon, moveInfo->moves[gMoveSelectionCursor[battler]], battler); - end = StringCopy(txtPtr, gTypesInfo[type].name); - } - else - { - end = StringCopy(txtPtr, gTypesInfo[type].name); } + end = StringCopy(txtPtr, gTypesInfo[type].name); PrependFontIdToFit(txtPtr, end, FONT_NORMAL, WindowWidthPx(B_WIN_MOVE_TYPE) - 25); BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MOVE_TYPE); diff --git a/src/battle_main.c b/src/battle_main.c index c77c325db2..a4c55ce9b5 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -23,6 +23,7 @@ #include "dma3.h" #include "event_data.h" #include "evolution_scene.h" +#include "field_weather.h" #include "graphics.h" #include "gpu_regs.h" #include "international_string_util.h" @@ -67,6 +68,7 @@ #include "constants/rgb.h" #include "constants/songs.h" #include "constants/trainers.h" +#include "constants/weather.h" #include "cable_club.h" extern const struct BgTemplate gBattleBgTemplates[]; @@ -5774,151 +5776,246 @@ bool32 TrySetAteType(u32 move, u32 battlerAtk, u32 attackerAbility) return FALSE; } -void SetTypeBeforeUsingMove(u32 move, u32 battlerAtk) +// Returns TYPE_NONE if type doesn't change. +// NULL can be passed to ateBoost to avoid applying ate-ability boosts when opening the summary screen in-battle. +u32 GetDynamicMoveType(struct Pokemon *mon, u32 move, u32 battler, u8 *ateBoost) { - u32 moveType, attackerAbility; - u16 holdEffect = GetBattlerHoldEffect(battlerAtk, TRUE); + u32 moveType = gMovesInfo[move].type; + u32 moveEffect = gMovesInfo[move].effect; + u32 species, heldItem, holdEffect, ability, type1, type2, type3; if (move == MOVE_STRUGGLE) - return; + return TYPE_NORMAL; - gBattleStruct->dynamicMoveType = 0; - gBattleStruct->ateBoost[battlerAtk] = 0; - gSpecialStatuses[battlerAtk].gemBoost = FALSE; - - if (gMovesInfo[move].effect == EFFECT_WEATHER_BALL) + if (gMain.inBattle) { - if (WEATHER_HAS_EFFECT) + species = gBattleMons[battler].species; + heldItem = gBattleMons[battler].item; + holdEffect = GetBattlerHoldEffect(battler, TRUE); + ability = GetBattlerAbility(battler); + type1 = gBattleMons[battler].types[0]; + type2 = gBattleMons[battler].types[1]; + type3 = gBattleMons[battler].types[2]; + } + else + { + species = GetMonData(mon, MON_DATA_SPECIES); + heldItem = GetMonData(mon, MON_DATA_HELD_ITEM, 0); + holdEffect = ItemId_GetHoldEffect(heldItem); + ability = GetMonAbility(mon); + type1 = gSpeciesInfo[species].types[0]; + type2 = gSpeciesInfo[species].types[1]; + type3 = TYPE_MYSTERY; + } + + if (moveEffect == EFFECT_WEATHER_BALL) + { + if (gMain.inBattle && WEATHER_HAS_EFFECT) { if (gBattleWeather & B_WEATHER_RAIN && holdEffect != HOLD_EFFECT_UTILITY_UMBRELLA) - gBattleStruct->dynamicMoveType = TYPE_WATER | F_DYNAMIC_TYPE_SET; + return TYPE_WATER; else if (gBattleWeather & B_WEATHER_SANDSTORM) - gBattleStruct->dynamicMoveType = TYPE_ROCK | F_DYNAMIC_TYPE_SET; + return TYPE_ROCK; else if (gBattleWeather & B_WEATHER_SUN && holdEffect != HOLD_EFFECT_UTILITY_UMBRELLA) - gBattleStruct->dynamicMoveType = TYPE_FIRE | F_DYNAMIC_TYPE_SET; - else if (gBattleWeather & (B_WEATHER_HAIL | B_WEATHER_SNOW)) - gBattleStruct->dynamicMoveType = TYPE_ICE | F_DYNAMIC_TYPE_SET; + return TYPE_FIRE; + else if (gBattleWeather & (B_WEATHER_SNOW | B_WEATHER_HAIL)) + return TYPE_ICE; else - gBattleStruct->dynamicMoveType = TYPE_NORMAL | F_DYNAMIC_TYPE_SET; + return moveType; + } + else + { + switch (gWeatherPtr->currWeather) + { + case WEATHER_DROUGHT: + if (holdEffect != HOLD_EFFECT_UTILITY_UMBRELLA) + return TYPE_FIRE; + break; + case WEATHER_RAIN: + case WEATHER_RAIN_THUNDERSTORM: + if (holdEffect != HOLD_EFFECT_UTILITY_UMBRELLA) + return TYPE_WATER; + break; + case WEATHER_SNOW: + return TYPE_ICE; + case WEATHER_SANDSTORM: + return TYPE_ROCK; + } + return moveType; } } - else if (gMovesInfo[move].effect == EFFECT_HIDDEN_POWER) + else if (moveEffect == EFFECT_HIDDEN_POWER) { - u8 typeBits = ((gBattleMons[battlerAtk].hpIV & 1) << 0) - | ((gBattleMons[battlerAtk].attackIV & 1) << 1) - | ((gBattleMons[battlerAtk].defenseIV & 1) << 2) - | ((gBattleMons[battlerAtk].speedIV & 1) << 3) - | ((gBattleMons[battlerAtk].spAttackIV & 1) << 4) - | ((gBattleMons[battlerAtk].spDefenseIV & 1) << 5); + u8 typeBits; + if (gMain.inBattle) + { + typeBits = ((gBattleMons[battler].hpIV & 1) << 0) + | ((gBattleMons[battler].attackIV & 1) << 1) + | ((gBattleMons[battler].defenseIV & 1) << 2) + | ((gBattleMons[battler].speedIV & 1) << 3) + | ((gBattleMons[battler].spAttackIV & 1) << 4) + | ((gBattleMons[battler].spDefenseIV & 1) << 5); + } + else + { + typeBits = ((GetMonData(mon, MON_DATA_HP_IV) & 1) << 0) + | ((GetMonData(mon, MON_DATA_ATK_IV) & 1) << 1) + | ((GetMonData(mon, MON_DATA_DEF_IV) & 1) << 2) + | ((GetMonData(mon, MON_DATA_SPEED_IV) & 1) << 3) + | ((GetMonData(mon, MON_DATA_SPATK_IV) & 1) << 4) + | ((GetMonData(mon, MON_DATA_SPDEF_IV) & 1) << 5); + } // Subtract 6 instead of 1 below because 5 types are excluded (TYPE_NONE, TYPE_NORMAL, TYPE_MYSTERY, TYPE_FAIRY and TYPE_STELLAR) // The final + 2 skips past TYPE_NONE and Normal. - gBattleStruct->dynamicMoveType = ((NUMBER_OF_MON_TYPES - 6) * typeBits) / 63 + 2; - if (gBattleStruct->dynamicMoveType >= TYPE_MYSTERY) - gBattleStruct->dynamicMoveType++; - gBattleStruct->dynamicMoveType |= F_DYNAMIC_TYPE_IGNORE_PHYSICALITY | F_DYNAMIC_TYPE_SET; + moveType = ((NUMBER_OF_MON_TYPES - 6) * typeBits) / 63 + 2; + if (moveType >= TYPE_MYSTERY) + moveType++; + return (moveType | F_DYNAMIC_TYPE_IGNORE_PHYSICALITY); } - else if (gMovesInfo[move].effect == EFFECT_CHANGE_TYPE_ON_ITEM && holdEffect == gMovesInfo[move].argument) + else if (moveEffect == EFFECT_CHANGE_TYPE_ON_ITEM && holdEffect == gMovesInfo[move].argument) { - gBattleStruct->dynamicMoveType = ItemId_GetSecondaryId(gBattleMons[battlerAtk].item) | F_DYNAMIC_TYPE_SET; + return ItemId_GetSecondaryId(heldItem); } - else if (gMovesInfo[move].effect == EFFECT_REVELATION_DANCE && GetActiveGimmick(battlerAtk) != GIMMICK_Z_MOVE) + else if (moveEffect == EFFECT_REVELATION_DANCE && GetActiveGimmick(battler) != GIMMICK_Z_MOVE) { - if (GetActiveGimmick(battlerAtk) == GIMMICK_TERA && GetBattlerTeraType(battlerAtk) != TYPE_STELLAR) - gBattleStruct->dynamicMoveType = GetBattlerTeraType(battlerAtk); - else if (gBattleMons[battlerAtk].types[0] != TYPE_MYSTERY && !(gBattleResources->flags->flags[battlerAtk] & RESOURCE_FLAG_ROOST && gBattleMons[battlerAtk].types[0] == TYPE_FLYING)) - gBattleStruct->dynamicMoveType = gBattleMons[battlerAtk].types[0] | F_DYNAMIC_TYPE_SET; - else if (gBattleMons[battlerAtk].types[1] != TYPE_MYSTERY && !(gBattleResources->flags->flags[battlerAtk] & RESOURCE_FLAG_ROOST && gBattleMons[battlerAtk].types[1] == TYPE_FLYING)) - gBattleStruct->dynamicMoveType = gBattleMons[battlerAtk].types[1] | F_DYNAMIC_TYPE_SET; - else if (gBattleResources->flags->flags[battlerAtk] & RESOURCE_FLAG_ROOST) - gBattleStruct->dynamicMoveType = (B_ROOST_PURE_FLYING >= GEN_5 ? TYPE_NORMAL : TYPE_MYSTERY) | F_DYNAMIC_TYPE_SET; - else if (gBattleMons[battlerAtk].types[2] != TYPE_MYSTERY) - gBattleStruct->dynamicMoveType = gBattleMons[battlerAtk].types[2] | F_DYNAMIC_TYPE_SET; + u8 teraType; + if (GetActiveGimmick(battler) == GIMMICK_TERA && ((teraType = GetMonData(mon, MON_DATA_TERA_TYPE)) != TYPE_STELLAR)) + return teraType; + else if (type1 != TYPE_MYSTERY && !(gBattleResources->flags->flags[battler] & RESOURCE_FLAG_ROOST && type1 == TYPE_FLYING)) + return type1; + else if (type2 != TYPE_MYSTERY && !(gBattleResources->flags->flags[battler] & RESOURCE_FLAG_ROOST && type2 == TYPE_FLYING)) + return type2; + else if (gBattleResources->flags->flags[battler] & RESOURCE_FLAG_ROOST) + return (B_ROOST_PURE_FLYING >= GEN_5 ? TYPE_NORMAL : TYPE_MYSTERY); + else if (type3 != TYPE_MYSTERY) + return type3; else - gBattleStruct->dynamicMoveType = TYPE_MYSTERY | F_DYNAMIC_TYPE_SET; + return TYPE_MYSTERY; } - else if (gMovesInfo[move].effect == EFFECT_RAGING_BULL - && (gBattleMons[battlerAtk].species == SPECIES_TAUROS_PALDEAN_COMBAT_BREED - || gBattleMons[battlerAtk].species == SPECIES_TAUROS_PALDEAN_BLAZE_BREED - || gBattleMons[battlerAtk].species == SPECIES_TAUROS_PALDEAN_AQUA_BREED)) + else if (moveEffect == EFFECT_RAGING_BULL + && (species == SPECIES_TAUROS_PALDEAN_COMBAT_BREED + || species == SPECIES_TAUROS_PALDEAN_BLAZE_BREED + || species == SPECIES_TAUROS_PALDEAN_AQUA_BREED)) { - gBattleStruct->dynamicMoveType = gBattleMons[battlerAtk].types[1] | F_DYNAMIC_TYPE_SET; + return type2; } - else if (gMovesInfo[move].effect == EFFECT_IVY_CUDGEL - && (gBattleMons[battlerAtk].species == SPECIES_OGERPON_WELLSPRING_MASK || gBattleMons[battlerAtk].species == SPECIES_OGERPON_WELLSPRING_MASK_TERA - || gBattleMons[battlerAtk].species == SPECIES_OGERPON_HEARTHFLAME_MASK || gBattleMons[battlerAtk].species == SPECIES_OGERPON_HEARTHFLAME_MASK_TERA - || gBattleMons[battlerAtk].species == SPECIES_OGERPON_CORNERSTONE_MASK || gBattleMons[battlerAtk].species == SPECIES_OGERPON_CORNERSTONE_MASK_TERA )) + else if (moveEffect == EFFECT_IVY_CUDGEL + && (species == SPECIES_OGERPON_WELLSPRING_MASK || species == SPECIES_OGERPON_WELLSPRING_MASK_TERA + || species == SPECIES_OGERPON_HEARTHFLAME_MASK || species == SPECIES_OGERPON_HEARTHFLAME_MASK_TERA + || species == SPECIES_OGERPON_CORNERSTONE_MASK || species == SPECIES_OGERPON_CORNERSTONE_MASK_TERA)) { - gBattleStruct->dynamicMoveType = gBattleMons[battlerAtk].types[1] | F_DYNAMIC_TYPE_SET; + return type2; } - else if (gMovesInfo[move].effect == EFFECT_NATURAL_GIFT) + else if (moveEffect == EFFECT_NATURAL_GIFT) { - if (ItemId_GetPocket(gBattleMons[battlerAtk].item) == POCKET_BERRIES) - gBattleStruct->dynamicMoveType = gNaturalGiftTable[ITEM_TO_BERRY(gBattleMons[battlerAtk].item)].type; + if (ItemId_GetPocket(heldItem) == POCKET_BERRIES) + return gNaturalGiftTable[ITEM_TO_BERRY(heldItem)].type; + else + return moveType; } - else if (gMovesInfo[move].effect == EFFECT_TERRAIN_PULSE) + else if (moveEffect == EFFECT_TERRAIN_PULSE) { - if (IsBattlerTerrainAffected(battlerAtk, STATUS_FIELD_TERRAIN_ANY)) + if (gMain.inBattle) { - if (gFieldStatuses & STATUS_FIELD_ELECTRIC_TERRAIN) - gBattleStruct->dynamicMoveType = TYPE_ELECTRIC | F_DYNAMIC_TYPE_SET; - else if (gFieldStatuses & STATUS_FIELD_GRASSY_TERRAIN) - gBattleStruct->dynamicMoveType = TYPE_GRASS | F_DYNAMIC_TYPE_SET; - else if (gFieldStatuses & STATUS_FIELD_MISTY_TERRAIN) - gBattleStruct->dynamicMoveType = TYPE_FAIRY | F_DYNAMIC_TYPE_SET; - else if (gFieldStatuses & STATUS_FIELD_PSYCHIC_TERRAIN) - gBattleStruct->dynamicMoveType = TYPE_PSYCHIC | F_DYNAMIC_TYPE_SET; - else //failsafe - gBattleStruct->dynamicMoveType = TYPE_NORMAL | F_DYNAMIC_TYPE_SET; + if (IsBattlerTerrainAffected(battler, STATUS_FIELD_TERRAIN_ANY)) + { + if (gFieldStatuses & STATUS_FIELD_ELECTRIC_TERRAIN) + return TYPE_ELECTRIC; + else if (gFieldStatuses & STATUS_FIELD_GRASSY_TERRAIN) + return TYPE_GRASS; + else if (gFieldStatuses & STATUS_FIELD_MISTY_TERRAIN) + return TYPE_FAIRY; + else if (gFieldStatuses & STATUS_FIELD_PSYCHIC_TERRAIN) + return TYPE_PSYCHIC; + else //failsafe + return moveType; + } + } + else + { + switch (gWeatherPtr->currWeather) + { + case WEATHER_RAIN_THUNDERSTORM: + if (B_THUNDERSTORM_TERRAIN) + return TYPE_ELECTRIC; + break; + case WEATHER_FOG_HORIZONTAL: + case WEATHER_FOG_DIAGONAL: + if (B_OVERWORLD_FOG >= GEN_8) + return TYPE_FAIRY; + break; + } + return moveType; } } - else if (gMovesInfo[move].effect == EFFECT_TERA_BLAST && GetActiveGimmick(battlerAtk) == GIMMICK_TERA) + else if (moveEffect == EFFECT_TERA_BLAST && GetActiveGimmick(battler) == GIMMICK_TERA) { - gBattleStruct->dynamicMoveType = GetBattlerTeraType(battlerAtk) | F_DYNAMIC_TYPE_SET; + return GetMonData(mon, MON_DATA_TERA_TYPE); } - else if (gMovesInfo[move].effect == EFFECT_TERA_STARSTORM && gBattleMons[battlerAtk].species == SPECIES_TERAPAGOS_STELLAR) + else if (moveEffect == EFFECT_TERA_STARSTORM && species == SPECIES_TERAPAGOS_STELLAR) { - gBattleStruct->dynamicMoveType = TYPE_STELLAR | F_DYNAMIC_TYPE_SET; + return TYPE_STELLAR; } - attackerAbility = GetBattlerAbility(battlerAtk); - if (gMovesInfo[move].type == TYPE_NORMAL - && TrySetAteType(move, battlerAtk, attackerAbility) - && GetActiveGimmick(battlerAtk) != GIMMICK_DYNAMAX) + if (moveType == TYPE_NORMAL + && ((!gMain.inBattle || TrySetAteType(move, battler, ability)) + && GetActiveGimmick(battler) != GIMMICK_DYNAMAX)) { - gBattleStruct->ateBoost[battlerAtk] = 1; + if (gMain.inBattle && ateBoost != NULL) + *ateBoost = TRUE; } - else if (gMovesInfo[move].type != TYPE_NORMAL - && gMovesInfo[move].effect != EFFECT_HIDDEN_POWER - && gMovesInfo[move].effect != EFFECT_WEATHER_BALL - && attackerAbility == ABILITY_NORMALIZE - && GetActiveGimmick(battlerAtk) != GIMMICK_Z_MOVE) + else if (moveType != TYPE_NORMAL + && moveEffect != EFFECT_HIDDEN_POWER + && moveEffect != EFFECT_WEATHER_BALL + && ability == ABILITY_NORMALIZE + && GetActiveGimmick(battler) != GIMMICK_Z_MOVE) { - gBattleStruct->dynamicMoveType = TYPE_NORMAL | F_DYNAMIC_TYPE_SET; - if (GetActiveGimmick(battlerAtk) != GIMMICK_DYNAMAX) - gBattleStruct->ateBoost[battlerAtk] = 1; + if (gMain.inBattle && ateBoost != NULL && GetActiveGimmick(battler) != GIMMICK_DYNAMAX) + *ateBoost = TRUE; + return TYPE_NORMAL; } - else if (gMovesInfo[move].soundMove && attackerAbility == ABILITY_LIQUID_VOICE) + else if (gMovesInfo[move].soundMove && ability == ABILITY_LIQUID_VOICE) { - gBattleStruct->dynamicMoveType = TYPE_WATER | F_DYNAMIC_TYPE_SET; + return TYPE_WATER; } - else if (gMovesInfo[move].effect == EFFECT_AURA_WHEEL && gBattleMons[battlerAtk].species == SPECIES_MORPEKO_HANGRY) + else if (moveEffect == EFFECT_AURA_WHEEL && species == SPECIES_MORPEKO_HANGRY) { - gBattleStruct->dynamicMoveType = TYPE_DARK | F_DYNAMIC_TYPE_SET; + return TYPE_DARK; } + return TYPE_NONE; +} + +void SetTypeBeforeUsingMove(u32 move, u32 battler) +{ + u32 moveType; + u32 heldItem = gBattleMons[battler].item; + u32 holdEffect = GetBattlerHoldEffect(battler, TRUE); + + gBattleStruct->dynamicMoveType = 0; + gBattleStruct->ateBoost[battler] = FALSE; + gSpecialStatuses[battler].gemBoost = FALSE; + + moveType = GetDynamicMoveType(&GetBattlerParty(battler)[gBattlerPartyIndexes[battler]], + move, + battler, + &gBattleStruct->ateBoost[battler]); + if (moveType != TYPE_NONE) + gBattleStruct->dynamicMoveType = moveType | F_DYNAMIC_TYPE_SET; + moveType = GetMoveType(move); if ((gFieldStatuses & STATUS_FIELD_ION_DELUGE && moveType == TYPE_NORMAL) - || gStatuses4[battlerAtk] & STATUS4_ELECTRIFIED) + || gStatuses4[battler] & STATUS4_ELECTRIFIED) gBattleStruct->dynamicMoveType = TYPE_ELECTRIC | F_DYNAMIC_TYPE_SET; // Check if a gem should activate. moveType = GetMoveType(move); if (holdEffect == HOLD_EFFECT_GEMS - && moveType == ItemId_GetSecondaryId(gBattleMons[battlerAtk].item)) + && moveType == ItemId_GetSecondaryId(heldItem)) { - gSpecialStatuses[battlerAtk].gemParam = GetBattlerHoldEffectParam(battlerAtk); - gSpecialStatuses[battlerAtk].gemBoost = TRUE; + gSpecialStatuses[battler].gemParam = GetBattlerHoldEffectParam(battler); + gSpecialStatuses[battler].gemBoost = TRUE; } } diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 231afefc1f..9f649252fd 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -6410,7 +6410,7 @@ static void Cmd_moveend(void) gBattleStruct->targetsDone[gBattlerAttacker] = 0; gProtectStructs[gBattlerAttacker].targetAffected = FALSE; gProtectStructs[gBattlerAttacker].shellTrap = FALSE; - gBattleStruct->ateBoost[gBattlerAttacker] = 0; + gBattleStruct->ateBoost[gBattlerAttacker] = FALSE; gStatuses3[gBattlerAttacker] &= ~STATUS3_ME_FIRST; gSpecialStatuses[gBattlerAttacker].gemBoost = FALSE; gSpecialStatuses[gBattlerAttacker].damagedMons = 0; diff --git a/src/pokemon.c b/src/pokemon.c index 92a50ed1aa..d76d1df58c 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -6963,172 +6963,8 @@ static inline u32 CalculateHiddenPowerType(struct Pokemon *mon) u32 CheckDynamicMoveType(struct Pokemon *mon, u32 move, u32 battler) { - u32 type = gMovesInfo[move].type; - u32 species = GetMonData(mon, MON_DATA_SPECIES); - u32 heldItem = GetMonData(mon, MON_DATA_HELD_ITEM, 0); - u32 heldItemEffect = ItemId_GetHoldEffect(heldItem); - u32 ability = GetMonAbility(mon); - u32 type1 = gSpeciesInfo[species].types[0]; - u32 type2 = gSpeciesInfo[species].types[1]; - u32 effect = gMovesInfo[move].effect; - - if (effect == EFFECT_IVY_CUDGEL - && (species == SPECIES_OGERPON_WELLSPRING_MASK || species == SPECIES_OGERPON_WELLSPRING_MASK_TERA - || species == SPECIES_OGERPON_HEARTHFLAME_MASK || species == SPECIES_OGERPON_HEARTHFLAME_MASK_TERA - || species == SPECIES_OGERPON_CORNERSTONE_MASK || species == SPECIES_OGERPON_CORNERSTONE_MASK_TERA)) - { - type = type2; - } - else if (move == MOVE_STRUGGLE) - { - return TYPE_NORMAL; - } - else if (effect == EFFECT_TERA_BLAST && GetActiveGimmick(battler) == GIMMICK_TERA && gBattleMons[battler].species == species) - { - return GetMonData(mon, MON_DATA_TERA_TYPE); - } - else if (effect == EFFECT_TERA_STARSTORM && species == SPECIES_TERAPAGOS_STELLAR) - { - return TYPE_STELLAR; - } - else if (move == MOVE_HIDDEN_POWER) - { - return CalculateHiddenPowerType(mon); - } - else if (effect == EFFECT_AURA_WHEEL && species == SPECIES_MORPEKO_HANGRY) - { - type = TYPE_DARK; - } - else if (effect == EFFECT_CHANGE_TYPE_ON_ITEM) - { - if (heldItemEffect == gMovesInfo[move].argument) - return ItemId_GetSecondaryId(heldItem); - else - return TYPE_NORMAL; - } - else if (effect == EFFECT_NATURAL_GIFT) - { - if (ItemId_GetPocket(heldItem) == POCKET_BERRIES) - return gNaturalGiftTable[ITEM_TO_BERRY(heldItem)].type; - else - return TYPE_NORMAL; - } - else if (effect == EFFECT_RAGING_BULL - && (species == SPECIES_TAUROS_PALDEAN_COMBAT_BREED - || species == SPECIES_TAUROS_PALDEAN_BLAZE_BREED - || species == SPECIES_TAUROS_PALDEAN_AQUA_BREED)) - { - return type2; - } - else if (effect == EFFECT_REVELATION_DANCE) - { - if (gBattleMons[battler].species != species && type1 != TYPE_MYSTERY) - type = type1; - else if (gBattleMons[battler].species != species && type2 != TYPE_MYSTERY) - type = type2; - else if (GetBattlerTeraType(battler) != TYPE_STELLAR && (GetActiveGimmick(battler) == GIMMICK_TERA || IsGimmickSelected(battler, GIMMICK_TERA))) - type = GetMonData(mon, MON_DATA_TERA_TYPE); - else if (gBattleMons[battler].types[0] != TYPE_MYSTERY) - type = gBattleMons[battler].types[0]; - else if (gBattleMons[battler].types[1] != TYPE_MYSTERY) - type = gBattleMons[battler].types[1]; - else if (gBattleMons[battler].types[2] != TYPE_MYSTERY) - type = gBattleMons[battler].types[2]; - } - else if (effect == EFFECT_TERRAIN_PULSE - && ((IsMonGrounded(heldItemEffect, ability, type1, type2) && gBattleMons[battler].species != species) - || (IsBattlerTerrainAffected(battler, STATUS_FIELD_TERRAIN_ANY) && gBattleMons[battler].species == species))) - { - if (gMain.inBattle) - { - if (gFieldStatuses & STATUS_FIELD_ELECTRIC_TERRAIN) - return TYPE_ELECTRIC; - else if (gFieldStatuses & STATUS_FIELD_GRASSY_TERRAIN) - return TYPE_GRASS; - else if (gFieldStatuses & STATUS_FIELD_MISTY_TERRAIN) - return TYPE_FAIRY; - else if (gFieldStatuses & STATUS_FIELD_PSYCHIC_TERRAIN) - return TYPE_PSYCHIC; - else //failsafe - type = TYPE_NORMAL; - } - else - { - switch (gWeatherPtr->currWeather) - { - case WEATHER_RAIN_THUNDERSTORM: - if (B_THUNDERSTORM_TERRAIN) - return TYPE_ELECTRIC; - break; - case WEATHER_FOG_HORIZONTAL: - case WEATHER_FOG_DIAGONAL: - if (B_OVERWORLD_FOG >= GEN_8) - return TYPE_FAIRY; - break; - } - return TYPE_NORMAL; - } - } - - if (effect == EFFECT_WEATHER_BALL) - { - if (gMain.inBattle && WEATHER_HAS_EFFECT) - { - if (gBattleWeather & B_WEATHER_RAIN && heldItemEffect != HOLD_EFFECT_UTILITY_UMBRELLA) - return TYPE_WATER; - else if (gBattleWeather & B_WEATHER_SANDSTORM) - return TYPE_ROCK; - else if (gBattleWeather & B_WEATHER_SUN && heldItemEffect != HOLD_EFFECT_UTILITY_UMBRELLA) - return TYPE_FIRE; - else if (gBattleWeather & (B_WEATHER_SNOW | B_WEATHER_HAIL)) - return TYPE_ICE; - else - return TYPE_NORMAL; - } - else - { - switch (gWeatherPtr->currWeather) - { - case WEATHER_DROUGHT: - if (heldItem != ITEM_UTILITY_UMBRELLA) - return TYPE_FIRE; - break; - case WEATHER_RAIN: - case WEATHER_RAIN_THUNDERSTORM: - if (heldItem != ITEM_UTILITY_UMBRELLA) - return TYPE_WATER; - break; - case WEATHER_SNOW: - return TYPE_ICE; - break; - case WEATHER_SANDSTORM: - return TYPE_ROCK; - break; - } - return TYPE_NORMAL; - } - } - - if (ability == ABILITY_NORMALIZE && gMovesInfo[move].type != TYPE_NORMAL && GetActiveGimmick(battler) != GIMMICK_Z_MOVE) - type = TYPE_NORMAL; - - if ((gFieldStatuses & STATUS_FIELD_ION_DELUGE && type == TYPE_NORMAL) || gStatuses4[battler] & STATUS4_ELECTRIFIED) - type = TYPE_ELECTRIC; - - if (gMovesInfo[move].type == TYPE_NORMAL && gMovesInfo[move].category != DAMAGE_CATEGORY_STATUS) - { - switch (ability) - { - case ABILITY_PIXILATE: return TYPE_FAIRY; - case ABILITY_REFRIGERATE: return TYPE_ICE; - case ABILITY_AERILATE: return TYPE_FLYING; - case ABILITY_GALVANIZE: return TYPE_ELECTRIC; - default: break; - } - } - - if (ability == ABILITY_LIQUID_VOICE && gMovesInfo[move].soundMove == TRUE) - return TYPE_WATER; - - return type; + u32 moveType = GetDynamicMoveType(mon, move, battler, NULL); + if (moveType != TYPE_NONE) + return moveType; + return gMovesInfo[move].type; } diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index bf6ab45a2a..de0b54800b 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -3956,28 +3956,23 @@ static void SetMonTypeIcons(void) static void SetMoveTypeIcons(void) { u32 i; - u32 type; struct PokeSummary *summary = &sMonSummaryScreen->summary; struct Pokemon *mon = &sMonSummaryScreen->currentMon; + u32 type; for (i = 0; i < MAX_MON_MOVES; i++) { if (summary->moves[i] != MOVE_NONE) { + type = gMovesInfo[summary->moves[i]].type; if (P_SHOW_DYNAMIC_TYPES) - { type = CheckDynamicMoveType(mon, summary->moves[i], 0); - SetTypeSpritePosAndPal(type, 85, 32 + (i * 16), i + SPRITE_ARR_ID_TYPE); - } - else - { - SetTypeSpritePosAndPal(gMovesInfo[summary->moves[i]].type, 85, 32 + (i * 16), i + SPRITE_ARR_ID_TYPE); - } + SetTypeSpritePosAndPal(type, 85, 32 + (i * 16), i + SPRITE_ARR_ID_TYPE); } else { SetSpriteInvisibility(i + SPRITE_ARR_ID_TYPE, TRUE); - } + } } } From 9bc21c043c9d79b80c843aec345cd7c7d9ca9377 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Sun, 8 Sep 2024 14:30:01 -0300 Subject: [PATCH 14/37] Fix swamp pal linebreaks --- .../battle_anims/backgrounds/swampswizzle.pal | 38 +++++++++---------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/graphics/battle_anims/backgrounds/swampswizzle.pal b/graphics/battle_anims/backgrounds/swampswizzle.pal index 68d0311f6b..b739a386e7 100644 --- a/graphics/battle_anims/backgrounds/swampswizzle.pal +++ b/graphics/battle_anims/backgrounds/swampswizzle.pal @@ -1,19 +1,19 @@ -JASC-PAL -0100 -16 -255 0 0 -140 214 132 -115 181 132 -115 181 99 -90 148 90 -90 148 74 -74 115 41 -74 107 57 -57 82 24 -49 82 41 -66 74 33 -33 57 16 -41 49 16 -49 41 8 -16 24 0 -140 222 173 +JASC-PAL +0100 +16 +255 0 0 +140 214 132 +115 181 132 +115 181 99 +90 148 90 +90 148 74 +74 115 41 +74 107 57 +57 82 24 +49 82 41 +66 74 33 +33 57 16 +41 49 16 +49 41 8 +16 24 0 +140 222 173 From 2f21073555eb6c5c4c1f60b8267f67dd44d6b8b5 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Sun, 8 Sep 2024 23:13:32 -0300 Subject: [PATCH 15/37] Fixed Tera Shift description (#5351) --- src/data/abilities.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/data/abilities.h b/src/data/abilities.h index ccb27ffe35..a85f114fec 100644 --- a/src/data/abilities.h +++ b/src/data/abilities.h @@ -2559,7 +2559,7 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_TERA_SHIFT] = { .name = _("Tera Shift"), - .description = COMPOUND_STRING("Terasteralizes upon entry."), + .description = COMPOUND_STRING("Terastallizes upon entry."), .aiRating = 10, .cantBeCopied = TRUE, .cantBeSwapped = TRUE, From ab279d9f8c77064139580b466bfaa8ae446f8884 Mon Sep 17 00:00:00 2001 From: kittenchilly Date: Mon, 9 Sep 2024 02:52:48 -0500 Subject: [PATCH 16/37] Update Move Category icons (#5080) Update Category Icons to be more accurate to Gen 5 --- graphics/interface/category_icons.png | Bin 5451 -> 303 bytes src/pokemon_summary_screen.c | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/graphics/interface/category_icons.png b/graphics/interface/category_icons.png index 1c7d63c9eb775ab15aefe3456b2ac3cb8c47ede7..4e4a3cc2d9d3559bffa118fac7fc685f445a2b64 100644 GIT binary patch delta 288 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 z6(E<^YGzcategoryIconSpriteId == 0xFF) - sMonSummaryScreen->categoryIconSpriteId = CreateSprite(&gSpriteTemplate_CategoryIcons, 48, 129, 0); + sMonSummaryScreen->categoryIconSpriteId = CreateSprite(&gSpriteTemplate_CategoryIcons, 48, 128, 0); gSprites[sMonSummaryScreen->categoryIconSpriteId].invisible = FALSE; StartSpriteAnim(&gSprites[sMonSummaryScreen->categoryIconSpriteId], category); From fd4860d17ee93ba0cd5a8d971745b353d7a9d5dc Mon Sep 17 00:00:00 2001 From: ghoulslash <41651341+ghoulslash@users.noreply.github.com> Date: Mon, 9 Sep 2024 04:41:43 -0400 Subject: [PATCH 17/37] fix missing break in ENDTURNs (#5350) Co-authored-by: ghoulslash --- src/battle_util.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/battle_util.c b/src/battle_util.c index c0ab04b5b7..48aba80c63 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -2884,9 +2884,11 @@ u8 DoBattlerEndTurnEffects(void) case ENDTURN_ELECTRIFY: gStatuses4[battler] &= ~STATUS4_ELECTRIFIED; gBattleStruct->turnEffectsTracker++; + break; case ENDTURN_POWDER: gBattleMons[battler].status2 &= ~STATUS2_POWDER; gBattleStruct->turnEffectsTracker++; + break; case ENDTURN_THROAT_CHOP: if (gDisableStructs[battler].throatChopTimer && --gDisableStructs[battler].throatChopTimer == 0) { From 32dde8af645965b315c544a1ad36a760f6310704 Mon Sep 17 00:00:00 2001 From: Pawkkie <61265402+Pawkkie@users.noreply.github.com> Date: Mon, 9 Sep 2024 04:43:15 -0400 Subject: [PATCH 18/37] Composite flag docs (#5349) --- docs/ai_flags.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/docs/ai_flags.md b/docs/ai_flags.md index 8ba2e33253..8559ff36f9 100644 --- a/docs/ai_flags.md +++ b/docs/ai_flags.md @@ -27,6 +27,16 @@ If you are not using competitive syntax parties, instead access the trainer data # What AI Flags does pokeemerald-expansion have? This section lists all of expansion’s AI Flags and briefly describes the effect they have on the AI’s behaviour. In all cases, please check the corresponding function or surrounding code around their implementation for more details. Some of these functions are vanilla, some share a name with vanilla but have been modified to varying degrees, and some are completely new. +## Composite AI Flags + +Expansion has two "composite" AI flags, `AI_FLAG_BASIC_TRAINER` and `AI_FLAG_SMART_TRAINER`. This means that these flags have no unique functionality themselves, and can instead be thought of as groups of other flags that are all enabled when this flag is enabled. The idea behind these flags is that if you don't care to manage the detailed behaviour of a particular trainer, you can use these as a baseline instead, and expansion will keep them updated for you. + +`AI_FLAG_BASIC_TRAINER` is expansion's version of generic, normal AI behaviour. It includes `AI_FLAG_CHECK_BAD_MOVE` (don't use bad moves), `AI_FLAG_TRY_TO_FAINT` (faint the player where possible), and `AI_FLAG_CHECK_VIABILITY` (choose the most effective move to use in the current context). Trainers with this flag will still be smarter than they are in vanilla as there have been dramatic improvements made to move selection, but not incredibly so. Trainers with this flag should feel like normal trainers. In general we recommend these three flags be used in all cases, unless you specifically want a trainer who makes obvious mistakes in battle. + +`AI_FLAG_SMART_TRAINER` is expansion's version of a "smart AI". It includes everything in `AI_FLAG_BASIC_TRAINER` along with `AI_FLAG_SMART_SWITCHING` (make smart decisions about when to switch), `AI_FLAG_SMART_MON_CHOICES` (make smart decisions about what mon to send in after a switch / KO), and `AI_FLAG_OMNISCIENT` (awareness of what moves, items, and abilities the player's mons have to better inform decisions). Expansion will keep this updated to represent the most objectively intelligent behaviour our flags are capable of producing. + +Expansion has LOADS of flags, which will be covered in the rest of this guide. If you don't want to engage with detailed trainer AI tuning though, you can just use these two composite flags, and trust that expansion will keep their contents updated to always represent the most standard and the smartest behaviour we can. + ## `AI_FLAG_CHECK_BAD_MOVE` The AI will avoid using moves that are likely to fail in the current situation. This flag helps prevent the AI from making ineffective choices, such as using moves into immunities, into invulnerable states, or when the moves are otherwise hindered by abilities, terrain, or status conditions. From d62b7270c8ee3d8e5f3d0d19e1eda948eafbdbf6 Mon Sep 17 00:00:00 2001 From: hedara90 <90hedara@gmail.com> Date: Mon, 9 Sep 2024 10:49:05 +0200 Subject: [PATCH 19/37] Fixed trainerslide arguments (#5344) Co-authored-by: Hedara --- asm/macros/battle_script.inc | 4 ++-- data/battle_scripts_1.s | 30 +++++++++++++++--------------- data/battle_scripts_2.s | 10 +++++----- src/battle_script_commands.c | 4 ++-- 4 files changed, 24 insertions(+), 24 deletions(-) diff --git a/asm/macros/battle_script.inc b/asm/macros/battle_script.inc index e18ce91f28..f91313cb92 100644 --- a/asm/macros/battle_script.inc +++ b/asm/macros/battle_script.inc @@ -507,9 +507,9 @@ .byte \battler .endm - .macro trainerslidein battler:req + .macro trainerslidein position:req .byte 0x53 - .byte \battler + .byte \position .endm .macro playse song:req diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index 1a80940b72..f9bb4565f0 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -5603,13 +5603,13 @@ BattleScript_LocalTrainerBattleWon:: BattleScript_LocalTwoTrainersDefeated:: printstring STRINGID_TWOENEMIESDEFEATED BattleScript_LocalBattleWonLoseTexts:: - trainerslidein BS_ATTACKER + trainerslidein BS_OPPONENT1 waitstate printstring STRINGID_TRAINER1LOSETEXT jumpifnotbattletype BATTLE_TYPE_TWO_OPPONENTS, BattleScript_LocalBattleWonReward - trainerslideout B_POSITION_OPPONENT_LEFT + trainerslideout BS_OPPONENT1 waitstate - trainerslidein BS_FAINTED + trainerslidein BS_OPPONENT2 waitstate printstring STRINGID_TRAINER2LOSETEXT BattleScript_LocalBattleWonReward:: @@ -5661,15 +5661,15 @@ BattleScript_LocalBattleLostPrintTrainersWinText:: waitstate returnopponentmon2toball BS_ATTACKER waitstate - trainerslidein BS_ATTACKER + trainerslidein BS_OPPONENT1 waitstate printstring STRINGID_TRAINER1WINTEXT jumpifbattletype BATTLE_TYPE_TOWER_LINK_MULTI, BattleScript_LocalBattleLostDoTrainer2WinText jumpifnotbattletype BATTLE_TYPE_TWO_OPPONENTS, BattleScript_LocalBattleLostEnd_ BattleScript_LocalBattleLostDoTrainer2WinText:: - trainerslideout B_POSITION_OPPONENT_LEFT + trainerslideout BS_OPPONENT1 waitstate - trainerslidein BS_FAINTED + trainerslidein BS_OPPONENT2 waitstate printstring STRINGID_TRAINER2WINTEXT BattleScript_LocalBattleLostEnd_:: @@ -5680,12 +5680,12 @@ BattleScript_FrontierLinkBattleLost:: waitstate returnopponentmon2toball BS_ATTACKER waitstate - trainerslidein BS_ATTACKER + trainerslidein BS_OPPONENT1 waitstate printstring STRINGID_TRAINER1WINTEXT - trainerslideout B_POSITION_OPPONENT_LEFT + trainerslideout BS_OPPONENT1 waitstate - trainerslidein BS_FAINTED + trainerslidein BS_OPPONENT2 waitstate printstring STRINGID_TRAINER2WINTEXT jumpifbattletype BATTLE_TYPE_RECORDED, BattleScript_FrontierLinkBattleLostEnd @@ -5708,12 +5708,12 @@ BattleScript_TowerLinkBattleWon:: playtrainerdefeatbgm BS_ATTACKER printstring STRINGID_BATTLEEND waitmessage B_WAIT_TIME_LONG - trainerslidein BS_ATTACKER + trainerslidein BS_OPPONENT1 waitstate printstring STRINGID_TRAINER1LOSETEXT - trainerslideout B_POSITION_OPPONENT_LEFT + trainerslideout BS_OPPONENT1 waitstate - trainerslidein BS_FAINTED + trainerslidein BS_OPPONENT2 waitstate printstring STRINGID_TRAINER2LOSETEXT jumpifbattletype BATTLE_TYPE_RECORDED, BattleScript_TowerLinkBattleWonEnd @@ -5730,13 +5730,13 @@ BattleScript_FrontierTrainerBattleWon:: BattleScript_FrontierTrainerBattleWon_TwoDefeated: printstring STRINGID_TWOENEMIESDEFEATED BattleScript_FrontierTrainerBattleWon_LoseTexts: - trainerslidein BS_ATTACKER + trainerslidein BS_OPPONENT1 waitstate printstring STRINGID_TRAINER1LOSETEXT jumpifnotbattletype BATTLE_TYPE_TWO_OPPONENTS, BattleScript_TryPickUpItems - trainerslideout B_POSITION_OPPONENT_LEFT + trainerslideout BS_OPPONENT1 waitstate - trainerslidein BS_FAINTED + trainerslidein BS_OPPONENT2 waitstate printstring STRINGID_TRAINER2LOSETEXT BattleScript_TryPickUpItems: diff --git a/data/battle_scripts_2.s b/data/battle_scripts_2.s index 7fe22195c8..be6c04e32e 100644 --- a/data/battle_scripts_2.s +++ b/data/battle_scripts_2.s @@ -238,7 +238,7 @@ BattleScript_ActionWallyThrow: waitmessage B_WAIT_TIME_LONG returnatktoball waitstate - trainerslidein BS_TARGET + trainerslidein BS_PLAYER1 waitstate printstring STRINGID_YOUTHROWABALLNOWRIGHT waitmessage B_WAIT_TIME_LONG @@ -246,10 +246,10 @@ BattleScript_ActionWallyThrow: BattleScript_TrainerASlideMsgRet:: handletrainerslidemsg BS_SCRIPTING, 0 - trainerslidein B_POSITION_OPPONENT_LEFT + trainerslidein BS_OPPONENT1 handletrainerslidemsg BS_SCRIPTING, 1 waitstate - trainerslideout B_POSITION_OPPONENT_LEFT + trainerslideout BS_OPPONENT1 waitstate handletrainerslidemsg BS_SCRIPTING, 2 return @@ -260,10 +260,10 @@ BattleScript_TrainerASlideMsgEnd2:: BattleScript_TrainerBSlideMsgRet:: handletrainerslidemsg BS_SCRIPTING, 0 - trainerslidein B_POSITION_OPPONENT_RIGHT + trainerslidein BS_OPPONENT2 handletrainerslidemsg BS_SCRIPTING, 1 waitstate - trainerslideout B_POSITION_OPPONENT_RIGHT + trainerslideout BS_OPPONENT2 waitstate handletrainerslidemsg BS_SCRIPTING, 2 return diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 13795ee61c..faa383f7ef 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -7439,9 +7439,9 @@ static void Cmd_switchineffects(void) static void Cmd_trainerslidein(void) { - CMD_ARGS(u8 battler); + CMD_ARGS(u8 position); - u32 battler = GetBattlerForBattleScript(cmd->battler); + u32 battler = GetBattlerForBattleScript(cmd->position); BtlController_EmitTrainerSlide(battler, BUFFER_A); MarkBattlerForControllerExec(battler); From 5089b1d0b41c89985181df35be80ae36d2bf1329 Mon Sep 17 00:00:00 2001 From: Alex <93446519+AlexOn1ine@users.noreply.github.com> Date: Mon, 9 Sep 2024 11:52:26 +0200 Subject: [PATCH 20/37] Adds callnative for soundproofcheck to addtionally check the flag (#5301) * Adds callnative for soundproofcheck to addtionally check the flag * rename callnative, include parish song and missing ability recording --- asm/macros/battle_script.inc | 6 ++++++ data/battle_scripts_1.s | 4 ++-- src/battle_script_commands.c | 17 +++++++++++++++++ 3 files changed, 25 insertions(+), 2 deletions(-) diff --git a/asm/macros/battle_script.inc b/asm/macros/battle_script.inc index f91313cb92..c9f9b28bef 100644 --- a/asm/macros/battle_script.inc +++ b/asm/macros/battle_script.inc @@ -1679,6 +1679,12 @@ .4byte \failInstr .endm + .macro jumpifblockedbysoundproof battler:req, failInstr:req + callnative BS_JumpIfBlockedBySoundproof + .byte \battler + .4byte \failInstr + .endm + @ various command changed to more readable macros .macro cancelmultiturnmoves battler:req various \battler, VARIOUS_CANCEL_MULTI_TURN_MOVES diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index f9bb4565f0..c24dacb5c4 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -508,7 +508,7 @@ BattleScript_EffectAttackUpUserAlly_TryAlly: BattleScript_EffectAttackUpUserAlly_End: goto BattleScript_MoveEnd BattleScript_EffectAttackUpUserAlly_TryAlly_: - jumpifability BS_ATTACKER_PARTNER, ABILITY_SOUNDPROOF, BattleScript_EffectAttackUpUserAlly_TryAllyBlocked + jumpifblockedbysoundproof BS_ATTACKER_PARTNER, BattleScript_EffectAttackUpUserAlly_TryAllyBlocked setstatchanger STAT_ATK, 1, FALSE statbuffchange STAT_CHANGE_ALLOW_PTR, BattleScript_EffectAttackUpUserAlly_End jumpifbyte CMP_NOT_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_EffectAttackUpUserAlly_AllyAnim @@ -4281,7 +4281,7 @@ BattleScript_EffectPerishSong:: waitmessage B_WAIT_TIME_LONG setbyte gBattlerTarget, 0 BattleScript_PerishSongLoop:: - jumpifability BS_TARGET, ABILITY_SOUNDPROOF, BattleScript_PerishSongBlocked + jumpifblockedbysoundproof BS_TARGET, BattleScript_PerishSongBlocked jumpifpranksterblocked BS_TARGET, BattleScript_PerishSongNotAffected BattleScript_PerishSongLoopIncrement:: addbyte gBattlerTarget, 1 diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index faa383f7ef..d4afe23be4 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -17218,3 +17218,20 @@ void BS_TryTarShot(void) gBattlescriptCurrInstr = cmd->nextInstr; } } + +void BS_JumpIfBlockedBySoundproof(void) +{ + NATIVE_ARGS(u8 battler, const u8 *jumpInstr); + u32 battler = GetBattlerForBattleScript(cmd->battler); + if (gMovesInfo[gCurrentMove].soundMove && GetBattlerAbility(battler) == ABILITY_SOUNDPROOF) + { + gLastUsedAbility = ABILITY_SOUNDPROOF; + gBattlescriptCurrInstr = cmd->jumpInstr; + RecordAbilityBattle(battler, gLastUsedAbility); + gBattlerAbility = battler; + } + else + { + gBattlescriptCurrInstr = cmd->nextInstr; + } +} From dc2bbe0448c49f36af62e4b4c96e7c388ffb4c6b Mon Sep 17 00:00:00 2001 From: hedara90 <90hedara@gmail.com> Date: Mon, 9 Sep 2024 14:34:21 +0200 Subject: [PATCH 21/37] Fixed loading into the wrong version of a map after saving in areas with multiple layouts (#5347) Co-authored-by: Hedara --- src/overworld.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/overworld.c b/src/overworld.c index a9606578dc..37a9642e28 100644 --- a/src/overworld.c +++ b/src/overworld.c @@ -624,7 +624,7 @@ static void LoadCurrentMapData(void) static void LoadSaveblockMapHeader(void) { gMapHeader = *Overworld_GetMapHeaderByGroupAndId(gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum); - gMapHeader.mapLayout = GetMapLayout(gMapHeader.mapLayoutId); + gMapHeader.mapLayout = GetMapLayout(gSaveBlock1Ptr->mapLayoutId); } static void SetPlayerCoordsFromWarp(void) From 389e5c20dd9f4ba0d551a18ab0f50bab61f5fb88 Mon Sep 17 00:00:00 2001 From: Alex <93446519+AlexOn1ine@users.noreply.github.com> Date: Mon, 9 Sep 2024 15:40:56 +0200 Subject: [PATCH 22/37] Fixes berries missing timing (#5300) * Fixes berries missing timing * salac berry test --- src/battle_util.c | 10 ++++++++++ test/battle/hold_effect/restore_hp.c | 29 ++++++++++++++++++++++++++++ test/battle/hold_effect/speed_up.c | 19 ++++++++++++++++++ 3 files changed, 58 insertions(+) create mode 100644 test/battle/hold_effect/restore_hp.c diff --git a/src/battle_util.c b/src/battle_util.c index 48aba80c63..f6c577a31c 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -2321,6 +2321,7 @@ enum ENDTURN_DYNAMAX, ENDTURN_GMAX_MOVE_RESIDUAL_DAMAGE, ENDTURN_SEA_OF_FIRE_DAMAGE, + ENDTURN_ITEMS3, ENDTURN_BATTLER_COUNT }; @@ -2453,6 +2454,15 @@ u8 DoBattlerEndTurnEffects(void) effect++; gBattleStruct->turnEffectsTracker++; break; + case ENDTURN_ITEMS3: // berry effects + if (gItemsInfo[gBattleMons[battler].item].pocket == POCKET_BERRIES + || GetBattlerHoldEffect(battler, TRUE) == HOLD_EFFECT_RESTORE_HP) // Edge case for Berry Juice + { + if (ItemBattleEffects(ITEMEFFECT_NORMAL, battler, FALSE)) + effect++; + } + gBattleStruct->turnEffectsTracker++; + break; case ENDTURN_ORBS: if (IsBattlerAlive(battler) && ItemBattleEffects(ITEMEFFECT_ORBS, battler, FALSE)) effect++; diff --git a/test/battle/hold_effect/restore_hp.c b/test/battle/hold_effect/restore_hp.c new file mode 100644 index 0000000000..09daecc860 --- /dev/null +++ b/test/battle/hold_effect/restore_hp.c @@ -0,0 +1,29 @@ +#include "global.h" +#include "test/battle.h" + +DOUBLE_BATTLE_TEST("Restore HP Item effects do not miss timing") +{ + u16 item; + + PARAMETRIZE { item = ITEM_BERRY_JUICE; } + PARAMETRIZE { item = ITEM_ORAN_BERRY; } + PARAMETRIZE { item = ITEM_SITRUS_BERRY; } + + GIVEN { + ASSUME(gItemsInfo[ITEM_ORAN_BERRY].holdEffect == HOLD_EFFECT_RESTORE_HP); + ASSUME(gItemsInfo[ITEM_BERRY_JUICE].holdEffect == HOLD_EFFECT_RESTORE_HP); + ASSUME(gItemsInfo[ITEM_SITRUS_BERRY].holdEffect == HOLD_EFFECT_RESTORE_PCT_HP); + PLAYER(SPECIES_WOBBUFFET); + PLAYER(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WYNAUT) { MaxHP(100); HP(51); Item(item); } + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(playerLeft, MOVE_FIRE_PLEDGE, target: opponentRight); MOVE(playerRight, MOVE_GRASS_PLEDGE, target: opponentRight); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerRight); + MESSAGE("A sea of fire enveloped the opposing team!"); + MESSAGE("The opposing Foe Wynaut was hurt by the sea of fire!"); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_HELD_ITEM_EFFECT, opponentLeft); + MESSAGE("The opposing Foe Wobbuffet was hurt by the sea of fire!"); + } +} diff --git a/test/battle/hold_effect/speed_up.c b/test/battle/hold_effect/speed_up.c index 438ff0d3cc..c6ddc19d8d 100644 --- a/test/battle/hold_effect/speed_up.c +++ b/test/battle/hold_effect/speed_up.c @@ -68,3 +68,22 @@ SINGLE_BATTLE_TEST("Salac Berry raises Speed by one stage when HP drops to 1/4 o EXPECT_EQ(player->statStages[STAT_SPEED], DEFAULT_STAT_STAGE + 2); } } + +DOUBLE_BATTLE_TEST("Salac Berry does not miss timing miss timing") +{ + GIVEN { + PLAYER(SPECIES_WOBBUFFET); + PLAYER(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WYNAUT) { MaxHP(100); HP(26); Item(ITEM_SALAC_BERRY); } + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(playerLeft, MOVE_FIRE_PLEDGE, target: opponentRight); MOVE(playerRight, MOVE_GRASS_PLEDGE, target: opponentRight); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerRight); + MESSAGE("A sea of fire enveloped the opposing team!"); + MESSAGE("The opposing Foe Wynaut was hurt by the sea of fire!"); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_HELD_ITEM_EFFECT, opponentLeft); + MESSAGE("Using Salac Berry, the Speed of Foe Wynaut rose!"); + MESSAGE("The opposing Foe Wobbuffet was hurt by the sea of fire!"); + } +} From 3cfc0004b6da27b2fc4e16bb258223f81554ce4f Mon Sep 17 00:00:00 2001 From: Alex <93446519+AlexOn1ine@users.noreply.github.com> Date: Mon, 9 Sep 2024 17:30:39 +0200 Subject: [PATCH 23/37] Removes redundant moveTargetType ai function (#5354) * Removes redundant moveTargetType ai function * Beautify GetBattlerMoveTargetType for better readability --- include/battle_ai_util.h | 1 - src/battle_ai_main.c | 18 +++++++++--------- src/battle_ai_util.c | 10 +--------- src/battle_util.c | 9 +++------ 4 files changed, 13 insertions(+), 25 deletions(-) diff --git a/include/battle_ai_util.h b/include/battle_ai_util.h index 04920cb3a2..3146bb94fd 100644 --- a/include/battle_ai_util.h +++ b/include/battle_ai_util.h @@ -72,7 +72,6 @@ bool32 CanKnockOffItem(u32 battler, u32 item); bool32 IsAbilityOfRating(u32 ability, s8 rating); bool32 AI_IsAbilityOnSide(u32 battlerId, u32 ability); bool32 AI_MoveMakesContact(u32 ability, u32 holdEffect, u32 move); -u32 AI_GetBattlerMoveTargetType(u32 battlerId, u32 move); bool32 ShouldUseZMove(u32 battlerAtk, u32 battlerDef, u32 chosenMove); // stat stage checks diff --git a/src/battle_ai_main.c b/src/battle_ai_main.c index f554da437d..b71e6799e0 100644 --- a/src/battle_ai_main.c +++ b/src/battle_ai_main.c @@ -812,7 +812,7 @@ static s32 AI_CheckBadMove(u32 battlerAtk, u32 battlerDef, u32 move, s32 score) s8 atkPriority = GetMovePriority(battlerAtk, move); u32 moveEffect = gMovesInfo[move].effect; s32 moveType; - u32 moveTarget = AI_GetBattlerMoveTargetType(battlerAtk, move); + u32 moveTarget = GetBattlerMoveTargetType(battlerAtk, move); struct AiLogicData *aiData = AI_DATA; u32 effectiveness = aiData->effectiveness[battlerAtk][battlerDef][AI_THINKING_STRUCT->movesetIndex]; bool32 isDoubleBattle = IsValidDoubleBattle(battlerAtk); @@ -2569,7 +2569,7 @@ static s32 AI_CheckBadMove(u32 battlerAtk, u32 battlerDef, u32 move, s32 score) } else { - if (AI_GetBattlerMoveTargetType(battlerDef, instructedMove) & (MOVE_TARGET_SELECTED + if (GetBattlerMoveTargetType(battlerDef, instructedMove) & (MOVE_TARGET_SELECTED | MOVE_TARGET_DEPENDS | MOVE_TARGET_RANDOM | MOVE_TARGET_BOTH @@ -2767,7 +2767,7 @@ static s32 AI_DoubleBattle(u32 battlerAtk, u32 battlerDef, u32 move, s32 score) // move data u32 moveType = gMovesInfo[move].type; u32 effect = gMovesInfo[move].effect; - u32 moveTarget = AI_GetBattlerMoveTargetType(battlerAtk, move); + u32 moveTarget = GetBattlerMoveTargetType(battlerAtk, move); // ally data u32 battlerAtkPartner = BATTLE_PARTNER(battlerAtk); struct AiLogicData *aiData = AI_DATA; @@ -3098,7 +3098,7 @@ static s32 AI_DoubleBattle(u32 battlerAtk, u32 battlerDef, u32 move, s32 score) if (instructedMove != MOVE_NONE && !IS_MOVE_STATUS(instructedMove) - && (AI_GetBattlerMoveTargetType(battlerAtkPartner, instructedMove) & (MOVE_TARGET_BOTH | MOVE_TARGET_FOES_AND_ALLY))) // Use instruct on multi-target moves + && (GetBattlerMoveTargetType(battlerAtkPartner, instructedMove) & (MOVE_TARGET_BOTH | MOVE_TARGET_FOES_AND_ALLY))) // Use instruct on multi-target moves { RETURN_SCORE_PLUS(WEAK_EFFECT); } @@ -3743,24 +3743,24 @@ static u32 AI_CalcMoveEffectScore(u32 battlerAtk, u32 battlerDef, u32 move) ProtectChecks(battlerAtk, battlerDef, move, predictedMove, &score); break; case MOVE_WIDE_GUARD: - if (predictedMove != MOVE_NONE && AI_GetBattlerMoveTargetType(battlerDef, predictedMove) & (MOVE_TARGET_FOES_AND_ALLY | MOVE_TARGET_BOTH)) + if (predictedMove != MOVE_NONE && GetBattlerMoveTargetType(battlerDef, predictedMove) & (MOVE_TARGET_FOES_AND_ALLY | MOVE_TARGET_BOTH)) { ProtectChecks(battlerAtk, battlerDef, move, predictedMove, &score); } - else if (isDoubleBattle && AI_GetBattlerMoveTargetType(BATTLE_PARTNER(battlerAtk), aiData->partnerMove) & MOVE_TARGET_FOES_AND_ALLY) + else if (isDoubleBattle && GetBattlerMoveTargetType(BATTLE_PARTNER(battlerAtk), aiData->partnerMove) & MOVE_TARGET_FOES_AND_ALLY) { if (aiData->abilities[battlerAtk] != ABILITY_TELEPATHY) ProtectChecks(battlerAtk, battlerDef, move, predictedMove, &score); } break; case MOVE_CRAFTY_SHIELD: - if (predictedMove != MOVE_NONE && IS_MOVE_STATUS(predictedMove) && !(AI_GetBattlerMoveTargetType(battlerDef, predictedMove) & MOVE_TARGET_USER)) + if (predictedMove != MOVE_NONE && IS_MOVE_STATUS(predictedMove) && !(GetBattlerMoveTargetType(battlerDef, predictedMove) & MOVE_TARGET_USER)) ProtectChecks(battlerAtk, battlerDef, move, predictedMove, &score); break; case MOVE_MAT_BLOCK: if (gDisableStructs[battlerAtk].isFirstTurn && predictedMove != MOVE_NONE - && !IS_MOVE_STATUS(predictedMove) && !(AI_GetBattlerMoveTargetType(battlerDef, predictedMove) & MOVE_TARGET_USER)) + && !IS_MOVE_STATUS(predictedMove) && !(GetBattlerMoveTargetType(battlerDef, predictedMove) & MOVE_TARGET_USER)) ProtectChecks(battlerAtk, battlerDef, move, predictedMove, &score); break; case MOVE_KINGS_SHIELD: @@ -4140,7 +4140,7 @@ static u32 AI_CalcMoveEffectScore(u32 battlerAtk, u32 battlerDef, u32 move) ADJUST_SCORE(GOOD_EFFECT); break; case EFFECT_MAGIC_COAT: - if (IS_MOVE_STATUS(predictedMove) && AI_GetBattlerMoveTargetType(battlerDef, predictedMove) & (MOVE_TARGET_SELECTED | MOVE_TARGET_OPPONENTS_FIELD | MOVE_TARGET_BOTH)) + if (IS_MOVE_STATUS(predictedMove) && GetBattlerMoveTargetType(battlerDef, predictedMove) & (MOVE_TARGET_SELECTED | MOVE_TARGET_OPPONENTS_FIELD | MOVE_TARGET_BOTH)) ADJUST_SCORE(GOOD_EFFECT); break; case EFFECT_RECYCLE: diff --git a/src/battle_ai_util.c b/src/battle_ai_util.c index 2b17361435..a6eab774cb 100644 --- a/src/battle_ai_util.c +++ b/src/battle_ai_util.c @@ -1405,14 +1405,6 @@ u32 AI_GetWeather(struct AiLogicData *aiData) return gBattleWeather; } -u32 AI_GetBattlerMoveTargetType(u32 battlerId, u32 move) -{ - if (gMovesInfo[move].effect == EFFECT_EXPANDING_FORCE && AI_IsTerrainAffected(battlerId, STATUS_FIELD_PSYCHIC_TERRAIN)) - return MOVE_TARGET_BOTH; - else - return gMovesInfo[move].target; -} - bool32 IsAromaVeilProtectedMove(u32 move) { switch (move) @@ -2113,7 +2105,7 @@ bool32 HasMoveWithLowAccuracy(u32 battlerAtk, u32 battlerDef, u32 accCheck, bool if (ignoreStatus && IS_MOVE_STATUS(moves[i])) continue; else if ((!IS_MOVE_STATUS(moves[i]) && gMovesInfo[moves[i]].accuracy == 0) - || AI_GetBattlerMoveTargetType(battlerAtk, moves[i]) & (MOVE_TARGET_USER | MOVE_TARGET_OPPONENTS_FIELD)) + || GetBattlerMoveTargetType(battlerAtk, moves[i]) & (MOVE_TARGET_USER | MOVE_TARGET_OPPONENTS_FIELD)) continue; if (AI_DATA->moveAccuracy[battlerAtk][battlerDef][i] <= accCheck) diff --git a/src/battle_util.c b/src/battle_util.c index 8fde78b4cb..2fc7ab899c 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -11423,14 +11423,11 @@ bool32 IsBattlerWeatherAffected(u32 battler, u32 weatherFlags) // Possible return values are defined in battle.h following MOVE_TARGET_SELECTED u32 GetBattlerMoveTargetType(u32 battler, u32 move) { - if (move == MOVE_CURSE - && !IS_BATTLER_OF_TYPE(battler, TYPE_GHOST)) + if (move == MOVE_CURSE && !IS_BATTLER_OF_TYPE(battler, TYPE_GHOST)) return MOVE_TARGET_USER; - else if (gMovesInfo[move].effect == EFFECT_EXPANDING_FORCE - && IsBattlerTerrainAffected(battler, STATUS_FIELD_PSYCHIC_TERRAIN)) + if (gMovesInfo[move].effect == EFFECT_EXPANDING_FORCE && IsBattlerTerrainAffected(battler, STATUS_FIELD_PSYCHIC_TERRAIN)) return MOVE_TARGET_BOTH; - else if (gMovesInfo[move].effect == EFFECT_TERA_STARSTORM - && gBattleMons[battler].species == SPECIES_TERAPAGOS_STELLAR) + if (gMovesInfo[move].effect == EFFECT_TERA_STARSTORM && gBattleMons[battler].species == SPECIES_TERAPAGOS_STELLAR) return MOVE_TARGET_BOTH; return gMovesInfo[move].target; From 4c49dfdd1d0d33c72c6254bfa84d07de47291cdf Mon Sep 17 00:00:00 2001 From: Pawkkie <61265402+Pawkkie@users.noreply.github.com> Date: Mon, 9 Sep 2024 15:03:24 -0400 Subject: [PATCH 24/37] AI burn score fixes and improvements (#5356) * Burn score fixes * Remove CanTargetFaintAi check --- src/battle_ai_util.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/battle_ai_util.c b/src/battle_ai_util.c index a6eab774cb..82425a3082 100644 --- a/src/battle_ai_util.c +++ b/src/battle_ai_util.c @@ -3744,11 +3744,14 @@ void IncreaseBurnScore(u32 battlerAtk, u32 battlerDef, u32 move, s32 *score) if (AI_CanBurn(battlerAtk, battlerDef, AI_DATA->abilities[battlerDef], BATTLE_PARTNER(battlerAtk), move, AI_DATA->partnerMove)) { - ADJUST_SCORE_PTR(WEAK_EFFECT); // burning is good - if (HasMoveWithCategory(battlerDef, DAMAGE_CATEGORY_PHYSICAL)) + if (HasMoveWithCategory(battlerDef, DAMAGE_CATEGORY_PHYSICAL) + || (!(AI_THINKING_STRUCT->aiFlags[battlerAtk] & AI_FLAG_OMNISCIENT) // Not Omniscient but expects physical attacker + && gSpeciesInfo[gBattleMons[battlerDef].species].baseAttack >= gSpeciesInfo[gBattleMons[battlerDef].species].baseSpAttack + 10)) { - if (CanTargetFaintAi(battlerDef, battlerAtk)) - ADJUST_SCORE_PTR(DECENT_EFFECT); // burning the target to stay alive is cool + if (gMovesInfo[GetBestDmgMoveFromBattler(battlerDef, battlerAtk)].category == DAMAGE_CATEGORY_PHYSICAL) + ADJUST_SCORE_PTR(DECENT_EFFECT); + else + ADJUST_SCORE_PTR(WEAK_EFFECT); } if (HasMoveEffectANDArg(battlerAtk, EFFECT_DOUBLE_POWER_ON_ARG_STATUS, STATUS1_BURN) From 36ff435ab69e393df93c3e0c01715b9ab500fbff Mon Sep 17 00:00:00 2001 From: hedara90 <90hedara@gmail.com> Date: Mon, 9 Sep 2024 21:03:52 +0200 Subject: [PATCH 25/37] Liam follower fixes (#5334) * Fix Blinking on Meganium South Sprite * Fixes Lediba and Ledian Blinking * Fixes two blinking spots on spinerak * Crobat Eye and Igglibuff butt vlinking fix * More blinking follower fixes flaaffy xatu hoppip line * Blinking Gen 2 Fixes Mantine Miltank Raikou yanma wooper skarmory * Gen 4 Fixes + donphan and espeon prinplup starraptor shieldon roserade ambipom mamoswine Stunky Donphan - gen 2 fix Espion - noticed a flickering pixel on south walk * Synchronization with Cafeei * Messed up the merge, fixing now * Added mantine --------- Co-authored-by: Liamjd14 Co-authored-by: Hedara --- graphics/pokemon/ambipom/overworld.png | Bin 1257 -> 1286 bytes graphics/pokemon/crobat/overworld.png | Bin 1148 -> 1053 bytes graphics/pokemon/donphan/overworld.png | Bin 842 -> 836 bytes graphics/pokemon/flygon/overworld.png | Bin 1068 -> 1064 bytes graphics/pokemon/grovyle/overworld.png | Bin 700 -> 722 bytes graphics/pokemon/igglybuff/overworld.png | Bin 614 -> 452 bytes graphics/pokemon/ledian/overworld.png | Bin 1152 -> 1019 bytes graphics/pokemon/ledyba/overworld.png | Bin 1166 -> 1032 bytes graphics/pokemon/mantine/overworld.png | Bin 1162 -> 1008 bytes graphics/pokemon/marshtomp/overworld.png | Bin 578 -> 601 bytes graphics/pokemon/meganium/overworld.png | Bin 1039 -> 939 bytes graphics/pokemon/mightyena/overworld.png | Bin 912 -> 903 bytes graphics/pokemon/miltank/overworld.png | Bin 980 -> 842 bytes graphics/pokemon/prinplup/overworld.png | Bin 690 -> 712 bytes graphics/pokemon/raikou/overworld.png | Bin 1210 -> 1116 bytes graphics/pokemon/roserade/overworld.png | Bin 840 -> 841 bytes graphics/pokemon/skarmory/overworld.png | Bin 1197 -> 1123 bytes graphics/pokemon/skiploom/overworld.png | Bin 730 -> 550 bytes graphics/pokemon/spinarak/overworld.png | Bin 824 -> 714 bytes graphics/pokemon/stunky/overworld.png | Bin 691 -> 685 bytes graphics/pokemon/torkoal/overworld.png | Bin 811 -> 825 bytes graphics/pokemon/wooper/overworld.png | Bin 509 -> 488 bytes graphics/pokemon/xatu/overworld.png | Bin 864 -> 743 bytes graphics/pokemon/yanma/overworld.png | Bin 1019 -> 1015 bytes 24 files changed, 0 insertions(+), 0 deletions(-) diff --git a/graphics/pokemon/ambipom/overworld.png b/graphics/pokemon/ambipom/overworld.png index af46949aaadcd4471fce18fb4da632e7cb895f60..1f47b4d3e17c466c3d7fd260fde1dddf86030138 100644 GIT binary patch delta 767 zcmV0Dy!50Qvv`0D$NK0Cg__0P0@=06Lcd02gq4 z6}kZc001qKGBE_`B^DQvY99eiv5Kq#e?dJ)DMi)qMZoHOLg*2q>z*8OB?KTm6CtBZ zeHaZ2AQ_^4mQtp_6jvIa`}FYE@;bC4qY<<^f-M4Egw6OCLFJ=;Pg^8m19bd@PV*nA zl#UBTfD|OD6Wr(y91dgPS+5ba`n?D^y+x247DdWb0UQmCI@^m7tU=o03`igPf5YAG zK=|)^lO;@gun>-bgTX;Rhn>~=xWY{Uoxa1qJAPWDbxk`hFqur$p>Ni}s}4+)Qol_a z0joi)pM8%pAZrK@fJQI%!MqJszz~Qo)AoBX@Ssx%OS%i51l<&YyN;!(FyJnZ=w}XS z^^IS1f-}H`DSR#-dVN9?zHT7TfAnSmGfz@xs?w;BO9#v_)0d15aKCtyQe~L}TAga> zSilM(O;ZZj4+i{kg~XF*47}@n6YPXJ%fqSy;*;JZL>JX%odQ~Y(dUF;0$zj*Xsvd* zRJ3LEMK4ngSrKz}W(>aQM0h~~T&93V2To@zV10_Y)W^?teIiPD^JqZJe_PWRqnF|Q zoRU_bLC%2JhZ_*#C+4+2?M`KnugIu!f!egZh^!#l!2$d3Y9U6~=8EB7b_Jt~chq|t>CrE$EAITt~mB-PcR znITyoY&V!Cdk&Id7<29Ok>MX|weO xS-%%RUjA41;ZFZf`_1vczV!F`Rp8$?wx4^jJ>2u<-$(!e002ovPDHLkV1oJ&USt3O delta 738 zcmV<80v-K^3h4=uBn|;{Qb$4nuFf3k0000mkx?-R00027v<;t;h93b-v8Jp6f5A2$ zRlgSjtMdt=M~JR_a>SJofbdL&j4t(IG$?>%i1t}Znf_8-X?X6_!&}Si(29&k(CP@b z2yhWL<68ukkM=!nk%SG<@eex9f1px2E)W4ykfcseX@@f)edrH&f4c+Wzw1qwFzLZUI06m^2mKs&R_EgiHvx3|4*Tx- zX^qx3?X)> zP8}@iE_f1jQv~ihmZHLdyEvksIiS@ye$5Ha028M0xp?UH2}$_6fjrZje*w%qNtvli zqdqPjFvCn=GB&{d;!R4GWeR9@s-a^6D}XdjDO^7o@W&MrPo6RGuJcW>6Xq-rs|tuu zdXErYRF`!MX!S*(6MhMJ5iX#$+Tl{smeCizOf_Uh%+;AO_@Wcx1qE=K0va7SovncN zDdtiiKiBn%DB;bc0WEJ$e_xDVhST^gtv-XC0k01?Ai__~YkkPy0Id%6I_&~u- zs~}BYEXK>1T|kGV@mp;k^-735R&-o^1o`q+xBhe}_UHWsaMXu)gn^JB1+uy_Lo`?J zQ3!fe8W%~U3n5D5co%anf;>s8t3fkEvOL&sHv1(54=w&M-F3Cdf7OudTb^3XRR=)( zs>lwQ8~JS&pChO`pXmANoD<#vIaKA=DNp$2j>H!N5jwnPvFbT{jqFM3NAZVTd0Yfh z5~e!u-q>pgyf~DU`PeR>3^uIv~djp8;k6=q`Q4 zUv&BW+8Tqo=cUjYB>kG1eFMz!Kuk6E}{+;%l<9~hW@AIp`zin(k0k}^+ U&O|5Dy8r+H07*qoM6N<$f-yi?4*&oF diff --git a/graphics/pokemon/crobat/overworld.png b/graphics/pokemon/crobat/overworld.png index 28add5ba23cad0af04eb10ddcb8ca0ecc4d09b41..9fbaaf7e4286ae434f5784a0ca99214d652cda75 100644 GIT binary patch delta 951 zcmV;o14#V*2%QL!7zqdi0001UMu)eNF&hyt008P=0026d000+od=l&HdQ(8`07|U@xb_3d*q11afYm<|u=q#(3aI>E0H?IL;?{kdtRf_@UuJ(Rz+~(R zFJmo3!L&1j&EnlZ;8#FA2vGI8K`OX*Pf3h8a%cgdn`_CB!f*lLBB0bzKrNpVFaZx4 zgmd~x0PX^My7v(C)(BYbTLie0Xs#ztprsFKz52_X9sp(bq6wfi#PVriHUX(gWPnG{ z(Ff>*YrSh}yX+KTi$D@e9(;d_u$4+&$ES~wQLq5Y1Ox&mfbE|553#>Vls9e%d%dOg z1vu?=Z%cV&jh&Cf@5N3wWtesdw(kiT^KRx2jGD}E%HMFTqz|m&7cWF zF1jfVyKG)t5U%koP>z2xEuk?g)@2tO12Hq~bku`B4!V*9{>q3_e5xsuI8O!hFi6V~ zcSbSyzl2tuHlB7szn=}jbd*57Ln&9dT|iyF?QrN$1$us1_cGke`nJzSBL*1c0RuAq zF^#yNA`|Kg#cKifRG{aFO@Of*0gg3%$X6-&LIDfVWb*<}{WpK&kIv@wbcx~sKVUry zNG}BtXBoM6?s5OtFyhx$aO)>$T({j1rg42FfE36aoLYDQ4Eb5XT>b|;7#Rcu0002CwraKj000DMK}|sb0I`n?{9y%=AsZ1e008P>0026e z000+ooVrmwkxeii0b)x>L;#2d9Y_EG00(qQO+^Rh0SyKt2zNXnvyplqe>_Pxq8KcHLwLH}is;-_Of zZP21q86ft{qu%FuI!Y$w|M=sCR>uL- z5Dsx|ALmQR4W@h7l{_3=>N)6fpmN71xyS;ccG<@7ffLz2{Pyj_iLM4>_>gNXS7K~Og9vpV!!O(~% z-XSVCQyS}9p@9HEgUa0x<~3mv;Nl73;v_fJ<2C}s6j;GLLd3~_$}AV5}d$~>SHpw6+T=N#Z{a5VLxnb9u4 z(Gn#Vy>b49O$BUPe^qXX`-=c|kI2FUNZG;pS5OZ^`QGLF@*7kST89PFpkHOqd_g8x z(rVVI%utQn>v&6E-$TVsIw+m|0&hO^bzHEudXtXL)}VhE)Z|85&D#LjprLG%-}Z8* zLFET=YaYLw=ug$4JC((8#Q0_+tscQTGYtE);}b@)@L8M5f47g1CThV4%|)1@8n4hg zsKrKE4ZY3`jZSv-hr}?X1nB}7EW!#tW~J5S)aO72$1QZi?-?)NqTY5UU4F>+yU0izk5gU6^k?!0W;TLf&|uljpTA^bUY#0H5Kopq!_t`luaVOyR-nK92xS zb^-K)%G6ja`zYr(X;r%*Pe+;ccX&Y^0+=hBcW!1df6q!eIt0k#**m=OPxn|Oja|mb z{-E=95+C<-ppeBk*;$H(@S5Xm=+G8uo^*KtkpJ)~pZg&;Kn{#PH(0+s{;$VRNS2oG z6z!!l0000bbVXQnWMOn=I%9HWVRU5xGB7eSEif@HF)~y#GCDIgIxsjZFgQ9eF#U>q zApigXIwf>PSaf7zbY(hiZ)9m^c>ppnGBPbNF)cANR5CI;Gc`IeI4dwXIxsMd*TbCv O0000vI diff --git a/graphics/pokemon/donphan/overworld.png b/graphics/pokemon/donphan/overworld.png index 93f70fbda7b2c1b87eacb19f0a8bcbddbdc15d3d..b0b62b3b39ac5aeac61fbefb9a9cccfbb968f5b7 100644 GIT binary patch delta 20 ccmX@bc7$z00HfB#Ks}b)7d5Xob{=E`08%grf&c&j delta 26 ecmX@Yc8YC60HeXgKs_!7Fetst7Q3kC;&ObL=7G5R}-0%;F=RRid za$SL@3Ap9tKH{jcPdN0=BRJ(BPT;gaiN+zmi^dJG1vV+1!h5au$)cSINivw8Jt~IOfcMa_Y+pr4M1n`^hnL4lfI58}RE4S&p&| zyc}^B@4cwLWm(mf^TV3zH7efgw}~B?#^0OqHAlR<3?YOZf^`dl5y5_ul2`gwmKQR4 zCXu$Ls$a>w*erW&oQh*_-HK&O4hP!|A%;5aj~DGDdd&@u{*t%)WAqYtfl+*nod zfh)f60gmCnEq-+?B6XAV-AbgtV-}oc zDHpPo5(97XnQG!OeqC!6A^^cGE8qj@T`3;DM$$BFcE^p+;cG(V_8>_=kU@ z{xu4+{vZXnGHMjiDXzUm(mT`z?UMIsgCw07*qoM6N<$f-efds{jB1 delta 906 zcmV;519kkU2&@Q@PysNJQ85Pq000cWh-i_99~o~+L_t(oh3%KwlH(u@MI&TkhLHaM z&z&ogz8inThu-1ZJRdpdzhhYCM*o<9GWNHOoa1GxVaCa^n|mv+S{P5XauS70Z-d9c(kCF~qPxUeHHy%?*wIlDGO}^b&W0QGAS@ z2Xue(D+hu{lrazL$Hzv0&4rr`nS|(Bvu*-`bdJV_ikErO(XsHr^s5Ix)DG;ta{#-; z!lF#|YtM3Q%^{@9P!8c5+4Iw5i}@$M*;=&+6))R^>5VZ+zDmf~T0cBUxjl6W;FT<* z(3i3Uu^QX+(!s3+qIw|sDylzjHE>R%rFnmFk#c%DJV?62uD?#8h?Qvh4f$u2M;KwQiF;MFbGT#h;Jfo2je;i{)|^15W*sn z$ONWf=R~+~j<>66x=l z1!q~xg)F7S&sTgsnYQ1B0MmbP^Pp332&A^%^ot7D*e!100n!^a%KFeljlhm;hsHzV zAO4B>YZPStK?-hV)F_}+U^O0F%#MFQaT>g+4^--=o`ZE2X?XOG8`F|p>IF8uf1col z6C#|rag1#T3hpL5r-!vPciK&$bM-l?_Yd8)l<+)^@@H_Z()xB{J%3*M!h>@*F<(6J zG`uqnT}la$Jj3V3jbFdi;{Y;&sc~RCHkFf0ZsT^UwhC}Isy-S$PTp}$O}bXjHNNA- zSzx;dPOdq^zv)Y*^>~-#jpH$UXS?CpWLibz_W@EL$9!L9>cE^kr=PLiaER{#J2 diff --git a/graphics/pokemon/grovyle/overworld.png b/graphics/pokemon/grovyle/overworld.png index 92705c00fe9d213f51aa4b469d76dcd3f5aae7c4..96dc7812fa96aae0df5b501d1772252ac281f284 100644 GIT binary patch delta 64 zcmdnPdWm&{impPkN02WALzNl>LqiJ#!!HIP{epp^RG)$2RXhWO)pQ01@q!xBU5r2p S^@&E>EMmEO=Qd^qF#!M{U=V@; delta 42 scmcb_x`%aw3Lj%}kh>GZx^prw85kH0CI)Kr0%-_vl`Gi1u_1^F0QN=-fB*mh diff --git a/graphics/pokemon/igglybuff/overworld.png b/graphics/pokemon/igglybuff/overworld.png index ab5af8ee16e16d6e8446965863c368ca0368af96..ab6af8a03cd7bfda87d02473a6a4cc278273e505 100644 GIT binary patch delta 371 zcmV-(0gV3U1jGZ77#0Wv0001UMu)cm0004VQb$4nuFf3kkzFm3svLhfNkl_r((S@W6}|Y5?E_RvOG%|tsZ=VJN~QjZ0N^kAYWo6+ z7+D_XtL=4z&EZ=f=OLZp#K`1s@@ZZ`VYtB&M zu6Dp1H#%GwjLrsc+)4o0`ycgYz?ka^@3Je^)d_fU=Zbs8_HEW*+z#0LbI5@_UV!Re znYgWXz!xWzAFaE*4W4r9>#l^NeEJx5`F(=-7<>Z{0v_DIfbvf|LlK9I_~&=4cVCqN z2Y&^GC~5#AK*9VrAb=B=)%uAB6C+Y@)hBuT3NL&pI&k(W)G zlfha*bz+2ky{4y&V~EG`w^#P(9WoGL`|$b1vn7!dwZ4MMhKUJll2@IxagtN=4=B^J zI+E|5q*9a~F((=>_MQ7FEImLDn zHnXEtCAiL(^XLX-Pkj`$dd9*N-a08~Bue|*YF{mEXP4k%Iaa^J_YTv?j1%vZ4%I4c zD|AkqH9h&W8Q-0n{Z3}J4KjCGY|Wp%*IgI2Y2o&rxAz-Px>xNAPU9R7+AJ|fx`~9Ge>4Bq`&sulSSvg;>y2>#kPj+^EUGDiB z#&r4btL>f~X|A8G{cm1`brO@xA7D_bmbgZgq$HN4S|t~y0x1R~10y3{14CUyqYxt_ xD`QhD150fK3o8SI=)VP1Q8eV{r(~v8LNzF3(V?~AgeFi2gQu&X%Q~loCIBFv&!YeU diff --git a/graphics/pokemon/ledian/overworld.png b/graphics/pokemon/ledian/overworld.png index 8ca49bef3b624fc6b648b7d7434043fa2b33965e..64cd573aef7af3776a97ed18a9e1f9c2cbee6be5 100644 GIT binary patch delta 904 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 delta 1050 zcmV+#1m*jP2#yJm7#Rcu0002CwraKj000DMK}|sb0I`n?{9y%=AsZ1e008P>0026e z000+ooVrmwkxe`u0b)x>L;#2d9Y_EG00(qQO+^Rh0SyKt2j_!5B9Vq4e?mz_K~zY` z?Ug@I+dvqHZIGN5=MMbsW4v8%-$OzO{mXI*1Lf0H4brt7k z5K{R99Vio0vm|U)hsIOawx6MQzB?O7q*7IN;}rwX+4uZ>@4ZqK<-YFgzW!tB!yXuh z_-Dj;_%}jzERK1}1HusmfBC}5Ol3{JT?_uA8e}F+m13Nd0fCTh5JI(@FOM-!L14kY%r?kW17WO1DH!Hap{XgFx-Ntn zB)EdYE!z-AU##k5jP>Xii_}tHP~xoXe7loD0F5seGt~l`u-X0`e^{fOtQN9Ts6z-# zQmCd1S;jda6Gm&rTf%_V!UBLLwvfOlIZ#b+Z>OlR-DHV6m}We^5acnTnTAkDLYRUO zQO>NxvM_4XFU*1|go5cS<$Ng!IM$5}{h~@TJBew4gS{l@iFVT#!ZpJ{La5Ta3YgxV z=*sL0EQLbBCWK%;f8aw*^rJlB^=WF@C2^9=frc^iSV&x90X9|f_M4x1aP5-rmaQF?}}Tw4KY9$ z5GJenlDLF`GXRA{;2gB};HuSff|fhDDH*dCX=v6WjmuB z(1sdEq}i;r)cgqim8S;ox0nG>2Iz+@;J#bIzSBP_&00&vH^M^$C6m#zsumG@QdcSp zM$C}U4tU-u{noKQXN_Yibpo*Ft00`05PfW*;(JlKhPgZ$sY_eKEuRfUkYazPgC7Bu zueQ7n0+t4%lu7J?fx?@L57mybhKaHfCj3tWsaP%FJFpp@{t>So7#_`a)05U?&8H6W zyuw(+1|W2C4)_b9StY9GhdHR^xB5Fi$Dnuyi@T_>oTx*-9I3H}d3)v}b(a5XYMA}i ze3gXkK%>{+LLDF}J#>|@fslVgXKDE`0jTLTI(OqKrU?!Plm;B}tpit-RhuEIMWK-^ zl;fe55|NWwR){(@6`wMQC^Qs#+{jZavtXP3499%s04kAA?e*bw>I`y;mK31mmJE2m z?;KmMG|=*80V(}OU{J{22l{)yUIrdlXL9}W2K zx`F7g6G$4#g!A%clL>z%(DS+kvewh6d>n#cxbT@F#f{L6=24$MuDr}&bqdw(j46@4R*S)fY1`H~{`FJb&x*r}6x~*I$P(PHib@ TSMABp00000NkvXXu0mjfKR&d9 delta 1046 zcmV+x1nK+m2Z{-h7#Rcu0002CwraKj000DMK}|sb0I`n?{9y%=AsZ1e008P>0026e z000+ooVrmwkxe`u0b)x>L;#2d9Y_EG00(qQO+^Rh0SyKt6k|Pn{E>zqe?Cb>K~zY` z?Uuc2+fWq8ue8X)i$(kZMntZYrh{w0KyaVHJRTD_hZOnt7_`Yzfb43&+o>SuFj7@DX9QwcCQw?y zHX%58_L|cD6DN$cfMQdePZa`Slwrhzq?EMPVd@SuNi50mW57|5f6@^NAy#cN#X7m) z<>?s##n?PAJ$Cw(c7xPo!%_eMNJJ@#_=OZ;KweP#CIY2U#SWp}FcFZ96}#g79|cZG zdEkJ1EUOw;9`U+6g7^4EMYfc%%&>7kHvL#7!H0r{x>Xkf1cx5K6ML9@EYl39BkZX9 za)2;pnc+d-^y99Uf3j@J-O4>~)9R?#p}zK*8D_}{I`jZ(1Y*hhyj;iI!(w}uH1h^9 z-%WMZV4K!Py&?5gi%!ac9zoa-L=OjRV9Q?ZzkHCm5#NBt`Ap{qI) z78q70*)>&eDA(vA0V4>}k$9=yQIGo5G2o^wD4A0JbhA;>f1dU`lvZ^?DX3YGP#BAX z>qpO4OU*84F0&F-Wk=|`~(=+YJlf_aOd7TSfoMqAr8!z8a z2I;56u=#Yz1)huC=e@`kKF%_{&R4=LmtTnEfxcu}f7ai#xdRT(A5g{F>@@q=A|Y^! z?h=_3PD?iDCFcby=q_Qo^B&FplQ0*4yyX138E)yuo!bPK9dLge_I(SWWZT?({00!& zTjYxIvV#Bs03~!qSaf7zbY(hYa%Ew3WdJfTGBPbNF)cANR5CI;Gc`IgFe@-PIxsMd zKr%Z3JOBVCbVXQnWMOn=I&E)cX=Zr0Dy!50Qvv`0D$NK0Cg__0P0@=06Lcd02gq4 z6}kZc001hHGA;xt)|CE{Y9D{1NklIT05>)unH-kX~i42#x$fXzPV+q1EVlUD2Hxfr11$FQiIIT6 z$YBsa-(iC@C-B5xio5y5ErWH=lC}g%>_y0P(!ew_T(!mjNb~u@f zyvY|B%%B+t7i0blTy}NwiHi0|+vFH*a75%#BuNR`4rp^C*dyxYC8vyglPQ>QyB61@ zMku9Vn{u|nliS0Qp^$&*#T$Qce|%PlA=+Dgi!&bYyk>pcon7SMp1~Lk70m8zqbK*? zWFauRgtt|&Ypin^Bw5#0kl!=_2Rrw+L7cTBMI2U~@hA6oa$1G4#=H)L#|qyJqQk<@ z8o|=qc%{HN6Fjmro?qM^uMt_hqaF6RV)i%;qIW3KJ<9;0kCi$C_bHs=+fCR)+{2DC wJfiN2RX+&0!e2o>=vqv3f=Y3hBZfY!A8|kx7P2C-Z2$lO07*qoM6N<$f^wAU@Bjb+ delta 510 zcmVgdhxrrP5XxeE-+IsjlATLcwU< z{ljcxHu(yjRzw_zuCA`GuCA`Gu3h1qoS-}0<{#@3&vF{av1YNwZyUJHDTc8Y(c%Lm z0e_Ky!ytaX!v<#-P+>2{(|q8T!8&IZBnTo}&hRuJSfUwpS9ycm{36jV#SBk#3y9IB zC%F8oXy9qCJ9X=;@@bln`R8f6!uJe%h5s$ETtJ=E49N@hCHD9KIy=L4bEtZOBjV_= z6c>4uPcWE36AVs;`A=}&bcqj?tv}W#$6$khBO-;YqB*2;K${c69??~vlO)`mM4@=# zXmLAggq$bvCjK@1I$)0v+7umUIFvd(7vpd`9 z!M!(G2#hY_Z57Hj);SE4F3Y0GUo-#*8~3(BoV6lF99Eq12lsYzT9mQIybgoM3SSLn zqQlD08o|<9d8NQO5hMBR@D`yk*7e+OMb=VF=@REj$t(e+vV067zqdi0001UMu)eNF&hyt008P=0026d000+od=j0w=b|Jzm)kVDZS+3wElMbw$b;lt>c#3|eMwzvHk7D7RED4Ge`Qry=9@TNDLYe2bBr0DwEkxV^?vA2QH$?DD`0 z*#Y@lD`0b$2yh$+fFRH1sE>W@N{)X$-X%^4Vw@hw=#Flh4~qxbfa+$Yj=ke7b z9UhNqQUPopKCnPRtlU$4I0!s^Pz8AW7Xieu)99K+k531I_2~jE9@9DWok?5+77uan z*%4p$`Or57iV9txhQc!`0T_Jh(-x4&hrkon1^llCVDogdm-$VgoMMl6f%$)OB>cN% zB>;!RRUf>}R-yjvT zq;A7HM}Zd>h|$%$D)cy6iD?{E804Su0;Q7S=gS-t7M9m{g4XI%B9GJfwPB6%s(>*z zAx59qSU<_Cm?MWrnk0!vXMun4vq~N(eQi$C*j9xekC~+L6d{>;xy(77?n<#cfLdBv zk1U6iz`0F;5`e`?U@5#rN>Ku^I9qoB1&622V#%_}(ZfDE>|%mEUU8m|oeqRa>hYVv z(z-xgZ9n!~i<7?nvtflBJxCcec^{p|JSav*oyE}#^(nb@ee12s;yiyxGX~d6R_Cz6 zyFlKhlBlpZ53bx7c#Z5WEBb97bIv$B8_raGlBST&Z|AHLfWcW{E0xMy=A{o_;TRmy z22p{YRsj!u_5Qa4pgN!Dxbz7DJn)A+^8Bi})yaoFZ();5XX#BG9TzJHCRP9&9T2q( z7#sF0JkpP5I_demmI8l3P$G8|HW8lMbkIdH{+ z_bBvGXzyZYP*>*gr~2JNrQa;%liuF;uk9PCR5PiSTwn$O000R9NkvXXu0mjfy!wfS delta 919 zcmV;I18DrK2agDl7#Rcu0002CwraKj000DMK}|sb0I`n?{9y%=AsZ1e008P>0026e z000+ooVrmwkxf4x0b)x>L;#2d9Y_EG00(qQO+^Rh0SyKt1qqE@4v~o;f51sZK~zY` z?bOd}6G0RQ@VAgT4rm{sGQJlbxC7RRk}Bd)fU=c;7df*&TrY*I&4Tf_=MgfI`8o z@cg@gVtC8CT{i@?vt=jHe{(UcncHF(;F>MY051n&1d|O@oI6wY9Te~C0u~ks>qL%? zxpAKF;6YFftttC9iKd`H8ghu(0LnpmF1&5Wc{T<25bxaJ$2t&el&7MZ$WHTZ3QCBj z+6}(3!E~{NcA{@nu!d_+fNS<#=d}~c(=&)ItJ=3NKoi)cEjJKfeq^Byx%zAiTgl)(Wq|yW{;L#77q3z!ug}mIxw~x zxMtnUJw#S|B|PJkWs+UYlgr4X@O}`TcB$ zVX8i5hMes1s?1&+-vB#ueYIa6raJTvDl(tkSPyq--$pXi*+*s5V~HYYw0Eu6#mS3JpcdzC3HntbYx+4WjbwdWNBu3 t05UK#GA%GMEip1wGBP?dH99agD=;`ZFfi=^qFn$0002ovPDHLkV1f=HrAPn( diff --git a/graphics/pokemon/mightyena/overworld.png b/graphics/pokemon/mightyena/overworld.png index 4dc936895da74afbdd91c48265b18d1ed63ebc2a..2765fd4fc05c62ca1e9a5ebd7a1030d71c6d5131 100644 GIT binary patch delta 20 bcmbQh-p)QDfKh#7pf*d$^~CQRJK325MXCn| delta 29 ecmZo?pTIsLfYD%Lpf)c9418RY`)OkXJ2L=h&If=1 diff --git a/graphics/pokemon/miltank/overworld.png b/graphics/pokemon/miltank/overworld.png index 351fc02f878fad696d6c4b818ea75be073cdbd14..1ade8435229a6ed1b9053bc1f205780f914a86ac 100644 GIT binary patch delta 723 zcmV;^0xbR12g(MJ7zqdi0001UMu)eNF&hyt008P=0026d000+od=zsCbE8!Xa{ z+|&XlTzw8GACbDq*~LnE>E1&=;ixW+iLFH<_|zpZ=id{$!HdAHTVGSYC~d8Fj>qOR zHs$8W?r^2Gb>)y+3TGT1)~*&_tF>(b6HZ@&okw)Uz2b>Wo!#K@fHb{XyJ>&O^f!2* zB9SOu=ZYtGu2)}EzIdzSO3vb#)~M|{g%3wwDF`k)$3L}14!3puiJ#+%Cl-P21DtW? z03lDIP;i3}hcZ#-%uiM1o%2pZqZn?_@%qSJwF6M-1_CEsndk@<8KN;rV2F+B*4k;3Xi%{JD>HrkJFLY0>N{W$HleU zsBp^5ILEUE*&yEM*m#5r7YE^|35a|Q*1uuihSm&6UgbwT_7rz5|6~gc;=(O zY~C0wAT{-21%-Bav5_ahQQX(98{hvk`Aer?P4U=2wLhRcC2PCr9#8-P002ovPDHLk FV1lJlTe$!L delta 860 zcmX@bc7=U{gd__y0|UdhZCTrZ6id3JuOkD)#(wTUiL4V9r3DQb7+xhXFj&oCU=S~u zvn$YMqOZLyW0JSK3quF1tOrmFdx@v7EBiA>UN&X%UnaV46FcSWTRmMILp+YZy=<6& z*+GQ;L-EZ+6JkW>W(u$LZC}PM#4XRDx%QM#Ys7k|=~1Tw(oY0-uGCW13!b(`T*+~! zkYGrvBTMPYNvBpuN@#o8F^Wn~+;D2+d753O2eeiE_LBbK^o24z`len{<3!YnjmU*FEoI;L^ zqT+<4rJd=EOc<;bql=PmNNEN*Wz19wQDb#F<&yfISB16mNn$qZBDZb3nX=0AKKEpYYg$If zUYYLC?>YNNH$#k@)ot$P^p%e<{5tp~>cCsE`mNGiZgDWBcOLw8HF*F3nm17eXENPx zzMLlEdE`P${B*N-M)g@zGSTgh^Xqq*I>!XN8N@sD$Ca$i-Pjnhzwo9$$Szpmz8CL$!}JIBXJqSBLU5?PQ-?CA;KLx5)2L4}bT6&R0^% zdi2HP*u>uY4azmQt=x}ZQ+UT-^!>yFIroE1bIrxY_dm&&_~`ze%d2tYKI2ms>5YxI z+iqBvH9Ks->pU~LTx3qM)Gp^Ak!L>aeco3fv}^xDlgHbhuPLy(d%EOKqJV_I^@its zNBOs?v{?T1)^(iWd*biUz#aDXlYak^$b9~4`G=0+ZQ&0c3f9&?(GPA8zJ2|t{&jiZ zJNBA9%yr7Zl&V_d8c~vxSdwa$T$Bo=7>o>zjC2hQbq$R|jEt;|O|6WKwGAw+3=H0Dy!50Qvv`0D$NK0Cg__0P0@=06Lcd02gq4 z6}kZc001hHGA;!Dgw;!tY9D_QNklyq0b423O_P!^N-f89#Ln>e)uS+{Bb z_{=z$`3~p^u#;uEbm`KiOP4PFB>})6@NXKqKFx)sl!gh%98v~EgdCVY&D9`^6HYj# zOjt@m%8C91mw=f>g9gT23l!BLz$dxn(<73@gflJ`zzRUHK%eGNQnG)9Q3Dgcpq$ad zMb0Rm;-tJNj~W#p*wuWZGM&qL?-qvxZ~a#z`nn> z&8Ilf7BD)2W4_R?K+u1{JYeY$8i#khao12;^VP6{2`6I}s=XgOz!zQvZgOkP__v{! zb#)WI!Le2@Tq`;S>^JnuT?6)ngYggUcF49%xYi(G=hf#{U-w8ZFTop}q(LoEk$%p_ z!8g6VSX_QWzV!xuj;$cG+$DNpX?Vc2TECrhU=MJ{O8jQF&u$hAA?6TpQ<0D@%z8m84efn|z5ceq%bNo}CGlt!7-gdN%__W+{?b3!FW&YY5T6pfhyVZp07*qoM6N<$ Ef&gA2A^-pY delta 623 zcmV-#0+9X41+oQ@Bn|;{Qb$4nuFf3k0000mkx?#x00000002sFYRUir01#tgPIdqQ z03ZMW03ZMW00000003gS?)m@#0u)I^K~z|U?UvDY;~)$~Es#)($^ZZEO2SRtwFIem z)4q7laoXk%Xav~qvRt}!>C&Z3m;RFg;2-!Wja={MLQ+b@gkugV10q5WOz-Au5XA{6 zoKhx#ETtgjM8Ci#U?$O^fic$tMKuWUPA>WMh~zNgj7tTu0uU_FyE&AUEMe5ZgfA#( zv~ZC#il;a!FUq3^h8$S9C>TBE60js-W=JJyV8+3gSUyj2$kv}U7~LUbE-S=0NeJo2 z!3xf}X0z)IhrYieKj4h_fFB9c$Dn~R*VO@kU8XafY-UU74xe#x)WY(B$i$_(6($_} z{@ONsXJpEOwt&$I9P@>C1>6QE9Qz}t1SLA&xNE4a`D)m}gp;uf)qWlm&N$llCb!0n ze;R68S2y7c9BbvmwW3qN-l0$K8n7oEjDK*qL$+PQwFUt@uRgc>x<_((30~kN4QhdZ ziu8Rh4!+6lB`It56Y{M$=yPlZndL6g3roWTrX45WP`d)$9=sh5YGEdspP~jDj~bLo zNoFwVuZIA%?D*mtG~l|f7SO@C<9INr=dMfB`*b_F_Xd4VBt_c2*@gP&-}npn43cYA zVL1ND4~C_00ZV}<|8oahU=2oG9N0`&!E<)maLnavO diff --git a/graphics/pokemon/raikou/overworld.png b/graphics/pokemon/raikou/overworld.png index 8936847f40555b74edf01630d394e1e823a4e8eb..2bad9c9b2a7b3e320a39e7f972c5d76120f24c50 100644 GIT binary patch delta 999 zcmVz1n^427i_QK|L)-}dYsu(c9kdSPkm5m6j75q&M~eMm}TZ9ZgS|G($LE2rcz;#XCo?f)c}9md`5L@ z2Po0m@ZRQL^{Ho7XavyY1D6(ALSUH*jS7JsuG-d>Pjd=&I4dOSgL9)sdVHYsRUi=Y zIZ66rhrc^W;?{gE1L$xsHwxrdfltO9X!GP2$w7VUGKU<+B{un6fP?ZRke5P0kBg>O z-}(BG!!I1)@2jM#uDecLB({I~DFPo<*?QM^2}KEXIQEI>R?XeI44}oeKA`WO6714K zxh#vc_$k1FN0gZ{3KYuBL(4^fo9ph5apjXsy)}oN0$LQD1AC`F9F&mTJWbu9zsjEm zDsT&;B_d%n188wn2zEMI@X&p(tPyaQu3B6<3k2$fr#&ZWo8mN$Szv#Szw{5>qt@^c zWLO?y`Y-kM_{{zy#6>Rh zQ?b>N<5$U|;Hay|7O{WIqsF(*8srLpA4Vof7h5a8T|O(1D@Ik78UZk_Y;ol= zrjb*9N#J&t*W;-Ngoy#d3n?zo3LQT0;<;7p(0bX60KoMqLW_b&IE_3ZQD1KI0oNWj z$kN)v`(^~t<*3m~PYL^Ga8XVJ@@wyL;EbibUBxlYQgYd|g)e_yXb-$8`(8rjd*;TE z5rEbu{<2e_9RMQ8-1-q{kDJE{s5r# VHPOYb#ODA2002ovPDHLkV1miM0026e z000+ooVrmwkxf4x0b)x>L;#2d9Y_EG00(qQO+^Rh0SyKt7y2|UMv;jhe``rZK~zY` z-PN&c+e#P!@GC(O$YKYnOD7-pZV+~+64c7W<1J@dpAxGvrU)rx2a{+Gl)N`})SzbR zB1-i#WXa$^z{|s1$a|CUR5Eo6rddpSvaOSJ&80)9_Jd&kKA*l%cV}G?`c2|VweqNc zI<|4`QUCM=a1~b`F;bgqfAcZ_D5@CC#YN#Q9gch#iT%R~)VHy0)PzQoGa8i|a9$<5 zLYr6t-KZ0h(MH?#)WW^Imm%vFkxflDJ5`;CEVZ3(&ubx(SJUnQ5n0i7-PAi3ku9&Q zYnDeuUKKQOM`Zcsp}FVeGveKLX~&M&6q&AB6G<4?D*`{Uc1C_Xf8P_%8{X>$mZJ0NIN!h{bM|Ey zCBivamXJIM5Bho8OTm{*|9Eh9mCPO9?2+F`aZotS%BC;+ z**}5f99oBNLJMAzhfL$Nzc<|L!wGuWoAVY#;I!_TRhK3*ZylX^&LE+2 z{h(>QgHwRh!HLkbHh8-U^I+C?t=%MhzKbyol0|ZzJSUl9K@-ne11Xs!>7EfuGwMa| zx5->p7lj7NEj3#Jv~}@rM$gMcz0ORZ!A(>)V5shre`3M3VVYyUPa9sb?>CkYG)Jf~ zfF6y5Bu@?RU@>C_dagr?1=H&^m*0O&iUrf_Ua`UOHXSPs=fx4j`@8@FR4kZYr#Tk% z=Vu7V)1o>-g(wy*70-JJklwHwU&zu+>H8wTWPAhvU)KrbcZpvB z001R)X+>CcWMOn=I%9HWVRU5xGB7eSEif@HF)~y#GCDIgIx;gWFgQ9eFukZKrT_o{ zC3HntbYx+4WjbwdWNBu305UK#GA%GMEip1wGBP?dH99ggD=;`ZFfh#ZkQx90002ov JPDHLkV1hLA@Gk%W diff --git a/graphics/pokemon/roserade/overworld.png b/graphics/pokemon/roserade/overworld.png index 6011e19040c8d4b2e95fd5d5d7d8ad28e16db7ae..f5aa7ddfeb6620ea4e2efdb84f2c57e11c09a137 100644 GIT binary patch delta 685 zcmV;e0#g0R2FV7HsDF$}L_t(oh3%Eywxb{ng#k&BderxS+u0lJ%te6|XVzSquC8jo z7}{U*7yO?D7-56^Kwgb9yGw%$7Wi;6xnHV0 z;>MVmyu`m;8Wpm*llWGMix6a*m%!{1_1)sNJjLa+Ko&0^)rCIsV*!gxtO7gwOkU!L zQXl%Y*B^0rZ4j=}(rd6PE8pOL-=WZHG29;K z>8JR4QlScreB1XaUXql`JMxDd0k@sI6bDV>9zBn;;MW|thZoJ{Sp@|y34hCrJ~kB_ zwYk46F3`7QlOQ_QSXV*8PMP4iJtcwV44))B6aJo;BoPzUL7Cba3^@Xdtc1e_@29~Nhl3!+|0n>oGeYk>Xx7S&lE>?LWLMGDDCjX4m5ael4K!o z4~fAYcW6SDF`*p~atK^IoG)lRn|WHc-y=LfF+SSlY!dj2cU=1|QF(?#M?aQu@>6Ip zLw@1X;Z%iVg1l1z#^(a<60;@xGdhGYNHXv!@+JoG9jIFXo15`%0pCb`?0?!XRrn)- TCA>T~00000NkvXXu0mjf<4sKE delta 684 zcmV;d0#p6T2FM1GsDFz|L_t(oh3%Eywxb{ng#k%`derxS+u0lJ%te7zXVzSquD04Q z4Ld)ebB{gt*kg}9_BK!Z3;s_6%&@_Ipp88&4u@q~rU9lL>LTLb4 zh;dM+ImeH|$8m`)?%vU3h+Pkhvp+S%h%$Er%sJyTcw~Zu^?#?F-KD_=3w*ek+%HWY zac4|SUgMuGoeEjpNqj5BMF?`4*TC!%_1)sFJk{m1Ko+ka&4oVkV*!gxYyt=ROkU%M zS|9rL*Pn5BZV;}~({FNV^I3Pwpv6=Ej^EOh&lxj$)OdO*_Q?&-*vsj1ho2+Xcd$4L zq)C-tii_Ten1B3ti^2_F59xN$*PZ^6fWfgsN;xYm=ahOQV)624#>x%ulnay;YLz-O zW^!F#uMB&=7S-$AX%VJbmyoLYxp1ZS2C=F`d&A{NCEKS1d*01)K z5`#PL(1a>uLI)n?5SRy?4`}?i@U-kdM|gf>e6-8iB=C%9T>mN2c!9$}KbCOvQ|Tx} zzTq<9RE1-Ld{6+!=K}o_vnBd7JA^PuGV!SLCMED4XjlN7oAGS{-$;Dyf7&l_nj?e? S)k1av0000EKgDgPHfC`ii|MH@kjpT%*&8v&Z*w{ejSej&rglEJ^|F$+3ADuV|YMFEmEVgV=- z@=s~Bpd z92Y>)VAVQ2EY5CqghsxpcBR)P2Td#>(4>v>_AKkRh5!CU~0->#D3Tr2L;o5PR ze~ix}usqyU>8H-%fIIqe=enXmz)j$X3a0CtoDA6TVZ6FKFa+5Uf|dTf9qFbvq} zCl`0+!vlz-rzOs_U5y!_9X}%Ud6fVKg(aZU&)!yAE{YV*ERO<}GST1R#XZkKgHSr_ zsYsf`m(yXx{yGIFhGqUnZ-7o<02#8vR|E2ZTwelIC=*KYLz2{ zcR`dE{9F7CF5toy_jcKBDtb_8eN``GwM1q@6rBqKlAj9rGuqA$7Hg7*OImlwr}{9W z2*HUR6nju%989(g%nX0S#Vw`nHuD}!3UBw0bC%3mXPopfuGDc{z41>SPon}n%iJnP zkexEk0sf`o o;cdJ7;p@5y!|&D%zwNKLKaKSm>VEnrXaE2J07*qoM6N<$f-n`{0RR91 delta 1090 zcmV-I1iky?2(1Z_7#Rcu0002CwraKj000DMK}|sb0I`n?{9y%=AsZ1e008P>0026e z000+ooVrmwkxerl0b)x>L;#2d9Y_EG00(qQO+^Rh0SyKt6k|Pn{E>Yhe`-lYK~zY` z?Uq4r+cp%(B?tz36eG1%k0$j2Bub9l-DGjdjxGYZ@Hw#Vj6AScBN*a)-~l=J((|?t zxJOB(sBCu7?l$zni1iEk-v5#BQMBXyu))wP{9nzTpJOlUzico(+H1__=h!1%P?o4? zM$Lreg~Mg`$b6a~83kFKe`trCB;PII!?xtrgnOIa#?|29aax}Xm|te5QVY31;X$Bb zJaN4H7MxbsJDq`I+d}^my9_qk<)y``8LaO})dlocbhkbu;O#H5iwU_;FpsiqWSzmR zsafpj`+X9U#YV3{@erzW@?>kC9m6{Q6#<*?MMkK_dg^s^8wc@ze@{cYX@&rvVqGqh zB@UDKiIXv+yR74J!cYyxDfr*BP*q8!f=-?z!Xlr#t=9Rr!spCm^8mT}_s7ln)ky0Jhk5)n^d6 z-kmz0of>m16s_q25GW$xC1$n&oR`!h1_CzQ6F2L1fB&@J+zwIQ!!kV>Un-Ge+>WCvmAeN zNkl^=H?|q2DdmG2d&q=_|`7yfHQG|`d8qNdm%umE~&J>aK0es_z1;3u38c${e z!L509!5E;!;lSYr&JK}9jt#OLYFvM90MNU}oyYeIfQNjQAL9- zi{ec!Nc-${jV^MebsFL_K`{tfdIP6iOu|~_bC3g@3^2wQKAhY1P+fu^CzE(>X{8l= zF7iT$w2bnFuNW=?Nw>Ji`JNT&w{V~H+`za4uW;FDDb)&Kl<0AJZ@~*(thM~Tz*`Z! gz!g3<_0RMLS)m;|IWbwH000UA07*qoM6N<$f^RR&UH||9 delta 617 zcmZ3+a*K6>gd__y0|UdhZCTrZ6id3JuOkD)#(wTUiL4V9r3DQb7+xhXFj&oCU=S~u zvn$YMqOX}OW0JSK3quF1tOrmFdx@v7EBiA>UN&W(g1{%MCN{{|Pw{kd4DmSr_L5bhvm$LAs5d%c~0&#F`Ii-yzKJA)y$QG*OnPxYz=&q=ThEuTzthZ-ajF>mqq$! zeHYqolDXsU@%iQD{RbjKf#B-@l~JqTgsuJg*zxApwAZWl)LEOX^v$!}d#U*!bLrip z9hJU$yl!*$1U&y$e0(8$Mg8`a><<~!`BxO@elXb@`)Oa}GUnaWB4YTUpn> zZy|HrUGuwBcR#$Tzxdyi>uIII*KemJpLLwfI5F|YwnF)5-!4pxzu_|blZ-kaj~|;E z%l4Q}0xEm%7Aoq#v5X1OE}k=^;>9CrH-)gehpG(^@)!i3`7tqGIW=b^v&xI4`U8wX z3VjN*I}`YJ?{PF^o{_&#I)P8=#HT+w4TmaJ8&sG4+@r6)^Zw(foDW2DomYNj@#y7E zpTISrXU4;+T-i$J6mG9=IW&9iof{umc3beJruEj=+&M1KrLWNYB<q42`r6EUXL+ jrUs~dMA49&pOTqYiCe=He%?90KphO8u6{1-oD!M}+(Z6UMD&RB$dC9#5lz!{5%G>YKZn`3i+snQ%1yIsYRz!V=T)EbEbpDW8q(xG zAl!tI!Pkwy;NJU>IaY{Z7!~FzRQG@RiVMrTK&=uTI7V0eLDL~)X!v(t`t^J&by_9e zX0kWA<`RkARw3sq0o{QUMX`QyF7J?Q_;)VWKWKk{rS;{2#X-I1B23Zi6u7;QwSXti zBGw;y&OI`7toTpd`XS;m90S^Yyx{^dK>Fx%&W}5$GcV=`_1h8iET#X6PP_%~kqlbpV&_=P__hl>>^o-U^$rG3zCS{y!=3D*C2-qQOeU-v5Sye$k&V{0pX kU*+ohkM6s>cm17y0D6}hYsJo4u>b%707*qoM6N<$f<$K|YybcN delta 706 zcmX@bx`SUN&WpavO!s6WiqK8Q*xiIEHu}e|u%4 z-)#p8_7B?gCRp8wXiD*xWjX5n^oNe>b4C3FEGM{>g+k|;Iz9XBrIj*4B4ba1q~ofP zc}z#R^c~|`KHn_g=hnM9Y^r_g&!6&tYs)t_2iShS66|mL|6)zl!>P$zSG~2o8h2A( zX4|SglJj4O##J&fH#BQ8AE@7P=q3+u?M`{Pk)Bmb5$3H8}o4D9i|6%L#U-$R=1zR*5zp~nS_fW{1dJEpo z%GPtc_G~zD@iyOqFd5hQua|g_uDi>+o_n9^dGjB7I$ZLTPAhoS-RX|mapGe3AudL> zMFj_MSsNaH|1i_|=uX44Z@UhiOJxWwQ2ac9XSdA4^OFtC-WzNcSzbOR>L~Aqw{MSa z@IBHb@bKI1MHk9$&Xm`(+o>zjC2hQbq$R|jEt;|O|1+pv<)n*3=IBuRVzYt eKsDs%r(~v8;?~e}{qS6%1_n=8KbLh*2~7Z$1u?4t diff --git a/graphics/pokemon/stunky/overworld.png b/graphics/pokemon/stunky/overworld.png index fb36b0cb876312e96a79fa6c92162d614de444a7..350aac0b4d3b62ec26691b8d633e5d22d0fa7bcc 100644 GIT binary patch delta 20 ccmdnYx|Vf90HfB#Ks}adwYj%9c4{#J07sDq=>Px# delta 26 ecmZ3>x|wxC0HeXgKs_!7FkqFPAG@(xiwOW&A_f!y diff --git a/graphics/pokemon/torkoal/overworld.png b/graphics/pokemon/torkoal/overworld.png index c3a22a1fb0b5f4d6641a07880cbb96ce30023546..29cb8a45e1ac878ee00c0737d47a39466936248b 100644 GIT binary patch delta 708 zcmV;#0z3Vy2Dt{1BrPCgNK#Dz0D2|>0Dy!50Qvv`0D$NK0Cg__0P0@=06Lcd02gq4 z6}kZc001PBGAINF@=nu{Y99fJk%}RIZ7mPf2$gR@?y~;~=)|Jg-!MpIwbCyP&`rIG|7K63^b8Z#RS;|#b zH-YoaE_#)_z{~=fIn8KRm}TC7EWE-)aD!CmXl|#sIU4A5mYB~FCZ^1ix&%8M5(Ozm%)GQ(a;cIF)??!|;wBJzMikd4?3i&dFyu7I z*SfCiXD@PACSued0+}!UUT;U-)>ligO%$;dSIg{xv%#jf53hZo8o@q)cac$Dp_}BX zrsrK#pZgkZQ-w!stsZeR=y@r*X(ph@T_A_n6fW*j<*@7Pa-}<)Bv#@4q}ihZtHPbD zRviF)zLl6!>l<-XDC|UuFst1A93R*{t}!K6S+ao3r=9fM#CNl<{2}TV~rz%f@;0#uNy? z-C`kF1RtsM4mCy@)$*6G7FZ1Ke+g07Kxq=&^tJ@L!Hu_mzTG7y?5B-CK6{5YuIzMM qUi$gP3;gKR?!ULbr00(R82Gl{ny-9??#5mjihCY9?vK9n3jrmI*L?W=VkO|F@^TB z+xqDP{z(ZUnL;jcEGDg7xX!)LvMy|&Sst2sfAlxvA<)$}Lp0dXf6igzM7TkL4ylI9DlmS=|KAGrQ zf3WZh55Wymou_$SD+3*l2^0t}6OX~az+@{B01PuMZzU|`5;kgs)J)$d;9tW3nHKLj#g`n}(d zxb3f&U|T3+DXzBJ0cV3PZ=YU!Lp6haf9@iqx~s9V?s1JNvC4dxiI7U58T`SyppJ)?R0j7Xp>gJCzOZq2XrDHiBlTfyh*%%Hf1mji z*01=*A8O08Ak+fg;5TRQg8|JPk;Bp+=dV68+fiCJ&WAUaK=9)h3&A4zOr3YAG0Lo# zzkId8VsQUUh`I(!lh~oRCD09Sy!G|%DJfyUZT#`sJG60Sr`z(<*Dnt6qf@*8-ujZB dJN{$*1JsBiul*Fl_W%F@07*qo1w^hwV1hx*P#ypP diff --git a/graphics/pokemon/wooper/overworld.png b/graphics/pokemon/wooper/overworld.png index 28fd4df96c43383c3dbf6cad4beb96654c00dac9..471039362dee25ceb3b2c399afe60a337b53d573 100644 GIT binary patch delta 360 zcmV-u0hj*$1Ly;gPyrs1Q6dB=o0sB|i64JGNkljsZ=VJN~KbWO#jHQx8ImK_uR}$7Uc`xh_}rxoLFw= zSKFI`ISh&AZY~%vc`U$-05@`3l&^SiUHReo!D=_>`Afjl{1?{6{-?Zu*`;A3jhlbd zob*`XG>?G(d^-1Z1CZN8CDkD^)cQ{+u;QW-@iX3Rf0l9bY~JKCWQ%C+X9IrWlC%(5 zZ*`atr(L?tyB|C;gh_oqxg)sfbch!4yMA8kM<4KbO^J4uZ22D!deAUY?%26bx&J)UA$^9~zuwD=xKuKO=8Hz71r zwKz{I_4i@dRU)gY>xb4Z!dw8VC zc>k<>JZBO;bjphlR-C;1VM5KJmk(YtF-&*;(e?e>%>6RA`|r+quFpE}nSX@%>-nGl zom#pE57uYb9tr6i{F=bF6VBzV>UIU{Y1cN`?m+Wy4^bGe@uJ5SxUY7vs%Ae zbmz3XYY)WrJh>V_inaeNxV6;({)Y5<5{H)Dn}0_zrsS53_6PGixmSz%D{7Xx?DqQh zgPq+nV}?fgo0#Qy?(^qQTvGpd#`~YT<{B4%9^l>}=^xHzv%|-}&7@`@dxh1_AI$e^ z*mP|-L=?BhW^i|GV*0LhFtMeK*F;(49`~1j+!_<^FbGxf)kHv_#`HjYNfWs>Yr3FiAe|zSOT= zsiy$}X&e1zA}Lo|I0yA<7$)@wNWzZm_Qjt#)JKT(6($S@dlLf+gselJN=SQ$$0TXw zGz)Iea~kSddJA(!<^So%?^366#3^ z#VhJ5&5#Cx!(LhsjvtPk@hVeDI3{?sCz3Q9WXMJAW)r$Q_vw6ihoEm}gh2<`eQXdW zT)EV1`*`DV;522&a|J9Ja(F`Eh8;EO62gRgp3a9`_E?`TAxi7D0e~#8r=+q7cU)7T z0XwJbuoMPG9eaGowOvXB$31_>T0Nfqj_2-VMrP~p6C84STtr0EpL9SR9BSh|B1-cL*P=XlUR&#}pI z`ZD8?o^^p5H~kW&uM!m=^w0B#ae~jxxRkzcZ=Ch|b%_-Jp;@_FAN50z>T7%n_M>ia z^t|RA)+0}?hwf3m?2?$G)6gMgl=#lbSKj}@`g+QUN&W}nMRKDCw9u$3wpXZhIkx*d&w~S zwu1=!hj2cV(iIEmJAAwL^h4yPha%3a7YBcMwDO8TbF=tF&DOdGk*rrx67U? z_Qu^PtL3oB92#GROWTo~(Vlbb^2UN#V_F7d&+TRrBFX<&>uxCcjRI?<$GdGJC%K27UP% zv-3UHzU7x(e2drl;li?m(#NC~--_Qof6o2v#TN!A%pz89y_1|H)e?~_!`&a+cTc!J zaS7X$DnzOe= zZL|KNFv(wrza>*geqx+$oT}&Z>wPv2j{;^KdnL{&bZi0JlFf{(-=DKueYa6nJZkw$ z@k<=b-HPN^+U#$bdsc$YRH64%qu9@XJu*+<8`PJ66I*DSoMV38Gi#FRi=(gS{kyw- z+m^=1RbN9n(z;uv-^l)-^Fn+I@3~#C-;|zxCeQj`=SM_ z!kaa9ixOf;$`t`Q|Ei6yC4 z$wjF^iowXh$Vk_~P}k5X#K_3X*wo6yy*=T4Y~O#nQ4`{H55`meT diff --git a/graphics/pokemon/yanma/overworld.png b/graphics/pokemon/yanma/overworld.png index bc4288ef4b9849680ed98a6ca6767846f26a7ec9..fbd1be82bdf4d42c2cf5af4a27f65ae288077d47 100644 GIT binary patch delta 876 zcmV-y1C#vw2loe%PysEGQ85G(A&>x(i64JGNklDPcO*eD zP>j=b9<5c9HoGzB2yr`(C!ToXi6@?DAq4$=$))Vye$P1oO8YK^5*pi=TpDey)#lQ` z4W|I-fZC^uhtOJs4<7LSJ8pak!J9R`=LhR|+2TM_qqvED=qD$|t?TVzBV@gDwG(W1xr`R`z3VJpU*$ zt!aLcM1=<4<)9b58==Obbcn{mV}?D@K(eH_22#jl#GJ>cS6J=FDlpFWOBb;jh%gV3 zrqzK93=5^^S6eMEI1C)BTIZzXF_w}RWA+56em8K}IcNzGEKtn$TLP+q$$o#;SA&)~ zU2`7ZTh5;I)9Hy&W(w{!&^{~uE8yrjg=+R{0+hlzuGD1zOhDsqa)4q?!YBf9nrR(K zbX!~YykrEU%oItrG(C@nzso(omguE20qVYAB4=fywtawD&qrt#iLqw5=AAdecL_t(oh3%JFmg67{MGZoXf&DMH zB|)$u*iNVW(>g^`m0L0I2{CQk6Hh$x#1l{SP>O$k$!)b?8_qmbH1y7mWNyNNzaK*K263+~D?!A#VJ)nES5CTr0 z4IXwrht8!cj3uwC{EDNa`N4SsBPBHVyz{j|`pT=ym04EhzgCsl`Sbw#wl3MR!sv3* z3;QFVf~GbVCW&PAp9$Xi>t%r3Y=BI8?tc=gM34p5PmT(!!OHg!4hevgB1bB)vY$%l z<)g$9d48}&Lk8aEfD3*Yq0XUpNX8*hh6C_Gilny&Rw!d6T*l|9u-Q#bV4CgME>bs; zU>+dk)j;29jX%!1Ba&8d#z=a(V7=y@dUemKX89=&=a6UpqlOX1T+Ja{ePyf z1ut>favtAX&NY{(^An-Y6xwN^e^&c9AaURvrrT=?Fox#1F_Zm00iFBF0g17hq6(yG zh8S6NUt6wu%?L%EDS->kzl)}3SlkSpmx9Xo1c0ovFxlS|(D}i>1dVLTRbhzEQ5TK` zI_K4Qd~46dw$otyyXUWF?8sYAVSh>hJv2`CTLMPD+phvk_M*@_FwW3^Pf6CX&w)G6 zL1(l&Q}_jsN48eLFmMRY+FXT%=La~I&ib%Vt}^F zwpYeXTjjx=sQKjMQo`p{lx+g16KhMrz~^}!qSA$y*LD`FK;tKeH5Ub1d4EwDv!~y; zIc~VBV@L@WFGti8F!IrU2s%-m?X;aMI6dsCP4g(xGM6*`w#^FfIR6Lbgi3Q;uy6QQ zk3wwV^fby#v{@gwMPQxk<3e3q6Nexq#$$`DlS>@y2 zb;oH=$!1SQVwYEzJ1%`(-&tpfUkni`O3Bg&VX4;E6>`Zb!|lFvIs(^R;^syPH$y}l zv^%*Be8aWZNbP6-Mf}s1^FAoImsj>X{zd%TrT>ZlAAbOakT6mOhI7FH0000 Date: Tue, 10 Sep 2024 02:33:59 -0400 Subject: [PATCH 26/37] reset item flags on new game (#5363) Co-authored-by: ghoulslash --- src/new_game.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/new_game.c b/src/new_game.c index 783c6893c8..4bce5a5b96 100644 --- a/src/new_game.c +++ b/src/new_game.c @@ -51,6 +51,7 @@ extern const u8 EventScript_ResetAllMapFlags[]; static void ClearFrontierRecord(void); static void WarpToTruck(void); static void ResetMiniGamesRecords(void); +static void ResetItemFlags(void); EWRAM_DATA bool8 gDifferentSaveFile = FALSE; EWRAM_DATA bool8 gEnableContestDebugging = FALSE; @@ -204,6 +205,7 @@ void NewGameInitData(void) WipeTrainerNameRecords(); ResetTrainerHillResults(); ResetContestLinkResults(); + ResetItemFlags(); } static void ResetMiniGamesRecords(void) @@ -213,3 +215,10 @@ static void ResetMiniGamesRecords(void) ResetPokemonJumpRecords(); CpuFill16(0, &gSaveBlock2Ptr->berryPick, sizeof(struct BerryPickingResults)); } + +static void ResetItemFlags(void) +{ +#if OW_SHOW_ITEM_DESCRIPTIONS == OW_ITEM_DESCRIPTIONS_FIRST_TIME + memset(&gSaveBlock3Ptr->itemFlags, 0, sizeof(gSaveBlock3Ptr->itemFlags)); +#endif +} From 6f922df7ef7d6d3db502b6fef24c0a2ce0cfc214 Mon Sep 17 00:00:00 2001 From: Pawkkie <61265402+Pawkkie@users.noreply.github.com> Date: Tue, 10 Sep 2024 06:58:30 -0400 Subject: [PATCH 27/37] Frostbite score fixes (#5362) --- src/battle_ai_util.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/battle_ai_util.c b/src/battle_ai_util.c index 82425a3082..b2e18db740 100644 --- a/src/battle_ai_util.c +++ b/src/battle_ai_util.c @@ -3828,11 +3828,14 @@ void IncreaseFrostbiteScore(u32 battlerAtk, u32 battlerDef, u32 move, s32 *score if (AI_CanGiveFrostbite(battlerAtk, battlerDef, AI_DATA->abilities[battlerDef], BATTLE_PARTNER(battlerAtk), move, AI_DATA->partnerMove)) { - ADJUST_SCORE_PTR(WEAK_EFFECT); // frostbite is good - if (HasMoveWithCategory(battlerDef, DAMAGE_CATEGORY_SPECIAL)) + if (HasMoveWithCategory(battlerDef, DAMAGE_CATEGORY_SPECIAL) + || (!(AI_THINKING_STRUCT->aiFlags[battlerAtk] & AI_FLAG_OMNISCIENT) // Not Omniscient but expects special attacker + && gSpeciesInfo[gBattleMons[battlerDef].species].baseSpAttack >= gSpeciesInfo[gBattleMons[battlerDef].species].baseAttack + 10)) { - if (CanTargetFaintAi(battlerDef, battlerAtk)) - ADJUST_SCORE_PTR(DECENT_EFFECT); // frostbiting the target to stay alive is cool + if (gMovesInfo[GetBestDmgMoveFromBattler(battlerDef, battlerAtk)].category == DAMAGE_CATEGORY_SPECIAL) + ADJUST_SCORE_PTR(DECENT_EFFECT); + else + ADJUST_SCORE_PTR(WEAK_EFFECT); } if (HasMoveEffectANDArg(battlerAtk, EFFECT_DOUBLE_POWER_ON_ARG_STATUS, STATUS1_FROSTBITE) From 2477f1d5cab5766e78dca618d9024b6bca6b8cb5 Mon Sep 17 00:00:00 2001 From: psf <77138753+pkmnsnfrn@users.noreply.github.com> Date: Tue, 10 Sep 2024 05:44:08 -0700 Subject: [PATCH 28/37] Made BuildColorMaps redundant by using static tables (#5289) * Added config for ColorMaps * Fixed delclartion of static maps * First commit complete * Removed config * Removed config * fixed overworld config per https://github.com/rh-hideout/pokeemerald-expansion/pull/5289\#discussion_r1747583812 * Fixed pointer alignment per https://github.com/rh-hideout/pokeemerald-expansion/pull/5289\#pullrequestreview-2286973040 * Update overworld.h Removed new lines per https://github.com/rh-hideout/pokeemerald-expansion/pull/5289/files#r1749325673 --- include/field_weather.h | 2 - src/field_weather.c | 145 ++++++++++++++++------------------------ 2 files changed, 58 insertions(+), 89 deletions(-) diff --git a/include/field_weather.h b/include/field_weather.h index 9805dc491d..ba45d161b7 100644 --- a/include/field_weather.h +++ b/include/field_weather.h @@ -41,8 +41,6 @@ struct Weather struct Sprite *sandstormSprites2[NUM_SWIRL_SANDSTORM_SPRITES]; } s2; } sprites; - u8 darkenedContrastColorMaps[NUM_WEATHER_COLOR_MAPS][32]; - u8 contrastColorMaps[NUM_WEATHER_COLOR_MAPS][32]; s8 colorMapIndex; s8 targetColorMapIndex; u8 colorMapStepDelay; diff --git a/src/field_weather.c b/src/field_weather.c index 3c9f642faf..7d3c4caf4f 100644 --- a/src/field_weather.c +++ b/src/field_weather.c @@ -5,6 +5,7 @@ #include "util.h" #include "event_object_movement.h" #include "field_weather.h" +#include "fieldmap.h" #include "main.h" #include "menu.h" #include "palette.h" @@ -44,7 +45,6 @@ struct WeatherCallbacks // This file's functions. static bool8 LightenSpritePaletteInFog(u8); -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, u32 blendColor); @@ -66,6 +66,52 @@ EWRAM_DATA static u8 ALIGNED(2) sFieldEffectPaletteColorMapTypes[32] = {0}; static const u8 *sPaletteColorMapTypes; +static const u8 sDarkenedContrastColorMaps[NUM_WEATHER_COLOR_MAPS][32] = +{ + {0, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29}, + {0, 0, 1, 2, 3, 4, 5, 6, 7, 7, 8, 9, 10, 11, 12, 13, 14, 14, 15, 16, 17, 18, 19, 20, 21, 21, 22, 23, 24, 25, 26, 27}, + {0, 0, 1, 2, 3, 4, 4, 5, 6, 7, 8, 8, 9, 10, 11, 12, 13, 13, 14, 15, 16, 17, 17, 18, 19, 20, 21, 21, 22, 23, 24, 25}, + {0, 1, 2, 3, 4, 4, 5, 6, 7, 8, 8, 9, 11, 11, 12, 13, 14, 14, 15, 16, 17, 17, 18, 19, 20, 20, 21, 22, 23, 24, 24, 25}, + {1, 2, 3, 3, 4, 5, 6, 6, 7, 8, 9, 9, 12, 13, 13, 14, 15, 15, 16, 17, 18, 18, 19, 20, 20, 21, 22, 23, 23, 24, 25, 25}, + {1, 2, 3, 4, 4, 5, 6, 7, 7, 8, 9, 10, 13, 14, 15, 15, 16, 17, 17, 18, 19, 19, 20, 20, 21, 22, 22, 23, 24, 24, 25, 26}, + {1, 2, 3, 4, 4, 5, 6, 7, 7, 8, 9, 10, 15, 15, 16, 16, 17, 18, 18, 19, 19, 20, 21, 21, 22, 22, 23, 24, 24, 25, 26, 26}, + {1, 2, 3, 4, 4, 5, 6, 7, 7, 8, 9, 10, 16, 16, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 23, 23, 24, 24, 25, 25, 26, 27}, + {1, 2, 3, 4, 4, 5, 6, 7, 8, 8, 9, 10, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22, 23, 23, 24, 24, 25, 25, 26, 26, 27}, + {1, 2, 3, 4, 4, 5, 6, 7, 8, 8, 9, 10, 19, 19, 19, 20, 20, 21, 21, 22, 22, 23, 23, 24, 24, 24, 25, 25, 26, 26, 27, 27}, + {1, 2, 3, 4, 4, 5, 6, 7, 8, 8, 9, 10, 20, 20, 21, 21, 22, 22, 22, 23, 23, 24, 24, 24, 25, 25, 26, 26, 26, 27, 27, 28}, + {1, 2, 3, 4, 4, 5, 6, 7, 8, 8, 9, 10, 21, 22, 22, 22, 23, 23, 23, 24, 24, 24, 25, 25, 25, 26, 26, 27, 27, 27, 28, 28}, + {1, 2, 3, 4, 4, 5, 6, 7, 8, 8, 9, 10, 23, 23, 23, 23, 24, 24, 24, 25, 25, 25, 26, 26, 26, 26, 27, 27, 27, 28, 28, 28}, + {1, 2, 3, 4, 4, 5, 6, 7, 8, 8, 9, 10, 24, 24, 24, 25, 25, 25, 25, 26, 26, 26, 26, 27, 27, 27, 27, 28, 28, 28, 28, 29}, + {1, 2, 3, 4, 4, 5, 6, 7, 8, 8, 9, 10, 25, 25, 26, 26, 26, 26, 26, 27, 27, 27, 27, 27, 28, 28, 28, 28, 28, 29, 29, 29}, + {1, 2, 3, 4, 4, 5, 6, 7, 8, 8, 9, 10, 27, 27, 27, 27, 27, 27, 27, 28, 28, 28, 28, 28, 28, 28, 29, 29, 29, 29, 29, 29}, + {1, 2, 3, 4, 4, 5, 6, 7, 8, 8, 9, 10, 28, 28, 28, 28, 28, 28, 28, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 30, 30, 30}, + {1, 2, 3, 4, 4, 5, 6, 7, 8, 8, 9, 10, 29, 29, 29, 29, 29, 29, 29, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30}, + {1, 2, 3, 4, 4, 5, 6, 7, 8, 8, 9, 10, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31} +}; + +static const u8 sContrastColorMaps[NUM_WEATHER_COLOR_MAPS][32] = +{ + {0, 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}, + {0, 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}, + {0, 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}, + {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31}, + {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 10, 11, 14, 15, 16, 17, 17, 18, 19, 20, 21, 22, 23, 24, 24, 25, 26, 27, 28, 29, 30, 31}, + {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 15, 16, 17, 18, 18, 19, 20, 21, 22, 22, 23, 24, 25, 26, 26, 27, 28, 29, 30, 31}, + {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 16, 17, 18, 19, 19, 20, 21, 22, 22, 23, 24, 25, 25, 26, 27, 28, 28, 29, 30, 31}, + {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 17, 18, 19, 20, 20, 21, 22, 22, 23, 24, 24, 25, 26, 26, 27, 28, 28, 29, 30, 31}, + {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 19, 19, 20, 21, 21, 22, 22, 23, 24, 24, 25, 26, 26, 27, 27, 28, 29, 29, 30, 31}, + {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 20, 20, 21, 22, 22, 23, 23, 24, 24, 25, 25, 26, 27, 27, 28, 28, 29, 29, 30, 31}, + {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 21, 22, 22, 23, 23, 24, 24, 25, 25, 26, 26, 27, 27, 28, 28, 29, 29, 30, 30, 31}, + {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 22, 23, 23, 24, 24, 24, 25, 25, 26, 26, 27, 27, 27, 28, 28, 29, 29, 30, 30, 31}, + {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 23, 24, 24, 25, 25, 25, 26, 26, 26, 27, 27, 28, 28, 28, 29, 29, 29, 30, 30, 31}, + {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 25, 25, 25, 26, 26, 26, 26, 27, 27, 27, 28, 28, 28, 29, 29, 29, 30, 30, 30, 31}, + {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 26, 26, 26, 27, 27, 27, 27, 28, 28, 28, 28, 29, 29, 29, 29, 30, 30, 30, 30, 31}, + {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 27, 27, 27, 28, 28, 28, 28, 28, 28, 29, 29, 29, 29, 29, 30, 30, 30, 30, 30, 31}, + {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 28, 28, 28, 29, 29, 29, 29, 29, 29, 29, 29, 30, 30, 30, 30, 30, 30, 30, 30, 31}, + {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 29, 29, 29, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 31}, + {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31} +}; + // The drought weather effect uses a precalculated color lookup table. Presumably this // is because the underlying color shift calculation is slow. static const u16 sDroughtWeatherColors[][0x1000] = { @@ -158,7 +204,9 @@ void StartWeather(void) { u8 index = AllocSpritePalette(PALTAG_WEATHER); CpuCopy32(gFogPalette, &gPlttBufferUnfaded[OBJ_PLTT_ID(index)], PLTT_SIZE_4BPP); - BuildColorMaps(); + + sPaletteColorMapTypes = sBasePaletteColorMapTypes; + gWeatherPtr->contrastColorMapSpritePalIndex = index; gWeatherPtr->weatherPicSpritePalIndex = AllocSpritePalette(PALTAG_WEATHER_2); gWeatherPtr->rainSpriteCount = 0; @@ -265,83 +313,6 @@ static u8 None_Finish(void) return 0; } -// 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 BuildColorMaps(void) -{ - u16 i; - u8 (*colorMaps)[32]; - u16 colorVal; - u16 curBrightness; - u16 brightnessDelta; - u16 colorMapIndex; - u16 baseBrightness; - s16 diff; - - sPaletteColorMapTypes = sBasePaletteColorMapTypes; - for (i = 0; i < 2; i++) - { - if (i == 0) - colorMaps = gWeatherPtr->darkenedContrastColorMaps; - else - colorMaps = gWeatherPtr->contrastColorMaps; - - for (colorVal = 0; colorVal < 32; colorVal++) - { - curBrightness = colorVal << 8; - if (i == 0) - brightnessDelta = (colorVal << 8) / 16; - else - brightnessDelta = 0; - - // First three color mappings are simple brightness modifiers which are - // progressively darker, according to brightnessDelta. - for (colorMapIndex = 0; colorMapIndex < 3; colorMapIndex++) - { - curBrightness -= brightnessDelta; - colorMaps[colorMapIndex][colorVal] = curBrightness >> 8; - } - - baseBrightness = curBrightness; - brightnessDelta = (0x1f00 - curBrightness) / (NUM_WEATHER_COLOR_MAPS - 3); - if (colorVal < 12) - { - // 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++) - { - 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 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++) - { - curBrightness += brightnessDelta; - colorMaps[colorMapIndex][colorVal] = curBrightness >> 8; - if (colorMaps[colorMapIndex][colorVal] > 31) - colorMaps[colorMapIndex][colorVal] = 31; - } - } - } - } -} - // When the weather is changing, it gradually updates the palettes // towards the desired color map. static void UpdateWeatherColorMap(void) @@ -463,8 +434,8 @@ static void ApplyColorMap(u8 startPalIndex, u8 numPalettes, s8 colorMapIndex) { u16 curPalIndex; u16 palOffset; - u8 *colorMap; - u16 i; + const u8 *colorMap; + u32 i; if (colorMapIndex > 0) { @@ -487,9 +458,9 @@ static void ApplyColorMap(u8 startPalIndex, u8 numPalettes, s8 colorMapIndex) u8 r, g, b; if (sPaletteColorMapTypes[curPalIndex] == COLOR_MAP_CONTRAST || curPalIndex - 16 == gWeatherPtr->contrastColorMapSpritePalIndex) - colorMap = gWeatherPtr->contrastColorMaps[colorMapIndex]; + colorMap = sContrastColorMaps[colorMapIndex]; else - colorMap = gWeatherPtr->darkenedContrastColorMaps[colorMapIndex]; + colorMap = sDarkenedContrastColorMaps[colorMapIndex]; for (i = 0; i < 16; i++) { @@ -544,7 +515,7 @@ static void ApplyColorMapWithBlend(u8 startPalIndex, u8 numPalettes, s8 colorMap { u16 palOffset; u16 curPalIndex; - u16 i; + u32 i; struct RGBColor color = *(struct RGBColor *)&blendColor; u8 rBlend = color.r; u8 gBlend = color.g; @@ -565,12 +536,12 @@ static void ApplyColorMapWithBlend(u8 startPalIndex, u8 numPalettes, s8 colorMap } else { - u8 *colorMap; + const u8 *colorMap; if (sPaletteColorMapTypes[curPalIndex] == COLOR_MAP_DARK_CONTRAST) - colorMap = gWeatherPtr->darkenedContrastColorMaps[colorMapIndex]; + colorMap = sDarkenedContrastColorMaps[colorMapIndex]; else - colorMap = gWeatherPtr->contrastColorMaps[colorMapIndex]; + colorMap = sContrastColorMaps[colorMapIndex]; for (i = 0; i < 16; i++) { From b478881fc64f6b8c8c5336e92e71f8b3126f319c Mon Sep 17 00:00:00 2001 From: Rachel Date: Tue, 10 Sep 2024 12:27:49 -0700 Subject: [PATCH 29/37] Add in-battle shadows underneath all enemy battlers (#5178) * Add data to SpeciesInfo entries for in-battle shadows * Implement sized shadows in the sprite visualizer * Implement sized shadows in game code * Show shadows for the lead battler for opponents during their battle anim * Feedback on shadows, round 1 * Revert removal of Goomy and Sliggoo shadows * Fixed GEN_3 setting * Code cleanup + remove pre-processor branches * Fix bugs with gen-3 configuration branch * Style corrections, final shadow coordinate adjustments * Adjustments to Garbodor and Araquanid --- .../enemy_mon_shadows_sized.png | Bin 0 -> 255 bytes include/battle.h | 5 +- include/battle_interface.h | 3 + include/config/battle.h | 3 + include/constants/event_objects.h | 10 +- include/graphics.h | 1 + include/pokemon.h | 6 + include/pokemon_sprite_visualizer.h | 20 +- src/battle_anim_effects_1.c | 27 +- src/battle_anim_smokescreen.c | 36 -- src/battle_controller_opponent.c | 37 +- src/battle_controller_recorded_opponent.c | 36 +- src/battle_gfx_sfx_util.c | 207 +++++++++-- src/battle_script_commands.c | 1 - src/data/pokemon/species_info.h | 8 + .../pokemon/species_info/gen_1_families.h | 273 ++++++++++++++ .../pokemon/species_info/gen_2_families.h | 114 +++++- .../pokemon/species_info/gen_3_families.h | 173 ++++++++- .../pokemon/species_info/gen_4_families.h | 98 +++++ .../pokemon/species_info/gen_5_families.h | 188 ++++++++++ .../pokemon/species_info/gen_6_families.h | 91 +++++ .../pokemon/species_info/gen_7_families.h | 113 ++++++ .../pokemon/species_info/gen_8_families.h | 123 +++++++ .../pokemon/species_info/gen_9_families.h | 127 ++++++- src/graphics.c | 1 + src/pokemon_sprite_visualizer.c | 335 ++++++++++++++++-- 26 files changed, 1907 insertions(+), 129 deletions(-) create mode 100644 graphics/battle_interface/enemy_mon_shadows_sized.png diff --git a/graphics/battle_interface/enemy_mon_shadows_sized.png b/graphics/battle_interface/enemy_mon_shadows_sized.png new file mode 100644 index 0000000000000000000000000000000000000000..8d0e96885292fdf4a81edac08fed71a246b71312 GIT binary patch literal 255 zcmeAS@N?(olHy`uVBq!ia0vp^4nVBH!3-p)I`?e@QU(D&A+A8$(b4h$|9khYZaKQQ zxOz%+P*#$HC4*&<Wf|Bf40dc#m(vy&Yz&7&&l&Zlustm%5UYe8PhL)e9U$7 k_4G!@J%>7#`}Tii<4F?#dTJ@VHPB`TPgg&ebxsLQ04$|#hyVZp literal 0 HcmV?d00001 diff --git a/include/battle.h b/include/battle.h index d3a7995ab8..66f8531ae7 100644 --- a/include/battle.h +++ b/include/battle.h @@ -979,7 +979,10 @@ struct BattleHealthboxInfo u8 animationState; u8 partyStatusDelayTimer; u8 matrixNum; - u8 shadowSpriteId; + + u8 shadowSpriteIdPrimary; + u8 shadowSpriteIdSecondary; + u8 soundTimer; u8 introEndDelay; u8 field_A; diff --git a/include/battle_interface.h b/include/battle_interface.h index 6635298dc1..3280826ff7 100644 --- a/include/battle_interface.h +++ b/include/battle_interface.h @@ -47,6 +47,9 @@ enum #define TAG_HEALTHBAR_PAL TAG_HEALTHBAR_PLAYER1_TILE #define TAG_HEALTHBOX_PAL TAG_HEALTHBOX_PLAYER1_TILE +#define TAG_SHADOW_PAL TAG_HEALTHBOX_PLAYER1_TILE + +#define TAG_SHADOW_TILE 0xD759 #define TAG_GIMMICK_TRIGGER_TILE 0xD777 #define TAG_MEGA_INDICATOR_TILE 0xD778 diff --git a/include/config/battle.h b/include/config/battle.h index 99476b4f83..a60d9cdd9b 100644 --- a/include/config/battle.h +++ b/include/config/battle.h @@ -279,4 +279,7 @@ #define SHOW_TYPES_CAUGHT 2 #define B_SHOW_TYPES SHOW_TYPES_NEVER // When defined as SHOW_TYPES_ALWAYS, after selecting "Fight" in battle, the types of all Pokemon are revealed. Whe defined as SHOW_TYPES_OWN, types are only revealed if the player owns the mon in question. +// Pokémon battle sprite settings +#define B_ENEMY_MON_SHADOW_STYLE GEN_LATEST // In Gen4+, all enemy Pokemon will have a shadow drawn beneath them. + #endif // GUARD_CONFIG_BATTLE_H diff --git a/include/constants/event_objects.h b/include/constants/event_objects.h index fccc206638..07853a69a8 100644 --- a/include/constants/event_objects.h +++ b/include/constants/event_objects.h @@ -281,10 +281,12 @@ #define OW_SPECIES(x) (((x)->graphicsId & OBJ_EVENT_GFX_SPECIES_MASK) - OBJ_EVENT_GFX_MON_BASE) #define OW_FORM(x) ((x)->graphicsId >> OBJ_EVENT_GFX_SPECIES_BITS) -#define SHADOW_SIZE_S 0 -#define SHADOW_SIZE_M 1 -#define SHADOW_SIZE_L 2 -#define SHADOW_SIZE_NONE 3 // Originally SHADOW_SIZE_XL, which went unused due to shadowSize in ObjectEventGraphicsInfo being only 2 bits. +#define SHADOW_SIZE_S 0 +#define SHADOW_SIZE_M 1 +#define SHADOW_SIZE_L 2 +#define SHADOW_SIZE_NONE 3 // Originally SHADOW_SIZE_XL, which went unused due to shadowSize in ObjectEventGraphicsInfo being only 2 bits. + +#define SHADOW_SIZE_XL_BATTLE_ONLY SHADOW_SIZE_NONE // Battle-only definition for XL shadow size. #define F_INANIMATE (1 << 6) #define F_DISABLE_REFLECTION_PALETTE_LOAD (1 << 7) diff --git a/include/graphics.h b/include/graphics.h index 950c129c7d..0ea07557d5 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -3104,6 +3104,7 @@ extern const u32 gBattleAnimBgPalette_Surf[]; extern const u32 gBattleAnimBackgroundImageMuddyWater_Pal[]; extern const u32 gEnemyMonShadow_Gfx[]; +extern const u32 gEnemyMonShadowsSized_Gfx[]; extern const u32 gBattleAnimFogTilemap[]; diff --git a/include/pokemon.h b/include/pokemon.h index dcdbf43dec..4dbd86a391 100644 --- a/include/pokemon.h +++ b/include/pokemon.h @@ -442,6 +442,12 @@ struct SpeciesInfo /*0xC4*/ u32 tmIlliterate:1; // This species will be unable to learn the universal moves. u32 isFrontierBanned:1; // This species is not allowed to participate in Battle Frontier facilities. u32 padding4:11; + // Shadow settings + s8 enemyShadowXOffset; // This determines the X-offset for an enemy Pokémon's shadow during battle; negative values point left, positive values point right. + s8 enemyShadowYOffset; // This determines the Y-offset for an enemy Pokémon's shadow during battle; negative values point up, positive values point down. + u16 enemyShadowSize:3; // This determines the size of the shadow sprite used for an enemy Pokémon's front sprite during battle. + u16 suppressEnemyShadow:1; // If set to true, then a shadow will not be drawn beneath an enemy Pokémon's front sprite during battle. + u16 padding5:12; // Move Data /* 0x80 */ const struct LevelUpMove *levelUpLearnset; /* 0x84 */ const u16 *teachableLearnset; diff --git a/include/pokemon_sprite_visualizer.h b/include/pokemon_sprite_visualizer.h index 946c2f37f6..fdd53d2ce8 100644 --- a/include/pokemon_sprite_visualizer.h +++ b/include/pokemon_sprite_visualizer.h @@ -1,6 +1,7 @@ #ifndef GUARD_POKEMON_SPRITE_VISUALIZER_H #define GUARD_POKEMON_SPRITE_VISUALIZER_H +#include "constants/global.h" #include "constants/pokemon_sprite_visualizer.h" //Structs @@ -43,6 +44,17 @@ struct PokemonSpriteOffsets s8 offset_front_elevation; }; +struct PokemonShadowSettings +{ + s8 definedX; + s8 definedY; + u8 definedSize; + + s8 overrideX; + s8 overrideY; + u8 overrideSize; +}; + struct PokemonSpriteVisualizer { u16 currentmonId; @@ -52,14 +64,20 @@ struct PokemonSpriteVisualizer u8 backspriteId; u8 iconspriteId; u8 followerspriteId; - u8 frontShadowSpriteId; + bool8 isShiny; bool8 isFemale; + + u8 frontShadowSpriteIdPrimary; + u8 frontShadowSpriteIdSecondary; + struct PokemonShadowSettings shadowSettings; + struct PokemonSpriteVisualizerModifyArrows modifyArrows; struct PokemonSpriteVisualizerOptionArrows optionArrows; struct PokemonSpriteVisualizerYPosModifiyArrows yPosModifyArrows; struct PokemonSpriteConstValues constSpriteValues; struct PokemonSpriteOffsets offsetsSpriteValues; + u8 animIdBack; u8 animIdFront; u8 battleBgType; diff --git a/src/battle_anim_effects_1.c b/src/battle_anim_effects_1.c index a44bf85090..69b9d0760e 100644 --- a/src/battle_anim_effects_1.c +++ b/src/battle_anim_effects_1.c @@ -6616,12 +6616,29 @@ static void ReloadBattlerSprites(u32 battler, struct Pokemon *party) UpdateIndicatorVisibilityAndType(gHealthboxSpriteIds[battler], TRUE); // Try to recreate shadow sprite - if (gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteId < MAX_SPRITES) + if (B_ENEMY_MON_SHADOW_STYLE >= GEN_4) { - DestroySprite(&gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteId]); - gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteId = MAX_SPRITES; - CreateEnemyShadowSprite(battler); - SetBattlerShadowSpriteCallback(battler, GetMonData(mon, MON_DATA_SPECIES)); + // Both of these *should* be true, but use an OR just to be certain + if (gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary < MAX_SPRITES + || gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdSecondary < MAX_SPRITES) + { + DestroySprite(&gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary]); + DestroySprite(&gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdSecondary]); + gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary = MAX_SPRITES; + gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdSecondary = MAX_SPRITES; + CreateEnemyShadowSprite(battler); + SetBattlerShadowSpriteCallback(battler, GetMonData(mon, MON_DATA_SPECIES)); + } + } + else + { + if (gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary < MAX_SPRITES) + { + DestroySprite(&gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary]); + gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary = MAX_SPRITES; + CreateEnemyShadowSprite(battler); + SetBattlerShadowSpriteCallback(battler, GetMonData(mon, MON_DATA_SPECIES)); + } } } diff --git a/src/battle_anim_smokescreen.c b/src/battle_anim_smokescreen.c index 3b05ef6280..12fe97b993 100644 --- a/src/battle_anim_smokescreen.c +++ b/src/battle_anim_smokescreen.c @@ -9,9 +9,6 @@ #define TAG_SMOKESCREEN 55019 -#define PALTAG_SHADOW 55039 -#define GFXTAG_SHADOW 55129 - static void SpriteCB_SmokescreenImpactMain(struct Sprite *); static void SpriteCB_SmokescreenImpact(struct Sprite *); @@ -95,39 +92,6 @@ static const struct SpriteTemplate sSmokescreenImpactSpriteTemplate = .callback = SpriteCB_SmokescreenImpact }; -const struct CompressedSpriteSheet gSpriteSheet_EnemyShadow = -{ - .data = gEnemyMonShadow_Gfx, .size = 0x80, .tag = GFXTAG_SHADOW -}; - -static const struct OamData sOamData_EnemyShadow = -{ - .y = 0, - .affineMode = ST_OAM_AFFINE_OFF, - .objMode = ST_OAM_OBJ_NORMAL, - .mosaic = FALSE, - .bpp = ST_OAM_4BPP, - .shape = SPRITE_SHAPE(32x8), - .x = 0, - .matrixNum = 0, - .size = SPRITE_SIZE(32x8), - .tileNum = 0, - .priority = 3, - .paletteNum = 0, - .affineParam = 0 -}; - -const struct SpriteTemplate gSpriteTemplate_EnemyShadow = -{ - .tileTag = GFXTAG_SHADOW, - .paletteTag = PALTAG_SHADOW, - .oam = &sOamData_EnemyShadow, - .anims = gDummySpriteAnimTable, - .images = NULL, - .affineAnims = gDummySpriteAffineAnimTable, - .callback = SpriteCB_SetInvisible -}; - #define sActiveSprites data[0] #define sPersist data[1] diff --git a/src/battle_controller_opponent.c b/src/battle_controller_opponent.c index 275aa623b6..57ebccf7fa 100644 --- a/src/battle_controller_opponent.c +++ b/src/battle_controller_opponent.c @@ -211,6 +211,18 @@ static void Intro_WaitForShinyAnimAndHealthbox(u32 battler) } } +static void TrySetBattlerShadowSpriteCallback(u32 battler) +{ + if (gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary].callback == SpriteCallbackDummy) + { + if (B_ENEMY_MON_SHADOW_STYLE <= GEN_3 + || gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdSecondary].callback == SpriteCallbackDummy) + { + SetBattlerShadowSpriteCallback(battler, GetMonData(&gEnemyParty[gBattlerPartyIndexes[battler]], MON_DATA_SPECIES)); + } + } +} + static void Intro_TryShinyAnimShowHealthbox(u32 battler) { bool32 bgmRestored = FALSE; @@ -269,33 +281,36 @@ static void Intro_TryShinyAnimShowHealthbox(u32 battler) if (!twoMons || (twoMons && gBattleTypeFlags & BATTLE_TYPE_MULTI && !BATTLE_TWO_VS_ONE_OPPONENT)) { - if (gSprites[gBattleControllerData[battler]].callback == SpriteCallbackDummy - && gSprites[gBattlerSpriteIds[battler]].callback == SpriteCallbackDummy) + if (gSprites[gBattleControllerData[battler]].callback == SpriteCallbackDummy) { - battlerAnimsDone = TRUE; + TrySetBattlerShadowSpriteCallback(battler); + if (gSprites[gBattlerSpriteIds[battler]].callback == SpriteCallbackDummy) + { + battlerAnimsDone = TRUE; + } } } else { if (gSprites[gBattleControllerData[battler]].callback == SpriteCallbackDummy - && gSprites[gBattlerSpriteIds[battler]].callback == SpriteCallbackDummy - && gSprites[gBattleControllerData[BATTLE_PARTNER(battler)]].callback == SpriteCallbackDummy - && gSprites[gBattlerSpriteIds[BATTLE_PARTNER(battler)]].callback == SpriteCallbackDummy) + && gSprites[gBattleControllerData[BATTLE_PARTNER(battler)]].callback == SpriteCallbackDummy) { - battlerAnimsDone = TRUE; + TrySetBattlerShadowSpriteCallback(battler); + TrySetBattlerShadowSpriteCallback(BATTLE_PARTNER(battler)); + if (gSprites[gBattlerSpriteIds[battler]].callback == SpriteCallbackDummy + && gSprites[gBattlerSpriteIds[BATTLE_PARTNER(battler)]].callback == SpriteCallbackDummy) + { + battlerAnimsDone = TRUE; + } } } if (bgmRestored && battlerAnimsDone) { if (twoMons && (!(gBattleTypeFlags & BATTLE_TYPE_MULTI) || BATTLE_TWO_VS_ONE_OPPONENT)) - { DestroySprite(&gSprites[gBattleControllerData[BATTLE_PARTNER(battler)]]); - SetBattlerShadowSpriteCallback(BATTLE_PARTNER(battler), GetMonData(&gEnemyParty[gBattlerPartyIndexes[BATTLE_PARTNER(battler)]], MON_DATA_SPECIES)); - } DestroySprite(&gSprites[gBattleControllerData[battler]]); - SetBattlerShadowSpriteCallback(battler, GetMonData(&gEnemyParty[gBattlerPartyIndexes[battler]], MON_DATA_SPECIES)); gBattleSpritesDataPtr->animationData->introAnimActive = FALSE; gBattleSpritesDataPtr->healthBoxesData[battler].bgmRestored = FALSE; gBattleSpritesDataPtr->healthBoxesData[battler].healthboxSlideInStarted = FALSE; diff --git a/src/battle_controller_recorded_opponent.c b/src/battle_controller_recorded_opponent.c index da977fab89..bbeae7a9c0 100644 --- a/src/battle_controller_recorded_opponent.c +++ b/src/battle_controller_recorded_opponent.c @@ -200,6 +200,19 @@ static void Intro_WaitForShinyAnimAndHealthbox(u32 battler) } } +static void TrySetBattlerShadowSpriteCallback(u32 battler) +{ + + if (gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary].callback == SpriteCallbackDummy) + { + if (B_ENEMY_MON_SHADOW_STYLE <= GEN_3 + || gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdSecondary].callback == SpriteCallbackDummy) + { + SetBattlerShadowSpriteCallback(battler, GetMonData(&gEnemyParty[gBattlerPartyIndexes[battler]], MON_DATA_SPECIES)); + } + } +} + static void Intro_TryShinyAnimShowHealthbox(u32 battler) { bool32 bgmRestored = FALSE; @@ -253,33 +266,34 @@ static void Intro_TryShinyAnimShowHealthbox(u32 battler) if (!IsDoubleBattle()) { - if (gSprites[gBattleControllerData[battler]].callback == SpriteCallbackDummy - && gSprites[gBattlerSpriteIds[battler]].callback == SpriteCallbackDummy) + if (gSprites[gBattleControllerData[battler]].callback == SpriteCallbackDummy) { - battlerAnimsDone = TRUE; + TrySetBattlerShadowSpriteCallback(battler); + if (gSprites[gBattlerSpriteIds[battler]].callback == SpriteCallbackDummy) + battlerAnimsDone = TRUE; } } else { if (gSprites[gBattleControllerData[battler]].callback == SpriteCallbackDummy - && gSprites[gBattlerSpriteIds[battler]].callback == SpriteCallbackDummy - && gSprites[gBattleControllerData[BATTLE_PARTNER(battler)]].callback == SpriteCallbackDummy - && gSprites[gBattlerSpriteIds[BATTLE_PARTNER(battler)]].callback == SpriteCallbackDummy) + && gSprites[gBattleControllerData[BATTLE_PARTNER(battler)]].callback == SpriteCallbackDummy) { - battlerAnimsDone = TRUE; + TrySetBattlerShadowSpriteCallback(battler); + TrySetBattlerShadowSpriteCallback(BATTLE_PARTNER(battler)); + if (gSprites[gBattlerSpriteIds[battler]].callback == SpriteCallbackDummy + && gSprites[gBattlerSpriteIds[BATTLE_PARTNER(battler)]].callback == SpriteCallbackDummy) + { + battlerAnimsDone = TRUE; + } } } if (bgmRestored && battlerAnimsDone) { if (IsDoubleBattle() && !(gBattleTypeFlags & BATTLE_TYPE_MULTI)) - { DestroySprite(&gSprites[gBattleControllerData[BATTLE_PARTNER(battler)]]); - SetBattlerShadowSpriteCallback(BATTLE_PARTNER(battler), GetMonData(&gEnemyParty[gBattlerPartyIndexes[BATTLE_PARTNER(battler)]], MON_DATA_SPECIES)); - } DestroySprite(&gSprites[gBattleControllerData[battler]]); - SetBattlerShadowSpriteCallback(battler, GetMonData(&gEnemyParty[gBattlerPartyIndexes[battler]], MON_DATA_SPECIES)); gBattleSpritesDataPtr->animationData->introAnimActive = FALSE; gBattleSpritesDataPtr->healthBoxesData[battler].bgmRestored = FALSE; diff --git a/src/battle_gfx_sfx_util.c b/src/battle_gfx_sfx_util.c index aa16003694..ec5c1cfb33 100644 --- a/src/battle_gfx_sfx_util.c +++ b/src/battle_gfx_sfx_util.c @@ -27,10 +27,6 @@ #include "constants/battle_palace.h" #include "constants/battle_move_effects.h" - -extern const struct CompressedSpriteSheet gSpriteSheet_EnemyShadow; -extern const struct SpriteTemplate gSpriteTemplate_EnemyShadow; - // this file's functions static u8 GetBattlePalaceMoveGroup(u8 battler, u16 move); static u16 GetBattlePalaceTarget(u32 battler); @@ -82,6 +78,46 @@ const struct SpritePalette sSpritePalettes_HealthBoxHealthBar[2] = {gBattleInterface_BallDisplayPal, TAG_HEALTHBAR_PAL} }; +const struct CompressedSpriteSheet gSpriteSheet_EnemyShadow = +{ + .data = gEnemyMonShadow_Gfx, .size = 0x80, .tag = TAG_SHADOW_TILE +}; + +const struct CompressedSpriteSheet gSpriteSheet_EnemyShadowsSized = +{ + .data = gEnemyMonShadowsSized_Gfx, + .size = TILE_SIZE_4BPP * 8 * 4, // 8 tiles per sprite, 4 sprites total + .tag = TAG_SHADOW_TILE, +}; + +static const struct OamData sOamData_EnemyShadow = +{ + .y = 0, + .affineMode = ST_OAM_AFFINE_OFF, + .objMode = ST_OAM_OBJ_NORMAL, + .mosaic = FALSE, + .bpp = ST_OAM_4BPP, + .shape = SPRITE_SHAPE(32x8), + .x = 0, + .matrixNum = 0, + .size = SPRITE_SIZE(32x8), + .tileNum = 0, + .priority = 3, + .paletteNum = 0, + .affineParam = 0 +}; + +const struct SpriteTemplate gSpriteTemplate_EnemyShadow = +{ + .tileTag = TAG_SHADOW_TILE, + .paletteTag = TAG_SHADOW_PAL, + .oam = &sOamData_EnemyShadow, + .anims = gDummySpriteAnimTable, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = SpriteCallbackDummy, +}; + // code void AllocateBattleSpritesData(void) { @@ -1094,16 +1130,58 @@ void SetBattlerSpriteAffineMode(u8 affineMode) } } -#define tBattlerId data[0] +#define tBattlerId data[0] +#define tSpriteSide data[1] + +#define SPRITE_SIDE_LEFT 0 +#define SPRITE_SIDE_RIGHT 1 void CreateEnemyShadowSprite(u32 battler) { - gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteId = CreateSprite(&gSpriteTemplate_EnemyShadow, - GetBattlerSpriteCoord(battler, BATTLER_COORD_X), - GetBattlerSpriteCoord(battler, BATTLER_COORD_Y) + 29, - 0xC8); - if (gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteId < MAX_SPRITES) - gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteId].data[0] = battler; + if (B_ENEMY_MON_SHADOW_STYLE >= GEN_4) + { + u16 species = SanitizeSpeciesId(gBattleMons[battler].species); + u8 size = gSpeciesInfo[species].enemyShadowSize; + + gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary = CreateSprite(&gSpriteTemplate_EnemyShadow, + GetBattlerSpriteCoord(battler, BATTLER_COORD_X), + GetBattlerSpriteCoord(battler, BATTLER_COORD_Y), + 0xC8); + if (gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary < MAX_SPRITES) + { + struct Sprite *sprite = &gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary]; + sprite->tBattlerId = battler; + sprite->tSpriteSide = SPRITE_SIDE_LEFT; + sprite->oam.tileNum += 8 * size; + sprite->invisible = TRUE; + } + + gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdSecondary = CreateSprite(&gSpriteTemplate_EnemyShadow, + GetBattlerSpriteCoord(battler, BATTLER_COORD_X), + GetBattlerSpriteCoord(battler, BATTLER_COORD_Y), + 0xC8); + if (gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdSecondary < MAX_SPRITES) + { + struct Sprite *sprite = &gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdSecondary]; + sprite->tBattlerId = battler; + sprite->tSpriteSide = SPRITE_SIDE_RIGHT; + sprite->oam.tileNum += (8 * size) + 4; + sprite->invisible = TRUE; + } + } + else + { + gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary = CreateSprite(&gSpriteTemplate_EnemyShadow, + GetBattlerSpriteCoord(battler, BATTLER_COORD_X), + GetBattlerSpriteCoord(battler, BATTLER_COORD_Y), + 0xC8); + if (gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary < MAX_SPRITES) + { + struct Sprite *sprite = &gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary]; + sprite->tBattlerId = battler; + sprite->invisible = TRUE; + } + } } void LoadAndCreateEnemyShadowSprites(void) @@ -1111,12 +1189,26 @@ void LoadAndCreateEnemyShadowSprites(void) u8 battler; u32 i; - LoadCompressedSpriteSheet(&gSpriteSheet_EnemyShadow); - - // initialize shadow sprite ids - for (i = 0; i < gBattlersCount; i++) + if (B_ENEMY_MON_SHADOW_STYLE >= GEN_4) { - gBattleSpritesDataPtr->healthBoxesData[i].shadowSpriteId = MAX_SPRITES; + LoadCompressedSpriteSheet(&gSpriteSheet_EnemyShadowsSized); + + // initialize shadow sprite ids + for (i = 0; i < gBattlersCount; i++) + { + gBattleSpritesDataPtr->healthBoxesData[i].shadowSpriteIdPrimary = MAX_SPRITES; + gBattleSpritesDataPtr->healthBoxesData[i].shadowSpriteIdSecondary = MAX_SPRITES; + } + } + else + { + LoadCompressedSpriteSheet(&gSpriteSheet_EnemyShadow); + + // initialize shadow sprite ids + for (i = 0; i < gBattlersCount; i++) + { + gBattleSpritesDataPtr->healthBoxesData[i].shadowSpriteIdPrimary = MAX_SPRITES; + } } battler = GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT); @@ -1141,16 +1233,36 @@ void SpriteCB_EnemyShadow(struct Sprite *shadowSprite) shadowSprite->callback = SpriteCB_SetInvisible; return; } + + s8 xOffset = 0, yOffset = 0; if (gAnimScriptActive || battlerSprite->invisible) invisible = TRUE; - else if (transformSpecies != SPECIES_NONE && gSpeciesInfo[transformSpecies].enemyMonElevation == 0) - invisible = TRUE; + else if (transformSpecies != SPECIES_NONE) + { + xOffset = gSpeciesInfo[transformSpecies].enemyShadowXOffset; + yOffset = gSpeciesInfo[transformSpecies].enemyShadowYOffset; + + invisible = B_ENEMY_MON_SHADOW_STYLE >= GEN_4 + ? gSpeciesInfo[transformSpecies].suppressEnemyShadow + : gSpeciesInfo[transformSpecies].enemyMonElevation == 0; + } + else if (B_ENEMY_MON_SHADOW_STYLE >= GEN_4) + { + u16 species = SanitizeSpeciesId(gBattleMons[battler].species); + xOffset = gSpeciesInfo[species].enemyShadowXOffset + (shadowSprite->tSpriteSide == SPRITE_SIDE_LEFT ? -16 : 16); + yOffset = gSpeciesInfo[species].enemyShadowYOffset + 16; + } + else + { + yOffset = 29; + } if (gBattleSpritesDataPtr->battlerData[battler].behindSubstitute) invisible = TRUE; - shadowSprite->x = battlerSprite->x; + shadowSprite->x = battlerSprite->x + xOffset; shadowSprite->x2 = battlerSprite->x2; + shadowSprite->y = battlerSprite->y + yOffset; shadowSprite->invisible = invisible; } @@ -1163,24 +1275,59 @@ void SpriteCB_SetInvisible(struct Sprite *sprite) void SetBattlerShadowSpriteCallback(u8 battler, u16 species) { - // The player's shadow is never seen. - if (GetBattlerSide(battler) == B_SIDE_PLAYER || gBattleScripting.monCaught) - return; - if (gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteId >= MAX_SPRITES) - return; + if (B_ENEMY_MON_SHADOW_STYLE >= GEN_4) + { + if (GetBattlerSide(battler) == B_SIDE_PLAYER || gBattleScripting.monCaught) + { + gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary].callback = SpriteCB_SetInvisible; + gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdSecondary].callback = SpriteCB_SetInvisible; + return; + } - if (gBattleSpritesDataPtr->battlerData[battler].transformSpecies != SPECIES_NONE) - species = gBattleSpritesDataPtr->battlerData[battler].transformSpecies; + if (gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary >= MAX_SPRITES + || gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdSecondary >= MAX_SPRITES) + return; - if (gSpeciesInfo[SanitizeSpeciesId(species)].enemyMonElevation != 0) - gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteId].callback = SpriteCB_EnemyShadow; + if (gBattleSpritesDataPtr->battlerData[battler].transformSpecies != SPECIES_NONE) + species = gBattleSpritesDataPtr->battlerData[battler].transformSpecies; + + if (gSpeciesInfo[SanitizeSpeciesId(species)].suppressEnemyShadow == FALSE) + { + gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary].callback = SpriteCB_EnemyShadow; + gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdSecondary].callback = SpriteCB_EnemyShadow; + } + else + { + gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary].callback = SpriteCB_SetInvisible; + gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdSecondary].callback = SpriteCB_SetInvisible; + } + } else - gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteId].callback = SpriteCB_SetInvisible; + { + if (GetBattlerSide(battler) == B_SIDE_PLAYER || gBattleScripting.monCaught) + { + gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary].callback = SpriteCB_SetInvisible; + return; + } + + if (gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary >= MAX_SPRITES) + return; + + if (gBattleSpritesDataPtr->battlerData[battler].transformSpecies != SPECIES_NONE) + species = gBattleSpritesDataPtr->battlerData[battler].transformSpecies; + + if (gSpeciesInfo[SanitizeSpeciesId(species)].enemyMonElevation != 0) + gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary].callback = SpriteCB_EnemyShadow; + else + gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary].callback = SpriteCB_SetInvisible; + } } void HideBattlerShadowSprite(u8 battler) { - gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteId].callback = SpriteCB_SetInvisible; + gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary].callback = SpriteCB_SetInvisible; + if (B_ENEMY_MON_SHADOW_STYLE >= GEN_4) + gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdSecondary].callback = SpriteCB_SetInvisible; } // Color the background tiles surrounding the action selection and move windows diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 8f917d5cbb..afa9cc7dec 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -10115,7 +10115,6 @@ static void Cmd_various(void) { // Save sprite IDs, because trainer slide in will overwrite gBattlerSpriteIds variable. gBattleScripting.savedDmg = (gBattlerSpriteIds[battler] & 0xFF) | (gBattlerSpriteIds[BATTLE_PARTNER(battler)] << 8); - HideBattlerShadowSprite(battler); } else if (cmd->case_ == 1) { diff --git a/src/data/pokemon/species_info.h b/src/data/pokemon/species_info.h index 939f1d4635..b0945ed43f 100644 --- a/src/data/pokemon/species_info.h +++ b/src/data/pokemon/species_info.h @@ -11,6 +11,14 @@ #define FOOTPRINT(sprite) #endif +#if B_ENEMY_MON_SHADOW_STYLE >= GEN_4 +#define SHADOW(x, y, size) .enemyShadowXOffset = x, .enemyShadowYOffset = y, .enemyShadowSize = size, +#define NO_SHADOW .suppressEnemyShadow = TRUE, +#else +#define SHADOW(x, y, size) .enemyShadowXOffset = 0, .enemyShadowYOffset = 0, .enemyShadowSize = 0, +#define NO_SHADOW .suppressEnemyShadow = FALSE, +#endif + #define SIZE_32x32 1 #define SIZE_64x64 0 diff --git a/src/data/pokemon/species_info/gen_1_families.h b/src/data/pokemon/species_info/gen_1_families.h index a149174cd1..bb5ba4a0d4 100644 --- a/src/data/pokemon/species_info/gen_1_families.h +++ b/src/data/pokemon/species_info/gen_1_families.h @@ -51,6 +51,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Bulbasaur, .iconSprite = gMonIcon_Bulbasaur, .iconPalIndex = 4, + SHADOW(1, -1, SHADOW_SIZE_S) FOOTPRINT(Bulbasaur) OVERWORLD( sPicTable_Bulbasaur, @@ -114,6 +115,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Ivysaur, .iconSprite = gMonIcon_Ivysaur, .iconPalIndex = 4, + SHADOW(-1, 3, SHADOW_SIZE_L) FOOTPRINT(Ivysaur) OVERWORLD( sPicTable_Ivysaur, @@ -186,6 +188,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Venusaur, .iconSprite = gMonIcon_Venusaur, .iconPalIndex = 4, + SHADOW(2, 6, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Venusaur) OVERWORLD( sPicTable_Venusaur, @@ -249,6 +252,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_VenusaurMega, .iconSprite = gMonIcon_VenusaurMega, .iconPalIndex = 4, + SHADOW(2, 6, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Venusaur) .isMegaEvolution = TRUE, .levelUpLearnset = sVenusaurLevelUpLearnset, @@ -307,6 +311,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_VenusaurGigantamax, .iconSprite = gMonIcon_VenusaurGigantamax, .iconPalIndex = 0, + SHADOW(2, 4, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Venusaur) .isGigantamax = TRUE, .levelUpLearnset = sVenusaurLevelUpLearnset, @@ -365,6 +370,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Charmander, .iconSprite = gMonIcon_Charmander, .iconPalIndex = 0, + SHADOW(-2, 3, SHADOW_SIZE_S) FOOTPRINT(Charmander) OVERWORLD( sPicTable_Charmander, @@ -428,6 +434,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Charmeleon, .iconSprite = gMonIcon_Charmeleon, .iconPalIndex = 0, + SHADOW(0, 5, SHADOW_SIZE_M) FOOTPRINT(Charmeleon) OVERWORLD( sPicTable_Charmeleon, @@ -495,6 +502,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Charizard, .iconSprite = gMonIcon_Charizard, .iconPalIndex = 0, + SHADOW(2, 13, SHADOW_SIZE_L) FOOTPRINT(Charizard) OVERWORLD( sPicTable_Charizard, @@ -557,6 +565,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_CharizardMegaX, .iconSprite = gMonIcon_CharizardMegaX, .iconPalIndex = 0, + SHADOW(2, 13, SHADOW_SIZE_L) FOOTPRINT(Charizard) .isMegaEvolution = TRUE, .levelUpLearnset = sCharizardLevelUpLearnset, @@ -612,6 +621,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_CharizardMegaY, .iconSprite = gMonIcon_CharizardMegaY, .iconPalIndex = 0, + SHADOW(-1, 14, SHADOW_SIZE_L) FOOTPRINT(Charizard) .isMegaEvolution = TRUE, .levelUpLearnset = sCharizardLevelUpLearnset, @@ -669,6 +679,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_CharizardGigantamax, .iconSprite = gMonIcon_CharizardGigantamax, .iconPalIndex = 0, + SHADOW(1, 13, SHADOW_SIZE_L) FOOTPRINT(Charizard) .isGigantamax = TRUE, .levelUpLearnset = sCharizardLevelUpLearnset, @@ -727,6 +738,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Squirtle, .iconSprite = gMonIcon_Squirtle, .iconPalIndex = 0, + SHADOW(-3, 2, SHADOW_SIZE_S) FOOTPRINT(Squirtle) OVERWORLD( sPicTable_Squirtle, @@ -790,6 +802,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Wartortle, .iconSprite = gMonIcon_Wartortle, .iconPalIndex = 2, + SHADOW(0, 6, SHADOW_SIZE_M) FOOTPRINT(Wartortle) OVERWORLD( sPicTable_Wartortle, @@ -858,6 +871,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Blastoise, .iconSprite = gMonIcon_Blastoise, .iconPalIndex = 2, + SHADOW(1, 7, SHADOW_SIZE_L) FOOTPRINT(Blastoise) OVERWORLD( sPicTable_Blastoise, @@ -921,6 +935,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_BlastoiseMega, .iconSprite = gMonIcon_BlastoiseMega, .iconPalIndex = 2, + SHADOW(4, 11, SHADOW_SIZE_L) FOOTPRINT(Blastoise) .isMegaEvolution = TRUE, .levelUpLearnset = sBlastoiseLevelUpLearnset, @@ -978,6 +993,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_BlastoiseGigantamax, .iconSprite = gMonIcon_BlastoiseGigantamax, .iconPalIndex = 0, + SHADOW(-2, 8, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Blastoise) .isGigantamax = TRUE, .levelUpLearnset = sBlastoiseLevelUpLearnset, @@ -1036,6 +1052,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Caterpie, .iconSprite = gMonIcon_Caterpie, .iconPalIndex = 1, + SHADOW(4, 1, SHADOW_SIZE_S) FOOTPRINT(Caterpie) OVERWORLD( sPicTable_Caterpie, @@ -1098,6 +1115,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Metapod, .iconSprite = gMonIcon_Metapod, .iconPalIndex = 1, + SHADOW(3, 0, SHADOW_SIZE_S) FOOTPRINT(Metapod) OVERWORLD( sPicTable_Metapod, @@ -1177,6 +1195,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Butterfree, .iconSprite = gMonIcon_Butterfree, .iconPalIndex = 0, + SHADOW(-3, 13, SHADOW_SIZE_S) FOOTPRINT(Butterfree) OVERWORLD( sPicTable_Butterfree, @@ -1243,6 +1262,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_ButterfreeGigantamax, .iconSprite = gMonIcon_ButterfreeGigantamax, .iconPalIndex = 0, + SHADOW(-4, 15, SHADOW_SIZE_S) FOOTPRINT(Butterfree) .isGigantamax = TRUE, .levelUpLearnset = sButterfreeLevelUpLearnset, @@ -1302,6 +1322,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Weedle, .iconSprite = gMonIcon_Weedle, .iconPalIndex = 2, + SHADOW(0, 0, SHADOW_SIZE_S) FOOTPRINT(Weedle) OVERWORLD( sPicTable_Weedle, @@ -1365,6 +1386,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Kakuna, .iconSprite = gMonIcon_Kakuna, .iconPalIndex = 2, + SHADOW(0, 2, SHADOW_SIZE_S) FOOTPRINT(Kakuna) OVERWORLD( sPicTable_Kakuna, @@ -1440,6 +1462,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Beedrill, .iconSprite = gMonIcon_Beedrill, .iconPalIndex = 2, + SHADOW(4, 15, SHADOW_SIZE_M) FOOTPRINT(Beedrill) OVERWORLD( sPicTable_Beedrill, @@ -1506,6 +1529,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_BeedrillMega, .iconSprite = gMonIcon_BeedrillMega, .iconPalIndex = 2, + SHADOW(1, 14, SHADOW_SIZE_S) FOOTPRINT(Beedrill) .isMegaEvolution = TRUE, .levelUpLearnset = sBeedrillLevelUpLearnset, @@ -1568,6 +1592,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Pidgey, .iconSprite = gMonIcon_Pidgey, .iconPalIndex = 0, + SHADOW(-1, -1, SHADOW_SIZE_S) FOOTPRINT(Pidgey) OVERWORLD( sPicTable_Pidgey, @@ -1635,6 +1660,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Pidgeotto, .iconSprite = gMonIcon_Pidgeotto, .iconPalIndex = 0, + SHADOW(-4, 6, SHADOW_SIZE_M) FOOTPRINT(Pidgeotto) OVERWORLD( sPicTable_Pidgeotto, @@ -1711,6 +1737,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Pidgeot, .iconSprite = gMonIcon_Pidgeot, .iconPalIndex = 0, + SHADOW(-7, 14, SHADOW_SIZE_M) FOOTPRINT(Pidgeot) OVERWORLD( sPicTable_Pidgeot, @@ -1774,6 +1801,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_PidgeotMega, .iconSprite = gMonIcon_PidgeotMega, .iconPalIndex = 0, + SHADOW(-7, 19, SHADOW_SIZE_M) FOOTPRINT(Pidgeot) .isMegaEvolution = TRUE, .levelUpLearnset = sPidgeotLevelUpLearnset, @@ -1836,6 +1864,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Rattata, .iconSprite = gMonIcon_Rattata, .iconPalIndex = 2, + SHADOW(1, -3, SHADOW_SIZE_S) FOOTPRINT(Rattata) OVERWORLD( sPicTable_Rattata, @@ -1903,6 +1932,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Raticate, .iconSprite = gMonIcon_Raticate, .iconPalIndex = 2, + SHADOW(0, 8, SHADOW_SIZE_L) FOOTPRINT(Raticate) OVERWORLD( sPicTable_Raticate, @@ -1966,6 +1996,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_RattataAlolan, .iconSprite = gMonIcon_RattataAlolan, .iconPalIndex = 2, + SHADOW(-3, 2, SHADOW_SIZE_S) FOOTPRINT(Rattata) OVERWORLD( sPicTable_RattataAlolan, @@ -2028,6 +2059,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_RaticateAlolan, .iconSprite = gMonIcon_RaticateAlolan, .iconPalIndex = 2, + SHADOW(-4, 3, SHADOW_SIZE_L) FOOTPRINT(Raticate) OVERWORLD( sPicTable_RaticateAlolan, @@ -2087,6 +2119,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_RaticateAlolan, .iconSprite = gMonIcon_RaticateAlolan, .iconPalIndex = 2, + SHADOW(-4, 3, SHADOW_SIZE_L) FOOTPRINT(Raticate) .isTotem = TRUE, .isAlolanForm = TRUE, @@ -2147,6 +2180,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Spearow, .iconSprite = gMonIcon_Spearow, .iconPalIndex = 0, + SHADOW(0, 1, SHADOW_SIZE_S) FOOTPRINT(Spearow) OVERWORLD( sPicTable_Spearow, @@ -2212,6 +2246,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Fearow, .iconSprite = gMonIcon_Fearow, .iconPalIndex = 0, + SHADOW(0, 17, SHADOW_SIZE_M) FOOTPRINT(Fearow) OVERWORLD( sPicTable_Fearow, @@ -2275,6 +2310,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Ekans, .iconSprite = gMonIcon_Ekans, .iconPalIndex = 2, + SHADOW(0, 2, SHADOW_SIZE_M) FOOTPRINT(Ekans) OVERWORLD( sPicTable_Ekans, @@ -2343,6 +2379,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Arbok, .iconSprite = gMonIcon_Arbok, .iconPalIndex = 2, + SHADOW(1, 11, SHADOW_SIZE_L) FOOTPRINT(Arbok) OVERWORLD( sPicTable_Arbok, @@ -2403,6 +2440,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Pichu, .iconSprite = gMonIcon_Pichu, .iconPalIndex = 1, + SHADOW(0, 0, SHADOW_SIZE_S) FOOTPRINT(Pichu) OVERWORLD( sPicTable_Pichu, @@ -2463,6 +2501,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_PichuSpikyEared, .iconSprite = gMonIcon_PichuSpikyEared, .iconPalIndex = 1, + SHADOW(2, 0, SHADOW_SIZE_S) FOOTPRINT(Pichu) OVERWORLD( sPicTable_PichuSpikyEared, @@ -2540,6 +2579,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .iconSpriteFemale = gMonIcon_PikachuF, .iconPalIndexFemale = 2, #endif + SHADOW(-3, 5, SHADOW_SIZE_M) OVERWORLD( sPicTable_Pikachu, SIZE_32x32, @@ -2602,6 +2642,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_PikachuCosplay, .iconSprite = gMonIcon_PikachuCosplay, .iconPalIndex = 2, + SHADOW(-3, 5, SHADOW_SIZE_M) FOOTPRINT(Pikachu) .levelUpLearnset = sPikachuLevelUpLearnset, .teachableLearnset = sPikachuTeachableLearnset, @@ -2652,6 +2693,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_PikachuRockStar, .iconSprite = gMonIcon_PikachuRockStar, .iconPalIndex = 1, + SHADOW(-3, 5, SHADOW_SIZE_M) FOOTPRINT(Pikachu) .levelUpLearnset = sPikachuLevelUpLearnset, .teachableLearnset = sPikachuTeachableLearnset, @@ -2703,6 +2745,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_PikachuBelle, .iconSprite = gMonIcon_PikachuBelle, .iconPalIndex = 0, + SHADOW(-3, 5, SHADOW_SIZE_M) FOOTPRINT(Pikachu) .levelUpLearnset = sPikachuLevelUpLearnset, .teachableLearnset = sPikachuTeachableLearnset, @@ -2754,6 +2797,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_PikachuPopStar, .iconSprite = gMonIcon_PikachuPopStar, .iconPalIndex = 0, + SHADOW(-3, 5, SHADOW_SIZE_M) FOOTPRINT(Pikachu) .levelUpLearnset = sPikachuLevelUpLearnset, .teachableLearnset = sPikachuTeachableLearnset, @@ -2804,6 +2848,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_PikachuPhD, .iconSprite = gMonIcon_PikachuPhD, .iconPalIndex = 1, + SHADOW(-3, 5, SHADOW_SIZE_M) FOOTPRINT(Pikachu) .levelUpLearnset = sPikachuLevelUpLearnset, .teachableLearnset = sPikachuTeachableLearnset, @@ -2854,6 +2899,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_PikachuLibre, .iconSprite = gMonIcon_PikachuLibre, .iconPalIndex = 0, + SHADOW(-3, 5, SHADOW_SIZE_M) FOOTPRINT(Pikachu) .levelUpLearnset = sPikachuLevelUpLearnset, .teachableLearnset = sPikachuTeachableLearnset, @@ -2912,6 +2958,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_PikachuOriginalCap, .iconSprite = gMonIcon_PikachuOriginalCap, .iconPalIndex = 0, + SHADOW(-3, 5, SHADOW_SIZE_M) FOOTPRINT(Pikachu) .levelUpLearnset = sPikachuLevelUpLearnset, .teachableLearnset = sPikachuTeachableLearnset, @@ -2966,6 +3013,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_PikachuHoennCap, .iconSprite = gMonIcon_PikachuHoennCap, .iconPalIndex = 0, + SHADOW(-3, 5, SHADOW_SIZE_M) FOOTPRINT(Pikachu) .levelUpLearnset = sPikachuLevelUpLearnset, .teachableLearnset = sPikachuTeachableLearnset, @@ -3020,6 +3068,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_PikachuSinnohCap, .iconSprite = gMonIcon_PikachuSinnohCap, .iconPalIndex = 0, + SHADOW(-3, 5, SHADOW_SIZE_M) FOOTPRINT(Pikachu) .levelUpLearnset = sPikachuLevelUpLearnset, .teachableLearnset = sPikachuTeachableLearnset, @@ -3074,6 +3123,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_PikachuUnovaCap, .iconSprite = gMonIcon_PikachuUnovaCap, .iconPalIndex = 0, + SHADOW(-3, 5, SHADOW_SIZE_M) FOOTPRINT(Pikachu) .levelUpLearnset = sPikachuLevelUpLearnset, .teachableLearnset = sPikachuTeachableLearnset, @@ -3128,6 +3178,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_PikachuKalosCap, .iconSprite = gMonIcon_PikachuKalosCap, .iconPalIndex = 0, + SHADOW(-3, 5, SHADOW_SIZE_M) FOOTPRINT(Pikachu) .levelUpLearnset = sPikachuLevelUpLearnset, .teachableLearnset = sPikachuTeachableLearnset, @@ -3182,6 +3233,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_PikachuAlolaCap, .iconSprite = gMonIcon_PikachuAlolaCap, .iconPalIndex = 0, + SHADOW(-3, 5, SHADOW_SIZE_M) FOOTPRINT(Pikachu) .levelUpLearnset = sPikachuLevelUpLearnset, .teachableLearnset = sPikachuTeachableLearnset, @@ -3237,6 +3289,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_PikachuPartnerCap, .iconSprite = gMonIcon_PikachuPartnerCap, .iconPalIndex = 0, + SHADOW(-3, 5, SHADOW_SIZE_M) FOOTPRINT(Pikachu) .levelUpLearnset = sPikachuLevelUpLearnset, .teachableLearnset = sPikachuTeachableLearnset, @@ -3291,6 +3344,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_PikachuWorldCap, .iconSprite = gMonIcon_PikachuWorldCap, .iconPalIndex = 0, + SHADOW(-3, 5, SHADOW_SIZE_M) FOOTPRINT(Pikachu) .levelUpLearnset = sPikachuLevelUpLearnset, .teachableLearnset = sPikachuTeachableLearnset, @@ -3348,6 +3402,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_PikachuGigantamax, .iconSprite = gMonIcon_PikachuGigantamax, .iconPalIndex = 2, + SHADOW(-3, 12, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Pikachu) .isGigantamax = TRUE, .levelUpLearnset = sPikachuLevelUpLearnset, @@ -3410,6 +3465,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .iconSpriteFemale = gMonIcon_PikachuPartnerF, .iconPalIndexFemale = 2, #endif + SHADOW(-3, 5, SHADOW_SIZE_M) FOOTPRINT(Pikachu) .cannotBeTraded = TRUE, .perfectIVCount = NUM_STATS, @@ -3479,6 +3535,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Raichu, .iconSprite = gMonIcon_Raichu, .iconPalIndex = 0, + SHADOW(2, 10, SHADOW_SIZE_M) FOOTPRINT(Raichu) OVERWORLD( sPicTable_Raichu, @@ -3542,6 +3599,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_RaichuAlolan, .iconSprite = gMonIcon_RaichuAlolan, .iconPalIndex = 2, + SHADOW(3, 15, SHADOW_SIZE_M) FOOTPRINT(Raichu) OVERWORLD( sPicTable_RaichuAlolan, @@ -3608,6 +3666,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Sandshrew, .iconSprite = gMonIcon_Sandshrew, .iconPalIndex = 2, + SHADOW(0, 1, SHADOW_SIZE_M) FOOTPRINT(Sandshrew) OVERWORLD( sPicTable_Sandshrew, @@ -3672,6 +3731,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Sandslash, .iconSprite = gMonIcon_Sandslash, .iconPalIndex = 2, + SHADOW(4, 4, SHADOW_SIZE_L) FOOTPRINT(Sandslash) OVERWORLD( sPicTable_Sandslash, @@ -3735,6 +3795,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_SandshrewAlolan, .iconSprite = gMonIcon_SandshrewAlolan, .iconPalIndex = 0, + SHADOW(-2, -1, SHADOW_SIZE_M) FOOTPRINT(Sandshrew) OVERWORLD( sPicTable_SandshrewAlolan, @@ -3800,6 +3861,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_SandslashAlolan, .iconSprite = gMonIcon_SandslashAlolan, .iconPalIndex = 0, + SHADOW(0, 9, SHADOW_SIZE_L) FOOTPRINT(Sandslash) OVERWORLD( sPicTable_SandslashAlolan, @@ -3870,6 +3932,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_NidoranF, .iconSprite = gMonIcon_NidoranF, .iconPalIndex = 0, + SHADOW(1, 0, SHADOW_SIZE_S) FOOTPRINT(NidoranF) OVERWORLD( sPicTable_NidoranF, @@ -3936,6 +3999,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Nidorina, .iconSprite = gMonIcon_Nidorina, .iconPalIndex = 0, + SHADOW(3, 5, SHADOW_SIZE_M) FOOTPRINT(Nidorina) OVERWORLD( sPicTable_Nidorina, @@ -4009,6 +4073,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Nidoqueen, .iconSprite = gMonIcon_Nidoqueen, .iconPalIndex = 2, + SHADOW(1, 9, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Nidoqueen) OVERWORLD( sPicTable_Nidoqueen, @@ -4073,6 +4138,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_NidoranM, .iconSprite = gMonIcon_NidoranM, .iconPalIndex = 2, + SHADOW(1, 0, SHADOW_SIZE_S) FOOTPRINT(NidoranM) OVERWORLD( sPicTable_NidoranM, @@ -4139,6 +4205,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Nidorino, .iconSprite = gMonIcon_Nidorino, .iconPalIndex = 2, + SHADOW(2, 1, SHADOW_SIZE_L) FOOTPRINT(Nidorino) OVERWORLD( sPicTable_Nidorino, @@ -4213,6 +4280,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Nidoking, .iconSprite = gMonIcon_Nidoking, .iconPalIndex = 2, + SHADOW(0, 8, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Nidoking) OVERWORLD( sPicTable_Nidoking, @@ -4288,6 +4356,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Cleffa, .iconSprite = gMonIcon_Cleffa, .iconPalIndex = 0, + SHADOW(0, -4, SHADOW_SIZE_S) FOOTPRINT(Cleffa) OVERWORLD( sPicTable_Cleffa, @@ -4357,6 +4426,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Clefairy, .iconSprite = gMonIcon_Clefairy, .iconPalIndex = 0, + SHADOW(1, 1, SHADOW_SIZE_S) FOOTPRINT(Clefairy) OVERWORLD( sPicTable_Clefairy, @@ -4432,6 +4502,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Clefable, .iconSprite = gMonIcon_Clefable, .iconPalIndex = 0, + SHADOW(0, 7, SHADOW_SIZE_M) FOOTPRINT(Clefable) OVERWORLD( sPicTable_Clefable, @@ -4495,6 +4566,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Vulpix, .iconSprite = gMonIcon_Vulpix, .iconPalIndex = 5, + SHADOW(0, 2, SHADOW_SIZE_M) FOOTPRINT(Vulpix) OVERWORLD( sPicTable_Vulpix, @@ -4560,6 +4632,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Ninetales, .iconSprite = gMonIcon_Ninetales, .iconPalIndex = 3, + SHADOW(1, 7, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Ninetales) OVERWORLD( sPicTable_Ninetales, @@ -4623,6 +4696,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_VulpixAlolan, .iconSprite = gMonIcon_VulpixAlolan, .iconPalIndex = 2, + SHADOW(-2, 3, SHADOW_SIZE_M) FOOTPRINT(Vulpix) OVERWORLD( sPicTable_VulpixAlolan, @@ -4689,6 +4763,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_NinetalesAlolan, .iconSprite = gMonIcon_NinetalesAlolan, .iconPalIndex = 2, + SHADOW(0, 12, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Ninetales) OVERWORLD( sPicTable_NinetalesAlolan, @@ -4766,6 +4841,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Igglybuff, .iconSprite = gMonIcon_Igglybuff, .iconPalIndex = 1, + SHADOW(0, -3, SHADOW_SIZE_S) FOOTPRINT(Igglybuff) OVERWORLD( sPicTable_Igglybuff, @@ -4835,6 +4911,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Jigglypuff, .iconSprite = gMonIcon_Jigglypuff, .iconPalIndex = 0, + SHADOW(-1, -1, SHADOW_SIZE_S) FOOTPRINT(Jigglypuff) OVERWORLD( sPicTable_Jigglypuff, @@ -4910,6 +4987,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Wigglytuff, .iconSprite = gMonIcon_Wigglytuff, .iconPalIndex = 0, + SHADOW(-1, 8, SHADOW_SIZE_M) FOOTPRINT(Wigglytuff) OVERWORLD( sPicTable_Wigglytuff, @@ -4977,6 +5055,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Zubat, .iconSprite = gMonIcon_Zubat, .iconPalIndex = 2, + SHADOW(-4, 11, SHADOW_SIZE_S) FOOTPRINT(Zubat) OVERWORLD( sPicTable_Zubat, @@ -5044,6 +5123,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Golbat, .iconSprite = gMonIcon_Golbat, .iconPalIndex = 2, + SHADOW(2, 14, SHADOW_SIZE_M) FOOTPRINT(Golbat) OVERWORLD( sPicTable_Golbat, @@ -5113,6 +5193,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Crobat, .iconSprite = gMonIcon_Crobat, .iconPalIndex = 2, + SHADOW(-3, 14, SHADOW_SIZE_M) FOOTPRINT(Crobat) OVERWORLD( sPicTable_Crobat, @@ -5177,6 +5258,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Oddish, .iconSprite = gMonIcon_Oddish, .iconPalIndex = 4, + SHADOW(0, -2, SHADOW_SIZE_S) FOOTPRINT(Oddish) OVERWORLD( sPicTable_Oddish, @@ -5244,6 +5326,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Gloom, .iconSprite = gMonIcon_Gloom, .iconPalIndex = 0, + SHADOW(-1, 3, SHADOW_SIZE_M) FOOTPRINT(Gloom) OVERWORLD( sPicTable_Gloom, @@ -5319,6 +5402,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Vileplume, .iconSprite = gMonIcon_Vileplume, .iconPalIndex = 0, + SHADOW(-1, 7, SHADOW_SIZE_L) FOOTPRINT(Vileplume) OVERWORLD( sPicTable_Vileplume, @@ -5389,6 +5473,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Bellossom, .iconSprite = gMonIcon_Bellossom, .iconPalIndex = 1, + SHADOW(0, 0, SHADOW_SIZE_S) FOOTPRINT(Bellossom) OVERWORLD( sPicTable_Bellossom, @@ -5459,6 +5544,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Paras, .iconSprite = gMonIcon_Paras, .iconPalIndex = 0, + SHADOW(7, -11, SHADOW_SIZE_M) FOOTPRINT(Paras) OVERWORLD( sPicTable_Paras, @@ -5529,6 +5615,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Parasect, .iconSprite = gMonIcon_Parasect, .iconPalIndex = 0, + SHADOW(5, 2, SHADOW_SIZE_L) FOOTPRINT(Parasect) OVERWORLD( sPicTable_Parasect, @@ -5596,6 +5683,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Venonat, .iconSprite = gMonIcon_Venonat, .iconPalIndex = 2, + SHADOW(-1, 5, SHADOW_SIZE_M) FOOTPRINT(Venonat) OVERWORLD( sPicTable_Venonat, @@ -5665,6 +5753,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Venomoth, .iconSprite = gMonIcon_Venomoth, .iconPalIndex = 2, + SHADOW(-5, 18, SHADOW_SIZE_M) FOOTPRINT(Venomoth) OVERWORLD( sPicTable_Venomoth, @@ -5740,6 +5829,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Diglett, .iconSprite = gMonIcon_Diglett, .iconPalIndex = 2, + NO_SHADOW FOOTPRINT(Diglett) OVERWORLD( sPicTable_Diglett, @@ -5805,6 +5895,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Dugtrio, .iconSprite = gMonIcon_Dugtrio, .iconPalIndex = 2, + NO_SHADOW FOOTPRINT(Dugtrio) OVERWORLD( sPicTable_Dugtrio, @@ -5868,6 +5959,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_DiglettAlolan, .iconSprite = gMonIcon_DiglettAlolan, .iconPalIndex = 2, + NO_SHADOW FOOTPRINT(Diglett) OVERWORLD( sPicTable_DiglettAlolan, @@ -5934,6 +6026,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_DugtrioAlolan, .iconSprite = gMonIcon_DugtrioAlolan, .iconPalIndex = 2, + NO_SHADOW FOOTPRINT(Dugtrio) OVERWORLD( sPicTable_DugtrioAlolan, @@ -6005,6 +6098,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Meowth, .iconSprite = gMonIcon_Meowth, .iconPalIndex = 1, + SHADOW(0, 3, SHADOW_SIZE_S) FOOTPRINT(Meowth) OVERWORLD( sPicTable_Meowth, @@ -6075,6 +6169,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Persian, .iconSprite = gMonIcon_Persian, .iconPalIndex = 1, + SHADOW(-2, 8, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Persian) OVERWORLD( sPicTable_Persian, @@ -6138,6 +6233,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_MeowthAlolan, .iconSprite = gMonIcon_MeowthAlolan, .iconPalIndex = 2, + SHADOW(-2, 5, SHADOW_SIZE_M) FOOTPRINT(Meowth) OVERWORLD( sPicTable_MeowthAlolan, @@ -6203,6 +6299,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_PersianAlolan, .iconSprite = gMonIcon_PersianAlolan, .iconPalIndex = 2, + SHADOW(-1, 9, SHADOW_SIZE_L) FOOTPRINT(Persian) OVERWORLD( sPicTable_PersianAlolan, @@ -6267,6 +6364,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_MeowthGalarian, .iconSprite = gMonIcon_MeowthGalarian, .iconPalIndex = 0, + SHADOW(1, 4, SHADOW_SIZE_M) FOOTPRINT(Meowth) OVERWORLD( sPicTable_MeowthGalarian, @@ -6330,6 +6428,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Perrserker, .iconSprite = gMonIcon_Perrserker, .iconPalIndex = 2, + SHADOW(2, 11, SHADOW_SIZE_M) FOOTPRINT(Perrserker) OVERWORLD( sPicTable_Perrserker, @@ -6393,6 +6492,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_MeowthGigantamax, .iconSprite = gMonIcon_MeowthGigantamax, .iconPalIndex = 1, + SHADOW(4, 10, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Meowth) .isGigantamax = TRUE, .levelUpLearnset = sMeowthLevelUpLearnset, @@ -6452,6 +6552,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Psyduck, .iconSprite = gMonIcon_Psyduck, .iconPalIndex = 1, + SHADOW(1, 2, SHADOW_SIZE_M) FOOTPRINT(Psyduck) OVERWORLD( sPicTable_Psyduck, @@ -6514,6 +6615,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Golduck, .iconSprite = gMonIcon_Golduck, .iconPalIndex = 0, + SHADOW(1, 6, SHADOW_SIZE_M) FOOTPRINT(Golduck) OVERWORLD( sPicTable_Golduck, @@ -6581,6 +6683,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Mankey, .iconSprite = gMonIcon_Mankey, .iconPalIndex = 1, + SHADOW(-1, 1, SHADOW_SIZE_M) FOOTPRINT(Mankey) OVERWORLD( sPicTable_Mankey, @@ -6647,6 +6750,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Primeape, .iconSprite = gMonIcon_Primeape, .iconPalIndex = 2, + SHADOW(0, 7, SHADOW_SIZE_L) FOOTPRINT(Primeape) OVERWORLD( sPicTable_Primeape, @@ -6709,6 +6813,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Annihilape, .iconSprite = gMonIcon_Annihilape, .iconPalIndex = 0, + SHADOW(0, 13, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Annihilape) OVERWORLD( sPicTable_Annihilape, @@ -6773,6 +6878,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Growlithe, .iconSprite = gMonIcon_Growlithe, .iconPalIndex = 3, + SHADOW(0, 4, SHADOW_SIZE_M) FOOTPRINT(Growlithe) OVERWORLD( sPicTable_Growlithe, @@ -6837,6 +6943,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Arcanine, .iconSprite = gMonIcon_Arcanine, .iconPalIndex = 3, + SHADOW(-4, 11, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Arcanine) OVERWORLD( sPicTable_Arcanine, @@ -6899,6 +7006,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_GrowlitheHisuian, .iconSprite = gMonIcon_GrowlitheHisuian, .iconPalIndex = 0, + SHADOW(2, -2, SHADOW_SIZE_M) FOOTPRINT(Growlithe) OVERWORLD( sPicTable_GrowlitheHisuian, @@ -6962,6 +7070,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_ArcanineHisuian, .iconSprite = gMonIcon_ArcanineHisuian, .iconPalIndex = 0, + SHADOW(-1, 11, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Arcanine) OVERWORLD( sPicTable_ArcanineHisuian, @@ -7028,6 +7137,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Poliwag, .iconSprite = gMonIcon_Poliwag, .iconPalIndex = 0, + SHADOW(-3, 0, SHADOW_SIZE_S) FOOTPRINT(Poliwag) OVERWORLD( sPicTable_Poliwag, @@ -7093,6 +7203,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Poliwhirl, .iconSprite = gMonIcon_Poliwhirl, .iconPalIndex = 0, + SHADOW(-1, 4, SHADOW_SIZE_M) FOOTPRINT(Poliwhirl) OVERWORLD( sPicTable_Poliwhirl, @@ -7166,6 +7277,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Poliwrath, .iconSprite = gMonIcon_Poliwrath, .iconPalIndex = 0, + SHADOW(0, 7, SHADOW_SIZE_L) FOOTPRINT(Poliwrath) OVERWORLD( sPicTable_Poliwrath, @@ -7240,6 +7352,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Politoed, .iconSprite = gMonIcon_Politoed, .iconPalIndex = 1, + SHADOW(1, 9, SHADOW_SIZE_M) FOOTPRINT(Politoed) OVERWORLD( sPicTable_Politoed, @@ -7310,6 +7423,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Abra, .iconSprite = gMonIcon_Abra, .iconPalIndex = 2, + SHADOW(0, 0, SHADOW_SIZE_L) FOOTPRINT(Abra) OVERWORLD( sPicTable_Abra, @@ -7378,6 +7492,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Kadabra, .iconSprite = gMonIcon_Kadabra, .iconPalIndex = 2, + SHADOW(1, 6, SHADOW_SIZE_L) FOOTPRINT(Kadabra) OVERWORLD( sPicTable_Kadabra, @@ -7455,6 +7570,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Alakazam, .iconSprite = gMonIcon_Alakazam, .iconPalIndex = 2, + SHADOW(-1, 9, SHADOW_SIZE_L) FOOTPRINT(Alakazam) OVERWORLD( sPicTable_Alakazam, @@ -7519,6 +7635,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_AlakazamMega, .iconSprite = gMonIcon_AlakazamMega, .iconPalIndex = 2, + SHADOW(0, 18, SHADOW_SIZE_L) FOOTPRINT(Alakazam) .isMegaEvolution = TRUE, .levelUpLearnset = sAlakazamLevelUpLearnset, @@ -7588,6 +7705,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Machop, .iconSprite = gMonIcon_Machop, .iconPalIndex = 0, + SHADOW(0, 3, SHADOW_SIZE_S) FOOTPRINT(Machop) OVERWORLD( sPicTable_Machop, @@ -7656,6 +7774,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Machoke, .iconSprite = gMonIcon_Machoke, .iconPalIndex = 2, + SHADOW(-1, 9, SHADOW_SIZE_M) FOOTPRINT(Machoke) OVERWORLD( sPicTable_Machoke, @@ -7731,6 +7850,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Machamp, .iconSprite = gMonIcon_Machamp, .iconPalIndex = 0, + SHADOW(7, 13, SHADOW_SIZE_L) FOOTPRINT(Machamp) OVERWORLD( sPicTable_Machamp, @@ -7799,6 +7919,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_MachampGigantamax, .iconSprite = gMonIcon_MachampGigantamax, .iconPalIndex = 0, + SHADOW(7, 13, SHADOW_SIZE_L) FOOTPRINT(Machamp) .isGigantamax = TRUE, .levelUpLearnset = sMachampLevelUpLearnset, @@ -7857,6 +7978,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Bellsprout, .iconSprite = gMonIcon_Bellsprout, .iconPalIndex = 1, + SHADOW(-2, 3, SHADOW_SIZE_S) FOOTPRINT(Bellsprout) OVERWORLD( sPicTable_Bellsprout, @@ -7920,6 +8042,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Weepinbell, .iconSprite = gMonIcon_Weepinbell, .iconPalIndex = 1, + SHADOW(-3, 3, SHADOW_SIZE_M) FOOTPRINT(Weepinbell) OVERWORLD( sPicTable_Weepinbell, @@ -7989,6 +8112,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Victreebel, .iconSprite = gMonIcon_Victreebel, .iconPalIndex = 1, + SHADOW(3, 8, SHADOW_SIZE_M) FOOTPRINT(Victreebel) OVERWORLD( sPicTable_Victreebel, @@ -8052,6 +8176,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Tentacool, .iconSprite = gMonIcon_Tentacool, .iconPalIndex = 0, + SHADOW(1, 6, SHADOW_SIZE_M) FOOTPRINT(Tentacool) OVERWORLD( sPicTable_Tentacool, @@ -8115,6 +8240,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Tentacruel, .iconSprite = gMonIcon_Tentacruel, .iconPalIndex = 0, + SHADOW(2, 8, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Tentacruel) OVERWORLD( sPicTable_Tentacruel, @@ -8200,6 +8326,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Geodude, .iconSprite = gMonIcon_Geodude, .iconPalIndex = 1, + SHADOW(1, 2, SHADOW_SIZE_M) FOOTPRINT(Geodude) OVERWORLD( sPicTable_Geodude, @@ -8264,6 +8391,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Graveler, .iconSprite = gMonIcon_Graveler, .iconPalIndex = 1, + SHADOW(0, 3, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Graveler) OVERWORLD( sPicTable_Graveler, @@ -8328,6 +8456,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Golem, .iconSprite = gMonIcon_Golem, .iconPalIndex = 2, + SHADOW(3, 5, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Golem) OVERWORLD( sPicTable_Golem, @@ -8392,6 +8521,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_GeodudeAlolan, .iconSprite = gMonIcon_GeodudeAlolan, .iconPalIndex = 2, + SHADOW(-1, 10, SHADOW_SIZE_M) FOOTPRINT(Geodude) OVERWORLD( sPicTable_GeodudeAlolan, @@ -8457,6 +8587,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_GravelerAlolan, .iconSprite = gMonIcon_GravelerAlolan, .iconPalIndex = 2, + SHADOW(1, 5, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Graveler) OVERWORLD( sPicTable_GravelerAlolan, @@ -8522,6 +8653,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_GolemAlolan, .iconSprite = gMonIcon_GolemAlolan, .iconPalIndex = 2, + SHADOW(2, 11, SHADOW_SIZE_L) FOOTPRINT(Golem) OVERWORLD( sPicTable_GolemAlolan, @@ -8588,6 +8720,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Ponyta, .iconSprite = gMonIcon_Ponyta, .iconPalIndex = 3, + SHADOW(-1, 7, SHADOW_SIZE_M) FOOTPRINT(Ponyta) OVERWORLD( sPicTable_Ponyta, @@ -8651,6 +8784,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Rapidash, .iconSprite = gMonIcon_Rapidash, .iconPalIndex = 3, + SHADOW(-1, 12, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Rapidash) OVERWORLD( sPicTable_Rapidash, @@ -8713,6 +8847,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_PonytaGalarian, .iconSprite = gMonIcon_PonytaGalarian, .iconPalIndex = 2, + SHADOW(-5, 5, SHADOW_SIZE_M) FOOTPRINT(Ponyta) OVERWORLD( sPicTable_PonytaGalarian, @@ -8777,6 +8912,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_RapidashGalarian, .iconSprite = gMonIcon_RapidashGalarian, .iconPalIndex = 2, + SHADOW(0, 13, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Rapidash) OVERWORLD( sPicTable_RapidashGalarian, @@ -8843,6 +8979,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Slowpoke, .iconSprite = gMonIcon_Slowpoke, .iconPalIndex = 0, + SHADOW(1, -5, SHADOW_SIZE_L) FOOTPRINT(Slowpoke) OVERWORLD( sPicTable_Slowpoke, @@ -8909,6 +9046,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Slowbro, .iconSprite = gMonIcon_Slowbro, .iconPalIndex = 0, + SHADOW(-1, 8, SHADOW_SIZE_L) FOOTPRINT(Slowbro) OVERWORLD( sPicTable_Slowbro, @@ -8973,6 +9111,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Slowking, .iconSprite = gMonIcon_Slowking, .iconPalIndex = 0, + SHADOW(-2, 11, SHADOW_SIZE_M) FOOTPRINT(Slowking) OVERWORLD( sPicTable_Slowking, @@ -9037,6 +9176,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_SlowbroMega, .iconSprite = gMonIcon_SlowbroMega, .iconPalIndex = 0, + SHADOW(0, 13, SHADOW_SIZE_L) FOOTPRINT(Slowbro) .isMegaEvolution = TRUE, .levelUpLearnset = sSlowbroLevelUpLearnset, @@ -9094,6 +9234,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_SlowpokeGalarian, .iconSprite = gMonIcon_SlowpokeGalarian, .iconPalIndex = 0, + SHADOW(-3, -8, SHADOW_SIZE_L) FOOTPRINT(Slowpoke) OVERWORLD( sPicTable_SlowpokeGalarian, @@ -9160,6 +9301,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_SlowbroGalarian, .iconSprite = gMonIcon_SlowbroGalarian, .iconPalIndex = 0, + SHADOW(-5, 9, SHADOW_SIZE_L) FOOTPRINT(Slowbro) OVERWORLD( sPicTable_SlowbroGalarian, @@ -9223,6 +9365,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_SlowkingGalarian, .iconSprite = gMonIcon_SlowkingGalarian, .iconPalIndex = 0, + SHADOW(-2, 12, SHADOW_SIZE_M) FOOTPRINT(Slowking) OVERWORLD( sPicTable_SlowkingGalarian, @@ -9291,6 +9434,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Magnemite, .iconSprite = gMonIcon_Magnemite, .iconPalIndex = 0, + SHADOW(-1, 8, SHADOW_SIZE_S) FOOTPRINT(Magnemite) OVERWORLD( sPicTable_Magnemite, @@ -9354,6 +9498,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Magneton, .iconSprite = gMonIcon_Magneton, .iconPalIndex = 0, + SHADOW(0, 13, SHADOW_SIZE_M) FOOTPRINT(Magneton) OVERWORLD( sPicTable_Magneton, @@ -9425,6 +9570,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Magnezone, .iconSprite = gMonIcon_Magnezone, .iconPalIndex = 0, + SHADOW(4, 11, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Magnezone) OVERWORLD( sPicTable_Magnezone, @@ -9499,6 +9645,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Farfetchd, .iconSprite = gMonIcon_Farfetchd, .iconPalIndex = 1, + SHADOW(-3, 5, SHADOW_SIZE_M) FOOTPRINT(Farfetchd) OVERWORLD( sPicTable_Farfetchd, @@ -9563,6 +9710,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_FarfetchdGalarian, .iconSprite = gMonIcon_FarfetchdGalarian, .iconPalIndex = 1, + SHADOW(-7, 2, SHADOW_SIZE_L) FOOTPRINT(Farfetchd) OVERWORLD( sPicTable_FarfetchdGalarian, @@ -9628,6 +9776,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Sirfetchd, .iconSprite = gMonIcon_Sirfetchd, .iconPalIndex = 1, + SHADOW(1, 11, SHADOW_SIZE_L) FOOTPRINT(Sirfetchd) OVERWORLD( sPicTable_Sirfetchd, @@ -9696,6 +9845,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Doduo, .iconSprite = gMonIcon_Doduo, .iconPalIndex = 2, + SHADOW(6, 5, SHADOW_SIZE_M) FOOTPRINT(Doduo) OVERWORLD( sPicTable_Doduo, @@ -9769,6 +9919,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Dodrio, .iconSprite = gMonIcon_Dodrio, .iconPalIndex = 2, + SHADOW(3, 12, SHADOW_SIZE_L) FOOTPRINT(Dodrio) OVERWORLD( sPicTable_Dodrio, @@ -9835,6 +9986,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Seel, .iconSprite = gMonIcon_Seel, .iconPalIndex = 0, + SHADOW(0, 3, SHADOW_SIZE_L) FOOTPRINT(Seel) OVERWORLD( sPicTable_Seel, @@ -9901,6 +10053,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Dewgong, .iconSprite = gMonIcon_Dewgong, .iconPalIndex = 2, + SHADOW(2, 9, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Dewgong) OVERWORLD( sPicTable_Dewgong, @@ -9964,6 +10117,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Grimer, .iconSprite = gMonIcon_Grimer, .iconPalIndex = 2, + SHADOW(2, 3, SHADOW_SIZE_M) FOOTPRINT(Grimer) OVERWORLD( sPicTable_Grimer, @@ -10030,6 +10184,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Muk, .iconSprite = gMonIcon_Muk, .iconPalIndex = 2, + SHADOW(-1, 6, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Muk) OVERWORLD( sPicTable_Muk, @@ -10093,6 +10248,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_GrimerAlolan, .iconSprite = gMonIcon_GrimerAlolan, .iconPalIndex = 1, + SHADOW(2, 1, SHADOW_SIZE_M) FOOTPRINT(Grimer) OVERWORLD( sPicTable_GrimerAlolan, @@ -10160,6 +10316,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_MukAlolan, .iconSprite = gMonIcon_MukAlolan, .iconPalIndex = 0, + SHADOW(-1, 7, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Muk) OVERWORLD( sPicTable_MukAlolan, @@ -10232,6 +10389,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Shellder, .iconSprite = gMonIcon_Shellder, .iconPalIndex = 2, + SHADOW(0, -4, SHADOW_SIZE_S) FOOTPRINT(Shellder) OVERWORLD( sPicTable_Shellder, @@ -10300,6 +10458,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Cloyster, .iconSprite = gMonIcon_Cloyster, .iconPalIndex = 2, + SHADOW(4, 8, SHADOW_SIZE_M) FOOTPRINT(Cloyster) OVERWORLD( sPicTable_Cloyster, @@ -10363,6 +10522,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Gastly, .iconSprite = gMonIcon_Gastly, .iconPalIndex = 2, + SHADOW(0, 11, SHADOW_SIZE_S) FOOTPRINT(Gastly) OVERWORLD( sPicTable_Gastly, @@ -10427,6 +10587,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Haunter, .iconSprite = gMonIcon_Haunter, .iconPalIndex = 2, + SHADOW(1, 12, SHADOW_SIZE_M) FOOTPRINT(Haunter) OVERWORLD( sPicTable_Haunter, @@ -10501,6 +10662,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Gengar, .iconSprite = gMonIcon_Gengar, .iconPalIndex = 2, + SHADOW(3, 5, SHADOW_SIZE_L) FOOTPRINT(Gengar) OVERWORLD( sPicTable_Gengar, @@ -10564,6 +10726,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_GengarMega, .iconSprite = gMonIcon_GengarMega, .iconPalIndex = 2, + SHADOW(6, 1, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Gengar) .isMegaEvolution = TRUE, .levelUpLearnset = sGengarLevelUpLearnset, @@ -10621,6 +10784,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_GengarGigantamax, .iconSprite = gMonIcon_GengarGigantamax, .iconPalIndex = 2, + NO_SHADOW FOOTPRINT(Gengar) .isGigantamax = TRUE, .levelUpLearnset = sGengarLevelUpLearnset, @@ -10679,6 +10843,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Onix, .iconSprite = gMonIcon_Onix, .iconPalIndex = 2, + SHADOW(0, 10, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Onix) OVERWORLD( sPicTable_Onix, @@ -10749,6 +10914,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Steelix, .iconSprite = gMonIcon_Steelix, .iconPalIndex = 0, + SHADOW(2, 12, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Steelix) OVERWORLD( sPicTable_Steelix, @@ -10813,6 +10979,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_SteelixMega, .iconSprite = gMonIcon_SteelixMega, .iconPalIndex = 0, + SHADOW(1, 13, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Steelix) .isMegaEvolution = TRUE, .levelUpLearnset = sSteelixLevelUpLearnset, @@ -10877,6 +11044,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Drowzee, .iconSprite = gMonIcon_Drowzee, .iconPalIndex = 2, + SHADOW(1, 6, SHADOW_SIZE_M) FOOTPRINT(Drowzee) OVERWORLD( sPicTable_Drowzee, @@ -10948,6 +11116,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Hypno, .iconSprite = gMonIcon_Hypno, .iconPalIndex = 2, + SHADOW(-3, 9, SHADOW_SIZE_L) FOOTPRINT(Hypno) OVERWORLD( sPicTable_Hypno, @@ -11010,6 +11179,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Krabby, .iconSprite = gMonIcon_Krabby, .iconPalIndex = 0, + SHADOW(0, -1, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Krabby) OVERWORLD( sPicTable_Krabby, @@ -11074,6 +11244,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Kingler, .iconSprite = gMonIcon_Kingler, .iconPalIndex = 0, + SHADOW(-2, 4, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Kingler) OVERWORLD( sPicTable_Kingler, @@ -11138,6 +11309,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_KinglerGigantamax, .iconSprite = gMonIcon_KinglerGigantamax, .iconPalIndex = 0, + SHADOW(-3, 10, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Kingler) .isGigantamax = TRUE, .levelUpLearnset = sKinglerLevelUpLearnset, @@ -11204,6 +11376,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Voltorb, .iconSprite = gMonIcon_Voltorb, .iconPalIndex = 0, + SHADOW(0, -2, SHADOW_SIZE_S) FOOTPRINT(Voltorb) OVERWORLD( sPicTable_Voltorb, @@ -11266,6 +11439,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Electrode, .iconSprite = gMonIcon_Electrode, .iconPalIndex = 0, + SHADOW(1, 2, SHADOW_SIZE_M) FOOTPRINT(Electrode) OVERWORLD( sPicTable_Electrode, @@ -11328,6 +11502,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_VoltorbHisuian, .iconSprite = gMonIcon_VoltorbHisuian, .iconPalIndex = 0, + SHADOW(1, -4, SHADOW_SIZE_S) FOOTPRINT(Voltorb) OVERWORLD( sPicTable_VoltorbHisuian, @@ -11391,6 +11566,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_ElectrodeHisuian, .iconSprite = gMonIcon_ElectrodeHisuian, .iconPalIndex = 1, + SHADOW(-1, 4, SHADOW_SIZE_M) FOOTPRINT(Electrode) OVERWORLD( sPicTable_ElectrodeHisuian, @@ -11457,6 +11633,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Exeggcute, .iconSprite = gMonIcon_Exeggcute, .iconPalIndex = 0, + SHADOW(0, -5, SHADOW_SIZE_L) FOOTPRINT(Exeggcute) OVERWORLD( sPicTable_Exeggcute, @@ -11530,6 +11707,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Exeggutor, .iconSprite = gMonIcon_Exeggutor, .iconPalIndex = 1, + SHADOW(2, 13, SHADOW_SIZE_L) FOOTPRINT(Exeggutor) OVERWORLD( sPicTable_Exeggutor, @@ -11592,6 +11770,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_ExeggutorAlolan, .iconSprite = gMonIcon_ExeggutorAlolan, .iconPalIndex = 1, + SHADOW(6, 12, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Exeggutor) OVERWORLD( sPicTable_ExeggutorAlolan, @@ -11659,6 +11838,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Cubone, .iconSprite = gMonIcon_Cubone, .iconPalIndex = 2, + SHADOW(1, 0, SHADOW_SIZE_S) FOOTPRINT(Cubone) OVERWORLD( sPicTable_Cubone, @@ -11724,6 +11904,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Marowak, .iconSprite = gMonIcon_Marowak, .iconPalIndex = 2, + SHADOW(6, 6, SHADOW_SIZE_M) FOOTPRINT(Marowak) OVERWORLD( sPicTable_Marowak, @@ -11783,6 +11964,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_MarowakAlolan, .iconSprite = gMonIcon_MarowakAlolan, .iconPalIndex = 1, + SHADOW(-2, 11, SHADOW_SIZE_M) FOOTPRINT(Marowak) OVERWORLD( sPicTable_MarowakAlolan, @@ -11842,6 +12024,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_MarowakAlolan, .iconSprite = gMonIcon_MarowakAlolan, .iconPalIndex = 1, + SHADOW(-2, 11, SHADOW_SIZE_M) FOOTPRINT(Marowak) .isTotem = TRUE, .isAlolanForm = TRUE, @@ -11906,6 +12089,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Tyrogue, .iconSprite = gMonIcon_Tyrogue, .iconPalIndex = 2, + SHADOW(0, 4, SHADOW_SIZE_S) FOOTPRINT(Tyrogue) OVERWORLD( sPicTable_Tyrogue, @@ -11975,6 +12159,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Hitmonlee, .iconSprite = gMonIcon_Hitmonlee, .iconPalIndex = 2, + SHADOW(2, 8, SHADOW_SIZE_M) FOOTPRINT(Hitmonlee) OVERWORLD( sPicTable_Hitmonlee, @@ -12039,6 +12224,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Hitmonchan, .iconSprite = gMonIcon_Hitmonchan, .iconPalIndex = 2, + SHADOW(1, 9, SHADOW_SIZE_M) FOOTPRINT(Hitmonchan) OVERWORLD( sPicTable_Hitmonchan, @@ -12104,6 +12290,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Hitmontop, .iconSprite = gMonIcon_Hitmontop, .iconPalIndex = 2, + SHADOW(1, 7, SHADOW_SIZE_L) FOOTPRINT(Hitmontop) OVERWORLD( sPicTable_Hitmontop, @@ -12168,6 +12355,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Lickitung, .iconSprite = gMonIcon_Lickitung, .iconPalIndex = 0, + SHADOW(2, 6, SHADOW_SIZE_M) FOOTPRINT(Lickitung) OVERWORLD( sPicTable_Lickitung, @@ -12232,6 +12420,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Lickilicky, .iconSprite = gMonIcon_Lickilicky, .iconPalIndex = 1, + SHADOW(1, 11, SHADOW_SIZE_M) FOOTPRINT(Lickilicky) OVERWORLD( sPicTable_Lickilicky, @@ -12301,6 +12490,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Koffing, .iconSprite = gMonIcon_Koffing, .iconPalIndex = 2, + SHADOW(0, 15, SHADOW_SIZE_S) FOOTPRINT(Koffing) OVERWORLD( sPicTable_Koffing, @@ -12371,6 +12561,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Weezing, .iconSprite = gMonIcon_Weezing, .iconPalIndex = 2, + SHADOW(5, 14, SHADOW_SIZE_M) FOOTPRINT(Weezing) OVERWORLD( sPicTable_Weezing, @@ -12436,6 +12627,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_WeezingGalarian, .iconSprite = gMonIcon_WeezingGalarian, .iconPalIndex = 1, + SHADOW(7, 17, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Weezing) OVERWORLD( sPicTable_WeezingGalarian, @@ -12505,6 +12697,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Rhyhorn, .iconSprite = gMonIcon_Rhyhorn, .iconPalIndex = 1, + SHADOW(0, 0, SHADOW_SIZE_L) FOOTPRINT(Rhyhorn) OVERWORLD( sPicTable_Rhyhorn, @@ -12571,6 +12764,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Rhydon, .iconSprite = gMonIcon_Rhydon, .iconPalIndex = 1, + SHADOW(3, 9, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Rhydon) OVERWORLD( sPicTable_Rhydon, @@ -12644,6 +12838,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Rhyperior, .iconSprite = gMonIcon_Rhyperior, .iconPalIndex = 0, + SHADOW(2, 10, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Rhyperior) OVERWORLD( sPicTable_Rhyperior, @@ -12709,6 +12904,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Happiny, .iconSprite = gMonIcon_Happiny, .iconPalIndex = 0, + SHADOW(-1, 1, SHADOW_SIZE_S) FOOTPRINT(Happiny) OVERWORLD( sPicTable_Happiny, @@ -12774,6 +12970,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Chansey, .iconSprite = gMonIcon_Chansey, .iconPalIndex = 0, + SHADOW(1, 4, SHADOW_SIZE_L) FOOTPRINT(Chansey) OVERWORLD( sPicTable_Chansey, @@ -12838,6 +13035,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Blissey, .iconSprite = gMonIcon_Blissey, .iconPalIndex = 0, + SHADOW(1, 8, SHADOW_SIZE_L) FOOTPRINT(Blissey) OVERWORLD( sPicTable_Blissey, @@ -12905,6 +13103,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Tangela, .iconSprite = gMonIcon_Tangela, .iconPalIndex = 0, + SHADOW(-1, 1, SHADOW_SIZE_M) FOOTPRINT(Tangela) OVERWORLD( sPicTable_Tangela, @@ -12970,6 +13169,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Tangrowth, .iconSprite = gMonIcon_Tangrowth, .iconPalIndex = 0, + SHADOW(-2, 9, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Tangrowth) OVERWORLD( sPicTable_Tangrowth, @@ -13033,6 +13233,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Kangaskhan, .iconSprite = gMonIcon_Kangaskhan, .iconPalIndex = 2, + SHADOW(0, 11, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Kangaskhan) OVERWORLD( sPicTable_Kangaskhan, @@ -13097,6 +13298,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_KangaskhanMega, .iconSprite = gMonIcon_KangaskhanMega, .iconPalIndex = 2, + SHADOW(0, 11, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Kangaskhan) .isMegaEvolution = TRUE, .levelUpLearnset = sKangaskhanLevelUpLearnset, @@ -13161,6 +13363,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Horsea, .iconSprite = gMonIcon_Horsea, .iconPalIndex = 0, + SHADOW(0, 0, SHADOW_SIZE_S) FOOTPRINT(Horsea) OVERWORLD( sPicTable_Horsea, @@ -13229,6 +13432,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Seadra, .iconSprite = gMonIcon_Seadra, .iconPalIndex = 0, + SHADOW(-2, 7, SHADOW_SIZE_M) FOOTPRINT(Seadra) OVERWORLD( sPicTable_Seadra, @@ -13305,6 +13509,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Kingdra, .iconSprite = gMonIcon_Kingdra, .iconPalIndex = 0, + SHADOW(3, 12, SHADOW_SIZE_M) FOOTPRINT(Kingdra) OVERWORLD( sPicTable_Kingdra, @@ -13373,6 +13578,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Goldeen, .iconSprite = gMonIcon_Goldeen, .iconPalIndex = 0, + SHADOW(-6, 0, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Goldeen) OVERWORLD( sPicTable_Goldeen, @@ -13440,6 +13646,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Seaking, .iconSprite = gMonIcon_Seaking, .iconPalIndex = 0, + SHADOW(0, 8, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Seaking) OVERWORLD( sPicTable_Seaking, @@ -13505,6 +13712,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Staryu, .iconSprite = gMonIcon_Staryu, .iconPalIndex = 2, + SHADOW(-1, 2, SHADOW_SIZE_M) FOOTPRINT(Staryu) OVERWORLD( sPicTable_Staryu, @@ -13568,6 +13776,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Starmie, .iconSprite = gMonIcon_Starmie, .iconPalIndex = 2, + SHADOW(0, 7, SHADOW_SIZE_L) FOOTPRINT(Starmie) OVERWORLD( sPicTable_Starmie, @@ -13639,6 +13848,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_MimeJr, .iconSprite = gMonIcon_MimeJr, .iconPalIndex = 0, + SHADOW(-5, 4, SHADOW_SIZE_S) FOOTPRINT(MimeJr) OVERWORLD( sPicTable_MimeJr, @@ -13707,6 +13917,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_MrMime, .iconSprite = gMonIcon_MrMime, .iconPalIndex = 0, + SHADOW(-1, 7, SHADOW_SIZE_M) FOOTPRINT(MrMime) OVERWORLD( sPicTable_MrMime, @@ -13770,6 +13981,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_MrMimeGalarian, .iconSprite = gMonIcon_MrMimeGalarian, .iconPalIndex = 0, + SHADOW(-1, 6, SHADOW_SIZE_M) FOOTPRINT(MrMime) OVERWORLD( sPicTable_MrMimeGalarian, @@ -13833,6 +14045,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_MrRime, .iconSprite = gMonIcon_MrRime, .iconPalIndex = 0, + SHADOW(3, 9, SHADOW_SIZE_L) FOOTPRINT(MrRime) OVERWORLD( sPicTable_MrRime, @@ -13903,6 +14116,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Scyther, .iconSprite = gMonIcon_Scyther, .iconPalIndex = 1, + SHADOW(0, 7, SHADOW_SIZE_L) FOOTPRINT(Scyther) OVERWORLD( sPicTable_Scyther, @@ -13975,6 +14189,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Scizor, .iconSprite = gMonIcon_Scizor, .iconPalIndex = 0, + SHADOW(3, 9, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Scizor) OVERWORLD( sPicTable_Scizor, @@ -14038,6 +14253,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_ScizorMega, .iconSprite = gMonIcon_ScizorMega, .iconPalIndex = 0, + SHADOW(5, 15, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Scizor) .isMegaEvolution = TRUE, .levelUpLearnset = sScizorLevelUpLearnset, @@ -14096,6 +14312,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Kleavor, .iconSprite = gMonIcon_Kleavor, .iconPalIndex = 2, + SHADOW(2, 12, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Kleavor) OVERWORLD( sPicTable_Kleavor, @@ -14165,6 +14382,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Smoochum, .iconSprite = gMonIcon_Smoochum, .iconPalIndex = 1, + SHADOW(-1, 0, SHADOW_SIZE_S) FOOTPRINT(Smoochum) OVERWORLD( sPicTable_Smoochum, @@ -14232,6 +14450,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Jynx, .iconSprite = gMonIcon_Jynx, .iconPalIndex = 2, + SHADOW(0, 3, SHADOW_SIZE_L) FOOTPRINT(Jynx) OVERWORLD( sPicTable_Jynx, @@ -14297,6 +14516,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Elekid, .iconSprite = gMonIcon_Elekid, .iconPalIndex = 1, + SHADOW(-1, 1, SHADOW_SIZE_M) FOOTPRINT(Elekid) OVERWORLD( sPicTable_Elekid, @@ -14362,6 +14582,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Electabuzz, .iconSprite = gMonIcon_Electabuzz, .iconPalIndex = 1, + SHADOW(-2, 9, SHADOW_SIZE_L) FOOTPRINT(Electabuzz) OVERWORLD( sPicTable_Electabuzz, @@ -14432,6 +14653,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Electivire, .iconSprite = gMonIcon_Electivire, .iconPalIndex = 1, + SHADOW(-3, 11, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Electivire) OVERWORLD( sPicTable_Electivire, @@ -14498,6 +14720,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Magby, .iconSprite = gMonIcon_Magby, .iconPalIndex = 0, + SHADOW(0, 2, SHADOW_SIZE_S) FOOTPRINT(Magby) OVERWORLD( sPicTable_Magby, @@ -14562,6 +14785,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Magmar, .iconSprite = gMonIcon_Magmar, .iconPalIndex = 0, + SHADOW(3, 8, SHADOW_SIZE_L) FOOTPRINT(Magmar) OVERWORLD( sPicTable_Magmar, @@ -14633,6 +14857,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Magmortar, .iconSprite = gMonIcon_Magmortar, .iconPalIndex = 0, + SHADOW(4, 11, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Magmortar) OVERWORLD( sPicTable_Magmortar, @@ -14700,6 +14925,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Pinsir, .iconSprite = gMonIcon_Pinsir, .iconPalIndex = 2, + SHADOW(5, 7, SHADOW_SIZE_L) FOOTPRINT(Pinsir) OVERWORLD( sPicTable_Pinsir, @@ -14765,6 +14991,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_PinsirMega, .iconSprite = gMonIcon_PinsirMega, .iconPalIndex = 2, + SHADOW(3, 12, SHADOW_SIZE_L) FOOTPRINT(Pinsir) .isMegaEvolution = TRUE, .levelUpLearnset = sPinsirLevelUpLearnset, @@ -14830,6 +15057,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Tauros, .iconSprite = gMonIcon_Tauros, .iconPalIndex = 2, + SHADOW(1, 7, SHADOW_SIZE_L) FOOTPRINT(Tauros) OVERWORLD( sPicTable_Tauros, @@ -14892,6 +15120,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_TaurosPaldeanCombatBreed, .iconSprite = gMonIcon_TaurosPaldeanCombatBreed, .iconPalIndex = 0, + SHADOW(1, 7, SHADOW_SIZE_L) FOOTPRINT(Tauros) OVERWORLD( sPicTable_TaurosPaldeanCombatBreed, @@ -14955,6 +15184,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_TaurosPaldeanBlazeBreed, .iconSprite = gMonIcon_TaurosPaldeanBlazeBreed, .iconPalIndex = 0, + SHADOW(1, 7, SHADOW_SIZE_L) FOOTPRINT(Tauros) OVERWORLD( sPicTable_TaurosPaldeanBlazeBreed, @@ -15018,6 +15248,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_TaurosPaldeanAquaBreed, .iconSprite = gMonIcon_TaurosPaldeanAquaBreed, .iconPalIndex = 0, + SHADOW(1, 7, SHADOW_SIZE_L) FOOTPRINT(Tauros) OVERWORLD( sPicTable_TaurosPaldeanAquaBreed, @@ -15088,6 +15319,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Magikarp, .iconSprite = gMonIcon_Magikarp, .iconPalIndex = 0, + SHADOW(1, 7, SHADOW_SIZE_M) FOOTPRINT(Magikarp) OVERWORLD( sPicTable_Magikarp, @@ -15154,6 +15386,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Gyarados, .iconSprite = gMonIcon_Gyarados, .iconPalIndex = 0, + SHADOW(5, 9, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Gyarados) OVERWORLD( sPicTable_Gyarados, @@ -15218,6 +15451,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_GyaradosMega, .iconSprite = gMonIcon_GyaradosMega, .iconPalIndex = 0, + SHADOW(3, 17, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Gyarados) .isMegaEvolution = TRUE, .levelUpLearnset = sGyaradosLevelUpLearnset, @@ -15278,6 +15512,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Lapras, .iconSprite = gMonIcon_Lapras, .iconPalIndex = 2, + SHADOW(2, 8, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Lapras) OVERWORLD( sPicTable_Lapras, @@ -15344,6 +15579,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_LaprasGigantamax, .iconSprite = gMonIcon_LaprasGigantamax, .iconPalIndex = 2, + SHADOW(2, 11, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Lapras) .isGigantamax = TRUE, .levelUpLearnset = sLaprasLevelUpLearnset, @@ -15405,6 +15641,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Ditto, .iconSprite = gMonIcon_Ditto, .iconPalIndex = 2, + SHADOW(0, -4, SHADOW_SIZE_M) FOOTPRINT(Ditto) OVERWORLD( sPicTable_Ditto, @@ -15472,6 +15709,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Eevee, .iconSprite = gMonIcon_Eevee, .iconPalIndex = 2, + SHADOW(-2, 2, SHADOW_SIZE_S) FOOTPRINT(Eevee) OVERWORLD( sPicTable_Eevee, @@ -15546,6 +15784,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_EeveeGigantamax, .iconSprite = gMonIcon_EeveeGigantamax, .iconPalIndex = 2, + SHADOW(0, 4, SHADOW_SIZE_L) FOOTPRINT(Eevee) .isGigantamax = TRUE, .levelUpLearnset = sEeveeLevelUpLearnset, @@ -15607,6 +15846,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .iconSpriteFemale = gMonIcon_EeveePartnerF, .iconPalIndexFemale = 2, #endif + SHADOW(-2, 2, SHADOW_SIZE_S) FOOTPRINT(Eevee) .cannotBeTraded = TRUE, .perfectIVCount = NUM_STATS, @@ -15663,6 +15903,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Vaporeon, .iconSprite = gMonIcon_Vaporeon, .iconPalIndex = 0, + SHADOW(-4, 3, SHADOW_SIZE_M) FOOTPRINT(Vaporeon) OVERWORLD( sPicTable_Vaporeon, @@ -15723,6 +15964,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Jolteon, .iconSprite = gMonIcon_Jolteon, .iconPalIndex = 2, + SHADOW(0, 2, SHADOW_SIZE_M) FOOTPRINT(Jolteon) OVERWORLD( sPicTable_Jolteon, @@ -15783,6 +16025,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Flareon, .iconSprite = gMonIcon_Flareon, .iconPalIndex = 3, + SHADOW(-2, 1, SHADOW_SIZE_L) FOOTPRINT(Flareon) OVERWORLD( sPicTable_Flareon, @@ -15844,6 +16087,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Espeon, .iconSprite = gMonIcon_Espeon, .iconPalIndex = 2, + SHADOW(2, 4, SHADOW_SIZE_M) FOOTPRINT(Espeon) OVERWORLD( sPicTable_Espeon, @@ -15904,6 +16148,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Umbreon, .iconSprite = gMonIcon_Umbreon, .iconPalIndex = 0, + SHADOW(0, 3, SHADOW_SIZE_M) FOOTPRINT(Umbreon) OVERWORLD( sPicTable_Umbreon, @@ -15966,6 +16211,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Leafeon, .iconSprite = gMonIcon_Leafeon, .iconPalIndex = 1, + SHADOW(0, 4, SHADOW_SIZE_M) FOOTPRINT(Leafeon) OVERWORLD( sPicTable_Leafeon, @@ -16026,6 +16272,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Glaceon, .iconSprite = gMonIcon_Glaceon, .iconPalIndex = 0, + SHADOW(0, 3, SHADOW_SIZE_M) FOOTPRINT(Glaceon) OVERWORLD( sPicTable_Glaceon, @@ -16089,6 +16336,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Sylveon, .iconSprite = gMonIcon_Sylveon, .iconPalIndex = 0, + SHADOW(2, 9, SHADOW_SIZE_M) FOOTPRINT(Sylveon) OVERWORLD( sPicTable_Sylveon, @@ -16156,6 +16404,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Porygon, .iconSprite = gMonIcon_Porygon, .iconPalIndex = 0, + SHADOW(0, -2, SHADOW_SIZE_S) FOOTPRINT(Porygon) OVERWORLD( sPicTable_Porygon, @@ -16224,6 +16473,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Porygon2, .iconSprite = gMonIcon_Porygon2, .iconPalIndex = 0, + SHADOW(0, 5, SHADOW_SIZE_S) FOOTPRINT(Porygon2) OVERWORLD( sPicTable_Porygon2, @@ -16294,6 +16544,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_PorygonZ, .iconSprite = gMonIcon_PorygonZ, .iconPalIndex = 0, + SHADOW(0, 17, SHADOW_SIZE_S) FOOTPRINT(PorygonZ) OVERWORLD( sPicTable_PorygonZ, @@ -16364,6 +16615,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Omanyte, .iconSprite = gMonIcon_Omanyte, .iconPalIndex = 0, + SHADOW(-2, -2, SHADOW_SIZE_S) FOOTPRINT(Omanyte) OVERWORLD( sPicTable_Omanyte, @@ -16426,6 +16678,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Omastar, .iconSprite = gMonIcon_Omastar, .iconPalIndex = 0, + SHADOW(0, 4, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Omastar) OVERWORLD( sPicTable_Omastar, @@ -16494,6 +16747,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Kabuto, .iconSprite = gMonIcon_Kabuto, .iconPalIndex = 2, + SHADOW(2, -3, SHADOW_SIZE_S) FOOTPRINT(Kabuto) OVERWORLD( sPicTable_Kabuto, @@ -16562,6 +16816,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Kabutops, .iconSprite = gMonIcon_Kabutops, .iconPalIndex = 2, + SHADOW(1, 10, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Kabutops) OVERWORLD( sPicTable_Kabutops, @@ -16625,6 +16880,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Aerodactyl, .iconSprite = gMonIcon_Aerodactyl, .iconPalIndex = 2, + SHADOW(-2, 16, SHADOW_SIZE_M) FOOTPRINT(Aerodactyl) OVERWORLD( sPicTable_Aerodactyl, @@ -16689,6 +16945,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_AerodactylMega, .iconSprite = gMonIcon_AerodactylMega, .iconPalIndex = 2, + SHADOW(-2, 16, SHADOW_SIZE_M) FOOTPRINT(Aerodactyl) .isMegaEvolution = TRUE, .levelUpLearnset = sAerodactylLevelUpLearnset, @@ -16751,6 +17008,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Munchlax, .iconSprite = gMonIcon_Munchlax, .iconPalIndex = 3, + SHADOW(-1, 2, SHADOW_SIZE_M) FOOTPRINT(Munchlax) OVERWORLD( sPicTable_Munchlax, @@ -16816,6 +17074,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Snorlax, .iconSprite = gMonIcon_Snorlax, .iconPalIndex = 3, + SHADOW(0, 9, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Snorlax) OVERWORLD( sPicTable_Snorlax, @@ -16882,6 +17141,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_SnorlaxGigantamax, .iconSprite = gMonIcon_SnorlaxGigantamax, .iconPalIndex = 3, + SHADOW(0, 11, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Snorlax) .isGigantamax = TRUE, .levelUpLearnset = sSnorlaxLevelUpLearnset, @@ -16947,6 +17207,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Articuno, .iconSprite = gMonIcon_Articuno, .iconPalIndex = 2, + SHADOW(3, 10, SHADOW_SIZE_M) FOOTPRINT(Articuno) OVERWORLD( sPicTable_Articuno, @@ -17012,6 +17273,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_ArticunoGalarian, .iconSprite = gMonIcon_ArticunoGalarian, .iconPalIndex = 2, + SHADOW(3, 14, SHADOW_SIZE_M) FOOTPRINT(Articuno) OVERWORLD( sPicTable_ArticunoGalarian, @@ -17090,6 +17352,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Zapdos, .iconSprite = gMonIcon_Zapdos, .iconPalIndex = 0, + SHADOW(1, 15, SHADOW_SIZE_M) FOOTPRINT(Zapdos) OVERWORLD( sPicTable_Zapdos, @@ -17154,6 +17417,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_ZapdosGalarian, .iconSprite = gMonIcon_ZapdosGalarian, .iconPalIndex = 0, + SHADOW(-2, 11, SHADOW_SIZE_M) FOOTPRINT(Zapdos) OVERWORLD( sPicTable_ZapdosGalarian, @@ -17227,6 +17491,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Moltres, .iconSprite = gMonIcon_Moltres, .iconPalIndex = 0, + SHADOW(-1, 12, SHADOW_SIZE_M) FOOTPRINT(Moltres) OVERWORLD( sPicTable_Moltres, @@ -17291,6 +17556,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_MoltresGalarian, .iconSprite = gMonIcon_MoltresGalarian, .iconPalIndex = 0, + SHADOW(0, 12, SHADOW_SIZE_M) FOOTPRINT(Moltres) OVERWORLD( sPicTable_MoltresGalarian, @@ -17359,6 +17625,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Dratini, .iconSprite = gMonIcon_Dratini, .iconPalIndex = 0, + SHADOW(3, 3, SHADOW_SIZE_L) FOOTPRINT(Dratini) OVERWORLD( sPicTable_Dratini, @@ -17422,6 +17689,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Dragonair, .iconSprite = gMonIcon_Dragonair, .iconPalIndex = 0, + SHADOW(0, 10, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Dragonair) OVERWORLD( sPicTable_Dragonair, @@ -17490,6 +17758,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Dragonite, .iconSprite = gMonIcon_Dragonite, .iconPalIndex = 2, + SHADOW(0, 11, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Dragonite) OVERWORLD( sPicTable_Dragonite, @@ -17558,6 +17827,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Mewtwo, .iconSprite = gMonIcon_Mewtwo, .iconPalIndex = 2, + SHADOW(6, 12, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Mewtwo) OVERWORLD( sPicTable_Mewtwo, @@ -17624,6 +17894,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_MewtwoMegaX, .iconSprite = gMonIcon_MewtwoMegaX, .iconPalIndex = 2, + SHADOW(1, 12, SHADOW_SIZE_M) FOOTPRINT(Mewtwo) .isLegendary = TRUE, .isMegaEvolution = TRUE, @@ -17683,6 +17954,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_MewtwoMegaY, .iconSprite = gMonIcon_MewtwoMegaY, .iconPalIndex = 2, + SHADOW(0, 14, SHADOW_SIZE_S) FOOTPRINT(Mewtwo) .isLegendary = TRUE, .isMegaEvolution = TRUE, @@ -17753,6 +18025,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .shinyPalette = gMonShinyPalette_Mew, .iconSprite = gMonIcon_Mew, .iconPalIndex = 0, + SHADOW(0, 13, SHADOW_SIZE_S) FOOTPRINT(Mew) OVERWORLD( sPicTable_Mew, diff --git a/src/data/pokemon/species_info/gen_2_families.h b/src/data/pokemon/species_info/gen_2_families.h index 8c99c6b1db..f59e8a5417 100644 --- a/src/data/pokemon/species_info/gen_2_families.h +++ b/src/data/pokemon/species_info/gen_2_families.h @@ -51,6 +51,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Chikorita, .iconSprite = gMonIcon_Chikorita, .iconPalIndex = 1, + SHADOW(-1, 2, SHADOW_SIZE_S) FOOTPRINT(Chikorita) OVERWORLD( sPicTable_Chikorita, @@ -114,6 +115,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Bayleef, .iconSprite = gMonIcon_Bayleef, .iconPalIndex = 1, + SHADOW(-1, 10, SHADOW_SIZE_M) FOOTPRINT(Bayleef) OVERWORLD( sPicTable_Bayleef, @@ -186,6 +188,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Meganium, .iconSprite = gMonIcon_Meganium, .iconPalIndex = 1, + SHADOW(0, 13, SHADOW_SIZE_M) FOOTPRINT(Meganium) OVERWORLD( sPicTable_Meganium, @@ -248,6 +251,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Cyndaquil, .iconSprite = gMonIcon_Cyndaquil, .iconPalIndex = 3, + SHADOW(0, -1, SHADOW_SIZE_S) FOOTPRINT(Cyndaquil) OVERWORLD( sPicTable_Cyndaquil, @@ -311,6 +315,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Quilava, .iconSprite = gMonIcon_Quilava, .iconPalIndex = 3, + SHADOW(0, 2, SHADOW_SIZE_M) FOOTPRINT(Quilava) OVERWORLD( sPicTable_Quilava, @@ -382,6 +387,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Typhlosion, .iconSprite = gMonIcon_Typhlosion, .iconPalIndex = 3, + SHADOW(4, 14, SHADOW_SIZE_L) FOOTPRINT(Typhlosion) OVERWORLD( sPicTable_Typhlosion, @@ -444,6 +450,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_TyphlosionHisuian, .iconSprite = gMonIcon_TyphlosionHisuian, .iconPalIndex = 1, + SHADOW(2, 14, SHADOW_SIZE_L) FOOTPRINT(Typhlosion) OVERWORLD( sPicTable_TyphlosionHisuian, @@ -509,6 +516,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Totodile, .iconSprite = gMonIcon_Totodile, .iconPalIndex = 0, + SHADOW(2, 0, SHADOW_SIZE_S) FOOTPRINT(Totodile) OVERWORLD( sPicTable_Totodile, @@ -573,6 +581,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Croconaw, .iconSprite = gMonIcon_Croconaw, .iconPalIndex = 0, + SHADOW(2, 8, SHADOW_SIZE_M) FOOTPRINT(Croconaw) OVERWORLD( sPicTable_Croconaw, @@ -642,6 +651,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Feraligatr, .iconSprite = gMonIcon_Feraligatr, .iconPalIndex = 0, + SHADOW(3, 11, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Feraligatr) OVERWORLD( sPicTable_Feraligatr, @@ -704,6 +714,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Sentret, .iconSprite = gMonIcon_Sentret, .iconPalIndex = 2, + SHADOW(0, 11, SHADOW_SIZE_S) FOOTPRINT(Sentret) OVERWORLD( sPicTable_Sentret, @@ -766,6 +777,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Furret, .iconSprite = gMonIcon_Furret, .iconPalIndex = 2, + SHADOW(-1, 9, SHADOW_SIZE_M) FOOTPRINT(Furret) OVERWORLD( sPicTable_Furret, @@ -828,6 +840,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Hoothoot, .iconSprite = gMonIcon_Hoothoot, .iconPalIndex = 2, + SHADOW(0, 2, SHADOW_SIZE_S) FOOTPRINT(Hoothoot) OVERWORLD( sPicTable_Hoothoot, @@ -896,6 +909,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Noctowl, .iconSprite = gMonIcon_Noctowl, .iconPalIndex = 2, + SHADOW(-2, 10, SHADOW_SIZE_S) FOOTPRINT(Noctowl) OVERWORLD( sPicTable_Noctowl, @@ -962,6 +976,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Ledyba, .iconSprite = gMonIcon_Ledyba, .iconPalIndex = 0, + SHADOW(2, 4, SHADOW_SIZE_M) FOOTPRINT(Ledyba) OVERWORLD( sPicTable_Ledyba, @@ -1029,6 +1044,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Ledian, .iconSprite = gMonIcon_Ledian, .iconPalIndex = 0, + SHADOW(0, 15, SHADOW_SIZE_S) FOOTPRINT(Ledian) OVERWORLD( sPicTable_Ledian, @@ -1091,6 +1107,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Spinarak, .iconSprite = gMonIcon_Spinarak, .iconPalIndex = 1, + SHADOW(0, -8, SHADOW_SIZE_M) FOOTPRINT(Spinarak) OVERWORLD( sPicTable_Spinarak, @@ -1159,6 +1176,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Ariados, .iconSprite = gMonIcon_Ariados, .iconPalIndex = 0, + SHADOW(1, 3, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Ariados) OVERWORLD( sPicTable_Ariados, @@ -1222,6 +1240,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Chinchou, .iconSprite = gMonIcon_Chinchou, .iconPalIndex = 2, + SHADOW(-1, 1, SHADOW_SIZE_M) FOOTPRINT(Chinchou) OVERWORLD( sPicTable_Chinchou, @@ -1285,6 +1304,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Lanturn, .iconSprite = gMonIcon_Lanturn, .iconPalIndex = 0, + SHADOW(5, 4, SHADOW_SIZE_M) FOOTPRINT(Lanturn) OVERWORLD( sPicTable_Lanturn, @@ -1349,6 +1369,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Togepi, .iconSprite = gMonIcon_Togepi, .iconPalIndex = 0, + SHADOW(-1, -3, SHADOW_SIZE_S) FOOTPRINT(Togepi) OVERWORLD( sPicTable_Togepi, @@ -1411,6 +1432,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Togetic, .iconSprite = gMonIcon_Togetic, .iconPalIndex = 0, + SHADOW(0, 6, SHADOW_SIZE_S) FOOTPRINT(Togetic) OVERWORLD( sPicTable_Togetic, @@ -1482,6 +1504,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Togekiss, .iconSprite = gMonIcon_Togekiss, .iconPalIndex = 2, + SHADOW(4, 15, SHADOW_SIZE_M) FOOTPRINT(Togekiss) OVERWORLD( sPicTable_Togekiss, @@ -1546,6 +1569,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Natu, .iconSprite = gMonIcon_Natu, .iconPalIndex = 1, + SHADOW(-2, -4, SHADOW_SIZE_S) FOOTPRINT(Natu) OVERWORLD( sPicTable_Natu, @@ -1611,6 +1635,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Xatu, .iconSprite = gMonIcon_Xatu, .iconPalIndex = 1, + SHADOW(-1, 9, SHADOW_SIZE_S) FOOTPRINT(Xatu) OVERWORLD( sPicTable_Xatu, @@ -1674,6 +1699,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Mareep, .iconSprite = gMonIcon_Mareep, .iconPalIndex = 0, + SHADOW(1, 1, SHADOW_SIZE_M) FOOTPRINT(Mareep) OVERWORLD( sPicTable_Mareep, @@ -1736,6 +1762,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Flaaffy, .iconSprite = gMonIcon_Flaaffy, .iconPalIndex = 0, + SHADOW(0, 4, SHADOW_SIZE_S) FOOTPRINT(Flaaffy) OVERWORLD( sPicTable_Flaaffy, @@ -1808,6 +1835,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Ampharos, .iconSprite = gMonIcon_Ampharos, .iconPalIndex = 0, + SHADOW(3, 11, SHADOW_SIZE_M) FOOTPRINT(Ampharos) OVERWORLD( sPicTable_Ampharos, @@ -1871,6 +1899,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_AmpharosMega, .iconSprite = gMonIcon_AmpharosMega, .iconPalIndex = 0, + SHADOW(-7, 13, SHADOW_SIZE_M) FOOTPRINT(Ampharos) .isMegaEvolution = TRUE, .levelUpLearnset = sAmpharosLevelUpLearnset, @@ -1934,6 +1963,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Azurill, .iconSprite = gMonIcon_Azurill, .iconPalIndex = 0, + SHADOW(-4, 3, SHADOW_SIZE_S) FOOTPRINT(Azurill) OVERWORLD( sPicTable_Azurill, @@ -2001,6 +2031,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Marill, .iconSprite = gMonIcon_Marill, .iconPalIndex = 0, + SHADOW(-2, 0, SHADOW_SIZE_S) FOOTPRINT(Marill) OVERWORLD( sPicTable_Marill, @@ -2075,6 +2106,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Azumarill, .iconSprite = gMonIcon_Azumarill, .iconPalIndex = 0, + SHADOW(-4, 8, SHADOW_SIZE_S) FOOTPRINT(Azumarill) OVERWORLD( sPicTable_Azumarill, @@ -2138,6 +2170,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Bonsly, .iconSprite = gMonIcon_Bonsly, .iconPalIndex = 1, + SHADOW(-3, 4, SHADOW_SIZE_S) FOOTPRINT(Bonsly) OVERWORLD( sPicTable_Bonsly, @@ -2205,6 +2238,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Sudowoodo, .iconSprite = gMonIcon_Sudowoodo, .iconPalIndex = 1, + SHADOW(-2, 7, SHADOW_SIZE_S) FOOTPRINT(Sudowoodo) OVERWORLD( sPicTable_Sudowoodo, @@ -2273,6 +2307,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Hoppip, .iconSprite = gMonIcon_Hoppip, .iconPalIndex = 1, + SHADOW(-5, 12, SHADOW_SIZE_S) FOOTPRINT(Hoppip) OVERWORLD( sPicTable_Hoppip, @@ -2340,6 +2375,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Skiploom, .iconSprite = gMonIcon_Skiploom, .iconPalIndex = 1, + SHADOW(-1, 10, SHADOW_SIZE_S) FOOTPRINT(Skiploom) OVERWORLD( sPicTable_Skiploom, @@ -2414,6 +2450,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Jumpluff, .iconSprite = gMonIcon_Jumpluff, .iconPalIndex = 2, + SHADOW(-2, 11, SHADOW_SIZE_S) FOOTPRINT(Jumpluff) OVERWORLD( sPicTable_Jumpluff, @@ -2480,6 +2517,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Aipom, .iconSprite = gMonIcon_Aipom, .iconPalIndex = 2, + SHADOW(-1, 12, SHADOW_SIZE_S) FOOTPRINT(Aipom) OVERWORLD( sPicTable_Aipom, @@ -2547,6 +2585,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Ambipom, .iconSprite = gMonIcon_Ambipom, .iconPalIndex = 2, + SHADOW(-1, 13, SHADOW_SIZE_S) FOOTPRINT(Ambipom) OVERWORLD( sPicTable_Ambipom, @@ -2614,6 +2653,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Sunkern, .iconSprite = gMonIcon_Sunkern, .iconPalIndex = 1, + SHADOW(-1, -4, SHADOW_SIZE_S) FOOTPRINT(Sunkern) OVERWORLD( sPicTable_Sunkern, @@ -2680,6 +2720,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Sunflora, .iconSprite = gMonIcon_Sunflora, .iconPalIndex = 1, + SHADOW(-1, 6, SHADOW_SIZE_S) FOOTPRINT(Sunflora) OVERWORLD( sPicTable_Sunflora, @@ -2744,6 +2785,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Yanma, .iconSprite = gMonIcon_Yanma, .iconPalIndex = 1, + SHADOW(-2, 10, SHADOW_SIZE_S) FOOTPRINT(Yanma) OVERWORLD( sPicTable_Yanma, @@ -2809,6 +2851,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Yanmega, .iconSprite = gMonIcon_Yanmega, .iconPalIndex = 1, + SHADOW(-1, 12, SHADOW_SIZE_M) FOOTPRINT(Yanmega) OVERWORLD( sPicTable_Yanmega, @@ -2876,6 +2919,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Wooper, .iconSprite = gMonIcon_Wooper, .iconPalIndex = 0, + SHADOW(1, -2, SHADOW_SIZE_S) FOOTPRINT(Wooper) OVERWORLD( sPicTable_Wooper, @@ -2943,6 +2987,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Quagsire, .iconSprite = gMonIcon_Quagsire, .iconPalIndex = 0, + SHADOW(0, 8, SHADOW_SIZE_M) FOOTPRINT(Quagsire) OVERWORLD( sPicTable_Quagsire, @@ -3004,6 +3049,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_WooperPaldean, .iconSprite = gMonIcon_WooperPaldean, .iconPalIndex = 2, + SHADOW(-1, -2, SHADOW_SIZE_S) FOOTPRINT(Wooper) OVERWORLD( sPicTable_WooperPaldean, @@ -3068,6 +3114,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Clodsire, .iconSprite = gMonIcon_Clodsire, .iconPalIndex = 0, + SHADOW(-2, 3, SHADOW_SIZE_L) FOOTPRINT(Clodsire) OVERWORLD( sPicTable_Clodsire, @@ -3140,6 +3187,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Murkrow, .iconSprite = gMonIcon_Murkrow, .iconPalIndex = 2, + SHADOW(-2, 8, SHADOW_SIZE_S) FOOTPRINT(Murkrow) OVERWORLD( sPicTable_Murkrow, @@ -3203,6 +3251,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Honchkrow, .iconSprite = gMonIcon_Honchkrow, .iconPalIndex = 2, + SHADOW(5, 7, SHADOW_SIZE_M) FOOTPRINT(Honchkrow) OVERWORLD( sPicTable_Honchkrow, @@ -3268,6 +3317,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Misdreavus, .iconSprite = gMonIcon_Misdreavus, .iconPalIndex = 0, + SHADOW(0, 10, SHADOW_SIZE_S) FOOTPRINT(Misdreavus) OVERWORLD( sPicTable_Misdreavus, @@ -3333,6 +3383,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Mismagius, .iconSprite = gMonIcon_Mismagius, .iconPalIndex = 2, + SHADOW(1, 11, SHADOW_SIZE_M) FOOTPRINT(Mismagius) OVERWORLD( sPicTable_Mismagius, @@ -3395,8 +3446,9 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Unown, \ .iconSprite = gMonIcon_Unown ##letter, \ .iconPalIndex = 0, \ + SHADOW(0, 3, SHADOW_SIZE_S) \ FOOTPRINT(Unown) \ - OVERWORLD( \ + OVERWORLD( \ sPicTable_Unown ##letter, \ SIZE_32x32, \ SHADOW_SIZE_M, \ @@ -3490,6 +3542,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Wynaut, .iconSprite = gMonIcon_Wynaut, .iconPalIndex = 0, + SHADOW(-1, 2, SHADOW_SIZE_S) FOOTPRINT(Wynaut) OVERWORLD( sPicTable_Wynaut, @@ -3561,6 +3614,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .iconSpriteFemale = gMonIcon_WobbuffetF, .iconPalIndexFemale = 0, #endif + SHADOW(-3, 8, SHADOW_SIZE_M) FOOTPRINT(Wobbuffet) OVERWORLD( sPicTable_Wobbuffet, @@ -3628,6 +3682,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Girafarig, .iconSprite = gMonIcon_Girafarig, .iconPalIndex = 1, + SHADOW(2, 13, SHADOW_SIZE_M) FOOTPRINT(Girafarig) OVERWORLD( sPicTable_Girafarig, @@ -3691,6 +3746,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Farigiraf, .iconSprite = gMonIcon_Farigiraf, .iconPalIndex = 0, + SHADOW(11, 13, SHADOW_SIZE_L) FOOTPRINT(Farigiraf) OVERWORLD( sPicTable_Farigiraf, @@ -3754,6 +3810,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Pineco, .iconSprite = gMonIcon_Pineco, .iconPalIndex = 0, + SHADOW(0, 2, SHADOW_SIZE_S) FOOTPRINT(Pineco) OVERWORLD( sPicTable_Pineco, @@ -3816,6 +3873,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Forretress, .iconSprite = gMonIcon_Forretress, .iconPalIndex = 2, + SHADOW(0, 6, SHADOW_SIZE_L) FOOTPRINT(Forretress) OVERWORLD( sPicTable_Forretress, @@ -3885,6 +3943,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Dunsparce, .iconSprite = gMonIcon_Dunsparce, .iconPalIndex = 0, + SHADOW(0, -4, SHADOW_SIZE_M) FOOTPRINT(Dunsparce) OVERWORLD( sPicTable_Dunsparce, @@ -3949,6 +4008,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Dudunsparce, .iconSprite = gMonIcon_Dudunsparce, .iconPalIndex = 0, + SHADOW(0, 5, SHADOW_SIZE_L) FOOTPRINT(Dudunsparce) OVERWORLD( sPicTable_DudunsparceTwoSegment, @@ -4010,6 +4070,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Dudunsparce, .iconSprite = gMonIcon_Dudunsparce, .iconPalIndex = 0, + SHADOW(4, 4, SHADOW_SIZE_L) FOOTPRINT(Dudunsparce) OVERWORLD( sPicTable_DudunsparceThreeSegment, @@ -4079,6 +4140,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Gligar, .iconSprite = gMonIcon_Gligar, .iconPalIndex = 0, + SHADOW(0, 15, SHADOW_SIZE_S) FOOTPRINT(Gligar) OVERWORLD( sPicTable_Gligar, @@ -4144,6 +4206,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Gliscor, .iconSprite = gMonIcon_Gliscor, .iconPalIndex = 2, + SHADOW(-1, 13, SHADOW_SIZE_M) FOOTPRINT(Gliscor) OVERWORLD( sPicTable_Gliscor, @@ -4211,6 +4274,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Snubbull, .iconSprite = gMonIcon_Snubbull, .iconPalIndex = 0, + SHADOW(-1, 1, SHADOW_SIZE_S) FOOTPRINT(Snubbull) OVERWORLD( sPicTable_Snubbull, @@ -4281,6 +4345,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Granbull, .iconSprite = gMonIcon_Granbull, .iconPalIndex = 2, + SHADOW(3, 10, SHADOW_SIZE_L) FOOTPRINT(Granbull) OVERWORLD( sPicTable_Granbull, @@ -4354,6 +4419,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Qwilfish, .iconSprite = gMonIcon_Qwilfish, .iconPalIndex = 0, + SHADOW(-2, 3, SHADOW_SIZE_S) FOOTPRINT(Qwilfish) OVERWORLD( sPicTable_Qwilfish, @@ -4419,6 +4485,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_QwilfishHisuian, .iconSprite = gMonIcon_QwilfishHisuian, .iconPalIndex = 1, + SHADOW(-5, 4, SHADOW_SIZE_S) FOOTPRINT(Qwilfish) OVERWORLD( sPicTable_QwilfishHisuian, @@ -4482,6 +4549,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Overqwil, .iconSprite = gMonIcon_Overqwil, .iconPalIndex = 2, + SHADOW(2, 11, SHADOW_SIZE_M) FOOTPRINT(Overqwil) OVERWORLD( sPicTable_Overqwil, @@ -4552,6 +4620,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Shuckle, .iconSprite = gMonIcon_Shuckle, .iconPalIndex = 1, + SHADOW(1, 3, SHADOW_SIZE_M) FOOTPRINT(Shuckle) OVERWORLD( sPicTable_Shuckle, @@ -4619,6 +4688,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Heracross, .iconSprite = gMonIcon_Heracross, .iconPalIndex = 0, + SHADOW(-1, 10, SHADOW_SIZE_M) FOOTPRINT(Heracross) OVERWORLD( sPicTable_Heracross, @@ -4683,6 +4753,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_HeracrossMega, .iconSprite = gMonIcon_HeracrossMega, .iconPalIndex = 0, + SHADOW(2, 13, SHADOW_SIZE_M) FOOTPRINT(Heracross) .isMegaEvolution = TRUE, .levelUpLearnset = sHeracrossLevelUpLearnset, @@ -4748,6 +4819,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Sneasel, .iconSprite = gMonIcon_Sneasel, .iconPalIndex = 0, + SHADOW(-1, 5, SHADOW_SIZE_S) FOOTPRINT(Sneasel) OVERWORLD( sPicTable_Sneasel, @@ -4819,6 +4891,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Weavile, .iconSprite = gMonIcon_Weavile, .iconPalIndex = 0, + SHADOW(-4, 10, SHADOW_SIZE_M) FOOTPRINT(Weavile) OVERWORLD( sPicTable_Weavile, @@ -4887,6 +4960,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_SneaselHisuian, .iconSprite = gMonIcon_SneaselHisuian, .iconPalIndex = 0, + SHADOW(-1, 5, SHADOW_SIZE_S) FOOTPRINT(Sneasel) OVERWORLD( sPicTable_SneaselHisuian, @@ -4951,6 +5025,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Sneasler, .iconSprite = gMonIcon_Sneasler, .iconPalIndex = 2, + SHADOW(2, 11, SHADOW_SIZE_M) FOOTPRINT(Sneasler) OVERWORLD( sPicTable_Sneasler, @@ -5020,6 +5095,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Teddiursa, .iconSprite = gMonIcon_Teddiursa, .iconPalIndex = 0, + SHADOW(-2, 1, SHADOW_SIZE_S) FOOTPRINT(Teddiursa) OVERWORLD( sPicTable_Teddiursa, @@ -5090,6 +5166,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Ursaring, .iconSprite = gMonIcon_Ursaring, .iconPalIndex = 2, + SHADOW(1, 14, SHADOW_SIZE_L) FOOTPRINT(Ursaring) OVERWORLD( sPicTable_Ursaring, @@ -5152,6 +5229,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Ursaluna, .iconSprite = gMonIcon_Ursaluna, .iconPalIndex = 2, + SHADOW(1, 4, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Ursaluna) OVERWORLD( sPicTable_Ursaluna, @@ -5213,6 +5291,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_UrsalunaBloodmoon, .iconSprite = gMonIcon_UrsalunaBloodmoon, .iconPalIndex = 2, + SHADOW(6, 11, SHADOW_SIZE_L) FOOTPRINT(Ursaluna) .levelUpLearnset = sUrsalunaBloodmoonLevelUpLearnset, .teachableLearnset = sUrsalunaBloodmoonTeachableLearnset, @@ -5269,6 +5348,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Slugma, .iconSprite = gMonIcon_Slugma, .iconPalIndex = 0, + SHADOW(0, 0, SHADOW_SIZE_S) FOOTPRINT(Slugma) OVERWORLD( sPicTable_Slugma, @@ -5338,6 +5418,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Magcargo, .iconSprite = gMonIcon_Magcargo, .iconPalIndex = 0, + SHADOW(0, 5, SHADOW_SIZE_M) FOOTPRINT(Magcargo) OVERWORLD( sPicTable_Magcargo, @@ -5404,6 +5485,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Swinub, .iconSprite = gMonIcon_Swinub, .iconPalIndex = 2, + SHADOW(-3, -6, SHADOW_SIZE_S) FOOTPRINT(Swinub) OVERWORLD( sPicTable_Swinub, @@ -5475,6 +5557,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Piloswine, .iconSprite = gMonIcon_Piloswine, .iconPalIndex = 2, + SHADOW(-1, 3, SHADOW_SIZE_M) FOOTPRINT(Piloswine) OVERWORLD( sPicTable_Piloswine, @@ -5545,6 +5628,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Mamoswine, .iconSprite = gMonIcon_Mamoswine, .iconPalIndex = 2, + SHADOW(7, 7, SHADOW_SIZE_L) FOOTPRINT(Mamoswine) OVERWORLD( sPicTable_Mamoswine, @@ -5620,6 +5704,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Corsola, .iconSprite = gMonIcon_Corsola, .iconPalIndex = 0, + SHADOW(0, 1, SHADOW_SIZE_M) FOOTPRINT(Corsola) OVERWORLD( sPicTable_Corsola, @@ -5683,6 +5768,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_CorsolaGalarian, .iconSprite = gMonIcon_CorsolaGalarian, .iconPalIndex = 0, + SHADOW(0, 2, SHADOW_SIZE_M) FOOTPRINT(Corsola) OVERWORLD( sPicTable_CorsolaGalarian, @@ -5747,6 +5833,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Cursola, .iconSprite = gMonIcon_Cursola, .iconPalIndex = 0, + SHADOW(-3, 13, SHADOW_SIZE_S) FOOTPRINT(Cursola) OVERWORLD( sPicTable_Cursola, @@ -5814,6 +5901,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Remoraid, .iconSprite = gMonIcon_Remoraid, .iconPalIndex = 0, + SHADOW(-1, 0, SHADOW_SIZE_S) FOOTPRINT(Remoraid) OVERWORLD( sPicTable_Remoraid, @@ -5886,6 +5974,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Octillery, .iconSprite = gMonIcon_Octillery, .iconPalIndex = 0, + SHADOW(1, 4, SHADOW_SIZE_M) FOOTPRINT(Octillery) OVERWORLD( sPicTable_Octillery, @@ -5948,6 +6037,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Delibird, .iconSprite = gMonIcon_Delibird, .iconPalIndex = 1, + SHADOW(0, 7, SHADOW_SIZE_M) FOOTPRINT(Delibird) OVERWORLD( sPicTable_Delibird, @@ -6012,6 +6102,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Mantyke, .iconSprite = gMonIcon_Mantyke, .iconPalIndex = 0, + SHADOW(-1, 3, SHADOW_SIZE_S) FOOTPRINT(Mantyke) OVERWORLD( sPicTable_Mantyke, @@ -6082,6 +6173,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Mantine, .iconSprite = gMonIcon_Mantine, .iconPalIndex = 2, + SHADOW(-1, 8, SHADOW_SIZE_M) FOOTPRINT(Mantine) OVERWORLD( sPicTable_Mantine, @@ -6146,6 +6238,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Skarmory, .iconSprite = gMonIcon_Skarmory, .iconPalIndex = 0, + SHADOW(2, 9, SHADOW_SIZE_M) FOOTPRINT(Skarmory) OVERWORLD( sPicTable_Skarmory, @@ -6209,6 +6302,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Houndour, .iconSprite = gMonIcon_Houndour, .iconPalIndex = 0, + SHADOW(0, 4, SHADOW_SIZE_M) FOOTPRINT(Houndour) OVERWORLD( sPicTable_Houndour, @@ -6275,6 +6369,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Houndoom, .iconSprite = gMonIcon_Houndoom, .iconPalIndex = 0, + SHADOW(-5, 13, SHADOW_SIZE_L) FOOTPRINT(Houndoom) OVERWORLD( sPicTable_Houndoom, @@ -6337,6 +6432,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_HoundoomMega, .iconSprite = gMonIcon_HoundoomMega, .iconPalIndex = 0, + SHADOW(-5, 13, SHADOW_SIZE_L) FOOTPRINT(Houndoom) .isMegaEvolution = TRUE, .levelUpLearnset = sHoundoomLevelUpLearnset, @@ -6395,6 +6491,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Phanpy, .iconSprite = gMonIcon_Phanpy, .iconPalIndex = 0, + SHADOW(3, -2, SHADOW_SIZE_M) FOOTPRINT(Phanpy) OVERWORLD( sPicTable_Phanpy, @@ -6462,6 +6559,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Donphan, .iconSprite = gMonIcon_Donphan, .iconPalIndex = 0, + SHADOW(7, 2, SHADOW_SIZE_L) FOOTPRINT(Donphan) OVERWORLD( sPicTable_Donphan, @@ -6528,6 +6626,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Stantler, .iconSprite = gMonIcon_Stantler, .iconPalIndex = 2, + SHADOW(3, 13, SHADOW_SIZE_M) FOOTPRINT(Stantler) OVERWORLD( sPicTable_Stantler, @@ -6592,6 +6691,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Wyrdeer, .iconSprite = gMonIcon_Wyrdeer, .iconPalIndex = 2, + SHADOW(-1, 13, SHADOW_SIZE_M) FOOTPRINT(Wyrdeer) OVERWORLD( sPicTable_Wyrdeer, @@ -6659,6 +6759,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Smeargle, .iconSprite = gMonIcon_Smeargle, .iconPalIndex = 1, + SHADOW(6, 7, SHADOW_SIZE_S) FOOTPRINT(Smeargle) OVERWORLD( sPicTable_Smeargle, @@ -6728,6 +6829,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Miltank, .iconSprite = gMonIcon_Miltank, .iconPalIndex = 0, + SHADOW(-3, 4, SHADOW_SIZE_M) FOOTPRINT(Miltank) OVERWORLD( sPicTable_Miltank, @@ -6802,6 +6904,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Raikou, .iconSprite = gMonIcon_Raikou, .iconPalIndex = 2, + SHADOW(-4, 7, SHADOW_SIZE_L) FOOTPRINT(Raikou) OVERWORLD( sPicTable_Raikou, @@ -6877,6 +6980,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Entei, .iconSprite = gMonIcon_Entei, .iconPalIndex = 2, + SHADOW(-1, 8, SHADOW_SIZE_L) FOOTPRINT(Entei) OVERWORLD( sPicTable_Entei, @@ -6952,6 +7056,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Suicune, .iconSprite = gMonIcon_Suicune, .iconPalIndex = 2, + SHADOW(3, 10, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Suicune) OVERWORLD( sPicTable_Suicune, @@ -7016,6 +7121,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Larvitar, .iconSprite = gMonIcon_Larvitar, .iconPalIndex = 1, + SHADOW(0, 3, SHADOW_SIZE_S) FOOTPRINT(Larvitar) OVERWORLD( sPicTable_Larvitar, @@ -7078,6 +7184,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Pupitar, .iconSprite = gMonIcon_Pupitar, .iconPalIndex = 2, + SHADOW(3, 3, SHADOW_SIZE_S) FOOTPRINT(Pupitar) OVERWORLD( sPicTable_Pupitar, @@ -7146,6 +7253,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Tyranitar, .iconSprite = gMonIcon_Tyranitar, .iconPalIndex = 4, + SHADOW(-1, 11, SHADOW_SIZE_L) FOOTPRINT(Tyranitar) OVERWORLD( sPicTable_Tyranitar, @@ -7209,6 +7317,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_TyranitarMega, .iconSprite = gMonIcon_TyranitarMega, .iconPalIndex = 1, + SHADOW(-1, 13, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Tyranitar) .isMegaEvolution = TRUE, .levelUpLearnset = sTyranitarLevelUpLearnset, @@ -7275,6 +7384,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Lugia, .iconSprite = gMonIcon_Lugia, .iconPalIndex = 0, + SHADOW(2, 17, SHADOW_SIZE_L) FOOTPRINT(Lugia) OVERWORLD( sPicTable_Lugia, @@ -7349,6 +7459,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_HoOh, .iconSprite = gMonIcon_HoOh, .iconPalIndex = 1, + SHADOW(1, 17, SHADOW_SIZE_L) FOOTPRINT(HoOh) OVERWORLD( sPicTable_HoOh, @@ -7423,6 +7534,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .shinyPalette = gMonShinyPalette_Celebi, .iconSprite = gMonIcon_Celebi, .iconPalIndex = 1, + SHADOW(0, 14, SHADOW_SIZE_S) FOOTPRINT(Celebi) OVERWORLD( sPicTable_Celebi, diff --git a/src/data/pokemon/species_info/gen_3_families.h b/src/data/pokemon/species_info/gen_3_families.h index 667dc54d0e..e9d566096a 100644 --- a/src/data/pokemon/species_info/gen_3_families.h +++ b/src/data/pokemon/species_info/gen_3_families.h @@ -51,6 +51,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Treecko, .iconSprite = gMonIcon_Treecko, .iconPalIndex = 1, + SHADOW(-3, 4, SHADOW_SIZE_S) FOOTPRINT(Treecko) OVERWORLD( sPicTable_Treecko, @@ -113,6 +114,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Grovyle, .iconSprite = gMonIcon_Grovyle, .iconPalIndex = 1, + SHADOW(1, 7, SHADOW_SIZE_M) FOOTPRINT(Grovyle) OVERWORLD( sPicTable_Grovyle, @@ -180,6 +182,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Sceptile, .iconSprite = gMonIcon_Sceptile, .iconPalIndex = 1, + SHADOW(2, 11, SHADOW_SIZE_L) FOOTPRINT(Sceptile) OVERWORLD( sPicTable_Sceptile, @@ -243,6 +246,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_SceptileMega, .iconSprite = gMonIcon_SceptileMega, .iconPalIndex = 1, + SHADOW(3, 11, SHADOW_SIZE_L) FOOTPRINT(Sceptile) .isMegaEvolution = TRUE, .levelUpLearnset = sSceptileLevelUpLearnset, @@ -303,6 +307,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Torchic, .iconSprite = gMonIcon_Torchic, .iconPalIndex = 0, + SHADOW(-1, 1, SHADOW_SIZE_S) FOOTPRINT(Torchic) OVERWORLD( sPicTable_Torchic, @@ -370,6 +375,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Combusken, .iconSprite = gMonIcon_Combusken, .iconPalIndex = 0, + SHADOW(-1, 8, SHADOW_SIZE_M) FOOTPRINT(Combusken) OVERWORLD( sPicTable_Combusken, @@ -441,6 +447,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Blaziken, .iconSprite = gMonIcon_Blaziken, .iconPalIndex = 0, + SHADOW(4, 8, SHADOW_SIZE_M) FOOTPRINT(Blaziken) OVERWORLD( sPicTable_Blaziken, @@ -504,6 +511,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_BlazikenMega, .iconSprite = gMonIcon_BlazikenMega, .iconPalIndex = 0, + SHADOW(2, 11, SHADOW_SIZE_M) FOOTPRINT(Blaziken) .isMegaEvolution = TRUE, .levelUpLearnset = sBlazikenLevelUpLearnset, @@ -562,6 +570,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Mudkip, .iconSprite = gMonIcon_Mudkip, .iconPalIndex = 0, + SHADOW(1, 1, SHADOW_SIZE_S) FOOTPRINT(Mudkip) OVERWORLD( sPicTable_Mudkip, @@ -624,6 +633,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Marshtomp, .iconSprite = gMonIcon_Marshtomp, .iconPalIndex = 0, + SHADOW(-1, 7, SHADOW_SIZE_M) FOOTPRINT(Marshtomp) OVERWORLD( sPicTable_Marshtomp, @@ -691,6 +701,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Swampert, .iconSprite = gMonIcon_Swampert, .iconPalIndex = 0, + SHADOW(5, 7, SHADOW_SIZE_L) FOOTPRINT(Swampert) OVERWORLD( sPicTable_Swampert, @@ -754,6 +765,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_SwampertMega, .iconSprite = gMonIcon_SwampertMega, .iconPalIndex = 0, + SHADOW(6, 8, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Swampert) .isMegaEvolution = TRUE, .levelUpLearnset = sSwampertLevelUpLearnset, @@ -822,6 +834,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Poochyena, .iconSprite = gMonIcon_Poochyena, .iconPalIndex = 2, + SHADOW(0, 2, SHADOW_SIZE_M) FOOTPRINT(Poochyena) OVERWORLD( sPicTable_Poochyena, @@ -888,6 +901,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Mightyena, .iconSprite = gMonIcon_Mightyena, .iconPalIndex = 2, + SHADOW(-2, 6, SHADOW_SIZE_L) FOOTPRINT(Mightyena) OVERWORLD( sPicTable_Mightyena, @@ -964,6 +978,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Zigzagoon, .iconSprite = gMonIcon_Zigzagoon, .iconPalIndex = 2, + SHADOW(-4, 0, SHADOW_SIZE_M) FOOTPRINT(Zigzagoon) OVERWORLD( sPicTable_Zigzagoon, @@ -1033,6 +1048,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Linoone, .iconSprite = gMonIcon_Linoone, .iconPalIndex = 2, + SHADOW(-6, 0, SHADOW_SIZE_L) FOOTPRINT(Linoone) OVERWORLD( sPicTable_Linoone, @@ -1095,6 +1111,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_ZigzagoonGalarian, .iconSprite = gMonIcon_ZigzagoonGalarian, .iconPalIndex = 0, + SHADOW(-5, 0, SHADOW_SIZE_M) FOOTPRINT(Zigzagoon) OVERWORLD( sPicTable_ZigzagoonGalarian, @@ -1159,6 +1176,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_LinooneGalarian, .iconSprite = gMonIcon_LinooneGalarian, .iconPalIndex = 0, + SHADOW(-4, 0, SHADOW_SIZE_L) FOOTPRINT(Linoone) OVERWORLD( sPicTable_LinooneGalarian, @@ -1222,6 +1240,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Obstagoon, .iconSprite = gMonIcon_Obstagoon, .iconPalIndex = 0, + SHADOW(2, 13, SHADOW_SIZE_M) FOOTPRINT(Obstagoon) OVERWORLD( sPicTable_Obstagoon, @@ -1293,6 +1312,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Wurmple, .iconSprite = gMonIcon_Wurmple, .iconPalIndex = 0, + SHADOW(0, 1, SHADOW_SIZE_S) FOOTPRINT(Wurmple) OVERWORLD( sPicTable_Wurmple, @@ -1356,6 +1376,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Silcoon, .iconSprite = gMonIcon_Silcoon, .iconPalIndex = 2, + SHADOW(0, -4, SHADOW_SIZE_M) FOOTPRINT(Silcoon) OVERWORLD( sPicTable_Silcoon, @@ -1432,6 +1453,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Beautifly, .iconSprite = gMonIcon_Beautifly, .iconPalIndex = 0, + SHADOW(-5, 12, SHADOW_SIZE_S) FOOTPRINT(Beautifly) OVERWORLD( sPicTable_Beautifly, @@ -1498,6 +1520,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Cascoon, .iconSprite = gMonIcon_Cascoon, .iconPalIndex = 2, + SHADOW(0, -4, SHADOW_SIZE_M) FOOTPRINT(Cascoon) OVERWORLD( sPicTable_Cascoon, @@ -1576,6 +1599,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Dustox, .iconSprite = gMonIcon_Dustox, .iconPalIndex = 5, + SHADOW(-2, 11, SHADOW_SIZE_S) FOOTPRINT(Dustox) OVERWORLD( sPicTable_Dustox, @@ -1639,6 +1663,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Lotad, .iconSprite = gMonIcon_Lotad, .iconPalIndex = 4, + SHADOW(2, -3, SHADOW_SIZE_S) FOOTPRINT(Lotad) OVERWORLD( sPicTable_Lotad, @@ -1702,6 +1727,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Lombre, .iconSprite = gMonIcon_Lombre, .iconPalIndex = 1, + SHADOW(4, 2, SHADOW_SIZE_S) FOOTPRINT(Lombre) OVERWORLD( sPicTable_Lombre, @@ -1774,6 +1800,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Ludicolo, .iconSprite = gMonIcon_Ludicolo, .iconPalIndex = 1, + SHADOW(-3, 14, SHADOW_SIZE_M) FOOTPRINT(Ludicolo) OVERWORLD( sPicTable_Ludicolo, @@ -1837,6 +1864,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Seedot, .iconSprite = gMonIcon_Seedot, .iconPalIndex = 2, + SHADOW(0, 1, SHADOW_SIZE_S) FOOTPRINT(Seedot) OVERWORLD( sPicTable_Seedot, @@ -1904,6 +1932,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Nuzleaf, .iconSprite = gMonIcon_Nuzleaf, .iconPalIndex = 1, + SHADOW(-3, 5, SHADOW_SIZE_S) FOOTPRINT(Nuzleaf) OVERWORLD( sPicTable_Nuzleaf, @@ -1980,6 +2009,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Shiftry, .iconSprite = gMonIcon_Shiftry, .iconPalIndex = 5, + SHADOW(-5, 5, SHADOW_SIZE_M) FOOTPRINT(Shiftry) OVERWORLD( sPicTable_Shiftry, @@ -2042,6 +2072,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Taillow, .iconSprite = gMonIcon_Taillow, .iconPalIndex = 2, + SHADOW(-3, 1, SHADOW_SIZE_S) FOOTPRINT(Taillow) OVERWORLD( sPicTable_Taillow, @@ -2110,6 +2141,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Swellow, .iconSprite = gMonIcon_Swellow, .iconPalIndex = 2, + SHADOW(-7, 7, SHADOW_SIZE_M) FOOTPRINT(Swellow) OVERWORLD( sPicTable_Swellow, @@ -2178,6 +2210,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Wingull, .iconSprite = gMonIcon_Wingull, .iconPalIndex = 0, + SHADOW(-2, 15, SHADOW_SIZE_S) FOOTPRINT(Wingull) OVERWORLD( sPicTable_Wingull, @@ -2252,6 +2285,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Pelipper, .iconSprite = gMonIcon_Pelipper, .iconPalIndex = 2, + SHADOW(-1, 17, SHADOW_SIZE_M) FOOTPRINT(Pelipper) OVERWORLD( sPicTable_Pelipper, @@ -2322,6 +2356,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Ralts, .iconSprite = gMonIcon_Ralts, .iconPalIndex = 1, + SHADOW(0, 1, SHADOW_SIZE_S) FOOTPRINT(Ralts) OVERWORLD( sPicTable_Ralts, @@ -2384,6 +2419,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Kirlia, .iconSprite = gMonIcon_Kirlia, .iconPalIndex = 1, + SHADOW(-2, 7, SHADOW_SIZE_S) FOOTPRINT(Kirlia) OVERWORLD( sPicTable_Kirlia, @@ -2452,6 +2488,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Gardevoir, .iconSprite = gMonIcon_Gardevoir, .iconPalIndex = 1, + SHADOW(0, 14, SHADOW_SIZE_L) FOOTPRINT(Gardevoir) OVERWORLD( sPicTable_Gardevoir, @@ -2515,6 +2552,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_GardevoirMega, .iconSprite = gMonIcon_GardevoirMega, .iconPalIndex = 1, + SHADOW(1, 14, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Gardevoir) .isMegaEvolution = TRUE, .levelUpLearnset = sGardevoirLevelUpLearnset, @@ -2582,6 +2620,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Gallade, .iconSprite = gMonIcon_Gallade, .iconPalIndex = 1, + SHADOW(4, 13, SHADOW_SIZE_L) FOOTPRINT(Gallade) OVERWORLD( sPicTable_Gallade, @@ -2645,6 +2684,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_GalladeMega, .iconSprite = gMonIcon_GalladeMega, .iconPalIndex = 1, + SHADOW(-2, 13, SHADOW_SIZE_L) FOOTPRINT(Gallade) .isMegaEvolution = TRUE, .levelUpLearnset = sGalladeLevelUpLearnset, @@ -2705,6 +2745,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Surskit, .iconSprite = gMonIcon_Surskit, .iconPalIndex = 0, + SHADOW(-1, -3, SHADOW_SIZE_S) FOOTPRINT(Surskit) OVERWORLD( sPicTable_Surskit, @@ -2776,6 +2817,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Masquerain, .iconSprite = gMonIcon_Masquerain, .iconPalIndex = 0, + SHADOW(-4, 17, SHADOW_SIZE_M) FOOTPRINT(Masquerain) OVERWORLD( sPicTable_Masquerain, @@ -2844,6 +2886,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Shroomish, .iconSprite = gMonIcon_Shroomish, .iconPalIndex = 1, + SHADOW(0, 0, SHADOW_SIZE_S) FOOTPRINT(Shroomish) OVERWORLD( sPicTable_Shroomish, @@ -2912,6 +2955,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Breloom, .iconSprite = gMonIcon_Breloom, .iconPalIndex = 1, + SHADOW(-4, 9, SHADOW_SIZE_M) FOOTPRINT(Breloom) OVERWORLD( sPicTable_Breloom, @@ -2974,6 +3018,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Slakoth, .iconSprite = gMonIcon_Slakoth, .iconPalIndex = 2, + SHADOW(1, -4, SHADOW_SIZE_M) FOOTPRINT(Slakoth) OVERWORLD( sPicTable_Slakoth, @@ -3036,6 +3081,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Vigoroth, .iconSprite = gMonIcon_Vigoroth, .iconPalIndex = 2, + SHADOW(4, 6, SHADOW_SIZE_M) FOOTPRINT(Vigoroth) OVERWORLD( sPicTable_Vigoroth, @@ -3103,6 +3149,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Slaking, .iconSprite = gMonIcon_Slaking, .iconPalIndex = 2, + SHADOW(0, 6, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Slaking) OVERWORLD( sPicTable_Slaking, @@ -3166,6 +3213,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Nincada, .iconSprite = gMonIcon_Nincada, .iconPalIndex = 1, + SHADOW(2, -3, SHADOW_SIZE_M) FOOTPRINT(Nincada) OVERWORLD( sPicTable_Nincada, @@ -3230,6 +3278,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Ninjask, .iconSprite = gMonIcon_Ninjask, .iconPalIndex = 1, + SHADOW(-2, 10, SHADOW_SIZE_S) FOOTPRINT(Ninjask) OVERWORLD( sPicTable_Ninjask, @@ -3291,6 +3340,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Shedinja, .iconSprite = gMonIcon_Shedinja, .iconPalIndex = 1, + SHADOW(-2, 9, SHADOW_SIZE_S) FOOTPRINT(Shedinja) OVERWORLD( sPicTable_Shedinja, @@ -3353,6 +3403,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Whismur, .iconSprite = gMonIcon_Whismur, .iconPalIndex = 1, + SHADOW(1, 0, SHADOW_SIZE_S) FOOTPRINT(Whismur) OVERWORLD( sPicTable_Whismur, @@ -3415,6 +3466,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Loudred, .iconSprite = gMonIcon_Loudred, .iconPalIndex = 2, + SHADOW(1, 9, SHADOW_SIZE_M) FOOTPRINT(Loudred) OVERWORLD( sPicTable_Loudred, @@ -3484,6 +3536,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Exploud, .iconSprite = gMonIcon_Exploud, .iconPalIndex = 2, + SHADOW(0, 12, SHADOW_SIZE_L) FOOTPRINT(Exploud) OVERWORLD( sPicTable_Exploud, @@ -3547,6 +3600,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Makuhita, .iconSprite = gMonIcon_Makuhita, .iconPalIndex = 1, + SHADOW(1, 5, SHADOW_SIZE_M) FOOTPRINT(Makuhita) OVERWORLD( sPicTable_Makuhita, @@ -3610,6 +3664,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Hariyama, .iconSprite = gMonIcon_Hariyama, .iconPalIndex = 2, + SHADOW(-3, 9, SHADOW_SIZE_L) FOOTPRINT(Hariyama) OVERWORLD( sPicTable_Hariyama, @@ -3673,6 +3728,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Nosepass, .iconSprite = gMonIcon_Nosepass, .iconPalIndex = 0, + SHADOW(-1, 3, SHADOW_SIZE_M) FOOTPRINT(Nosepass) OVERWORLD( sPicTable_Nosepass, @@ -3740,6 +3796,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Probopass, .iconSprite = gMonIcon_Probopass, .iconPalIndex = 0, + SHADOW(-1, 13, SHADOW_SIZE_L) FOOTPRINT(Probopass) OVERWORLD( sPicTable_Probopass, @@ -3807,6 +3864,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Skitty, .iconSprite = gMonIcon_Skitty, .iconPalIndex = 0, + SHADOW(-3, 1, SHADOW_SIZE_S) FOOTPRINT(Skitty) OVERWORLD( sPicTable_Skitty, @@ -3880,6 +3938,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Delcatty, .iconSprite = gMonIcon_Delcatty, .iconPalIndex = 2, + SHADOW(-1, 9, SHADOW_SIZE_S) FOOTPRINT(Delcatty) OVERWORLD( sPicTable_Delcatty, @@ -3948,6 +4007,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Sableye, .iconSprite = gMonIcon_Sableye, .iconPalIndex = 2, + SHADOW(2, 3, SHADOW_SIZE_S) FOOTPRINT(Sableye) OVERWORLD( sPicTable_Sableye, @@ -4012,6 +4072,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_SableyeMega, .iconSprite = gMonIcon_SableyeMega, .iconPalIndex = 2, + SHADOW(3, 7, SHADOW_SIZE_S) FOOTPRINT(Sableye) .isMegaEvolution = TRUE, .levelUpLearnset = sSableyeLevelUpLearnset, @@ -4079,6 +4140,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Mawile, .iconSprite = gMonIcon_Mawile, .iconPalIndex = 2, + SHADOW(1, 4, SHADOW_SIZE_L) FOOTPRINT(Mawile) OVERWORLD( sPicTable_Mawile, @@ -4144,6 +4206,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_MawileMega, .iconSprite = gMonIcon_MawileMega, .iconPalIndex = 0, + SHADOW(0, 9, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Mawile) .isMegaEvolution = TRUE, .levelUpLearnset = sMawileLevelUpLearnset, @@ -4204,6 +4267,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Aron, .iconSprite = gMonIcon_Aron, .iconPalIndex = 2, + SHADOW(2, -3, SHADOW_SIZE_S) FOOTPRINT(Aron) OVERWORLD( sPicTable_Aron, @@ -4267,6 +4331,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Lairon, .iconSprite = gMonIcon_Lairon, .iconPalIndex = 2, + SHADOW(4, 2, SHADOW_SIZE_L) FOOTPRINT(Lairon) OVERWORLD( sPicTable_Lairon, @@ -4335,6 +4400,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Aggron, .iconSprite = gMonIcon_Aggron, .iconPalIndex = 2, + SHADOW(5, 12, SHADOW_SIZE_L) FOOTPRINT(Aggron) OVERWORLD( sPicTable_Aggron, @@ -4399,6 +4465,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_AggronMega, .iconSprite = gMonIcon_AggronMega, .iconPalIndex = 2, + SHADOW(1, 12, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Aggron) .isMegaEvolution = TRUE, .levelUpLearnset = sAggronLevelUpLearnset, @@ -4461,6 +4528,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Meditite, .iconSprite = gMonIcon_Meditite, .iconPalIndex = 0, + SHADOW(0, 1, SHADOW_SIZE_S) FOOTPRINT(Meditite) OVERWORLD( sPicTable_Meditite, @@ -4527,6 +4595,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Medicham, .iconSprite = gMonIcon_Medicham, .iconPalIndex = 0, + SHADOW(-2, 13, SHADOW_SIZE_S) FOOTPRINT(Medicham) OVERWORLD( sPicTable_Medicham, @@ -4590,6 +4659,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_MedichamMega, .iconSprite = gMonIcon_MedichamMega, .iconPalIndex = 0, + SHADOW(-2, 13, SHADOW_SIZE_S) FOOTPRINT(Medicham) .isMegaEvolution = TRUE, .levelUpLearnset = sMedichamLevelUpLearnset, @@ -4648,6 +4718,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Electrike, .iconSprite = gMonIcon_Electrike, .iconPalIndex = 1, + SHADOW(3, -1, SHADOW_SIZE_M) FOOTPRINT(Electrike) OVERWORLD( sPicTable_Electrike, @@ -4710,6 +4781,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Manectric, .iconSprite = gMonIcon_Manectric, .iconPalIndex = 0, + SHADOW(1, 10, SHADOW_SIZE_M) FOOTPRINT(Manectric) OVERWORLD( sPicTable_Manectric, @@ -4772,6 +4844,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_ManectricMega, .iconSprite = gMonIcon_ManectricMega, .iconPalIndex = 0, + SHADOW(1, 10, SHADOW_SIZE_L) FOOTPRINT(Manectric) .isMegaEvolution = TRUE, .levelUpLearnset = sManectricLevelUpLearnset, @@ -4835,6 +4908,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Plusle, .iconSprite = gMonIcon_Plusle, .iconPalIndex = 0, + SHADOW(2, 3, SHADOW_SIZE_S) FOOTPRINT(Plusle) OVERWORLD( sPicTable_Plusle, @@ -4903,6 +4977,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Minun, .iconSprite = gMonIcon_Minun, .iconPalIndex = 0, + SHADOW(-4, 3, SHADOW_SIZE_S) FOOTPRINT(Minun) OVERWORLD( sPicTable_Minun, @@ -4973,6 +5048,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Volbeat, .iconSprite = gMonIcon_Volbeat, .iconPalIndex = 0, + SHADOW(0, 5, SHADOW_SIZE_S) FOOTPRINT(Volbeat) OVERWORLD( sPicTable_Volbeat, @@ -5045,6 +5121,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Illumise, .iconSprite = gMonIcon_Illumise, .iconPalIndex = 2, + SHADOW(0, 5, SHADOW_SIZE_S) FOOTPRINT(Illumise) OVERWORLD( sPicTable_Illumise, @@ -5111,6 +5188,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Budew, .iconSprite = gMonIcon_Budew, .iconPalIndex = 1, + SHADOW(-3, 0, SHADOW_SIZE_S) FOOTPRINT(Budew) OVERWORLD( sPicTable_Budew, @@ -5180,6 +5258,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Roselia, .iconSprite = gMonIcon_Roselia, .iconPalIndex = 4, + SHADOW(-2, 3, SHADOW_SIZE_S) FOOTPRINT(Roselia) OVERWORLD( sPicTable_Roselia, @@ -5257,6 +5336,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Roserade, .iconSprite = gMonIcon_Roserade, .iconPalIndex = 0, + SHADOW(0, 6, SHADOW_SIZE_S) FOOTPRINT(Roserade) OVERWORLD( sPicTable_Roserade, @@ -5326,6 +5406,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Gulpin, .iconSprite = gMonIcon_Gulpin, .iconPalIndex = 1, + SHADOW(1, -2, SHADOW_SIZE_S) FOOTPRINT(Gulpin) OVERWORLD( sPicTable_Gulpin, @@ -5394,6 +5475,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Swalot, .iconSprite = gMonIcon_Swalot, .iconPalIndex = 2, + SHADOW(4, 3, SHADOW_SIZE_L) FOOTPRINT(Swalot) OVERWORLD( sPicTable_Swalot, @@ -5457,6 +5539,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Carvanha, .iconSprite = gMonIcon_Carvanha, .iconPalIndex = 0, + SHADOW(-1, 8, SHADOW_SIZE_S) FOOTPRINT(Carvanha) OVERWORLD( sPicTable_Carvanha, @@ -5520,6 +5603,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Sharpedo, .iconSprite = gMonIcon_Sharpedo, .iconPalIndex = 0, + SHADOW(-2, 14, SHADOW_SIZE_M) FOOTPRINT(Sharpedo) OVERWORLD( sPicTable_Sharpedo, @@ -5585,6 +5669,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_SharpedoMega, .iconSprite = gMonIcon_SharpedoMega, .iconPalIndex = 0, + SHADOW(-2, 14, SHADOW_SIZE_M) FOOTPRINT(Sharpedo) .isMegaEvolution = TRUE, .levelUpLearnset = sSharpedoLevelUpLearnset, @@ -5643,6 +5728,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Wailmer, .iconSprite = gMonIcon_Wailmer, .iconPalIndex = 2, + SHADOW(0, 3, SHADOW_SIZE_L) FOOTPRINT(Wailmer) OVERWORLD( sPicTable_Wailmer, @@ -5706,6 +5792,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Wailord, .iconSprite = gMonIcon_Wailord, .iconPalIndex = 0, + SHADOW(1, 7, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Wailord) OVERWORLD( sPicTable_Wailord, @@ -5776,6 +5863,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Numel, .iconSprite = gMonIcon_Numel, .iconPalIndex = 1, + SHADOW(4, 2, SHADOW_SIZE_S) FOOTPRINT(Numel) OVERWORLD( sPicTable_Numel, @@ -5847,6 +5935,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Camerupt, .iconSprite = gMonIcon_Camerupt, .iconPalIndex = 0, + SHADOW(2, 4, SHADOW_SIZE_L) FOOTPRINT(Camerupt) OVERWORLD( sPicTable_Camerupt, @@ -5911,6 +6000,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_CameruptMega, .iconSprite = gMonIcon_CameruptMega, .iconPalIndex = 0, + SHADOW(1, 6, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Camerupt) .isMegaEvolution = TRUE, .levelUpLearnset = sCameruptLevelUpLearnset, @@ -5974,6 +6064,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Torkoal, .iconSprite = gMonIcon_Torkoal, .iconPalIndex = 2, + SHADOW(2, 7, SHADOW_SIZE_L) FOOTPRINT(Torkoal) OVERWORLD( sPicTable_Torkoal, @@ -6037,6 +6128,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Spoink, .iconSprite = gMonIcon_Spoink, .iconPalIndex = 0, + SHADOW(-1, 5, SHADOW_SIZE_S) FOOTPRINT(Spoink) OVERWORLD( sPicTable_Spoink, @@ -6100,6 +6192,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Grumpig, .iconSprite = gMonIcon_Grumpig, .iconPalIndex = 2, + SHADOW(-1, 8, SHADOW_SIZE_M) FOOTPRINT(Grumpig) OVERWORLD( sPicTable_Grumpig, @@ -6167,6 +6260,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Spinda, .iconSprite = gMonIcon_Spinda, .iconPalIndex = 1, + SHADOW(2, 6, SHADOW_SIZE_S) FOOTPRINT(Spinda) OVERWORLD( sPicTable_Spinda, @@ -6235,6 +6329,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Trapinch, .iconSprite = gMonIcon_Trapinch, .iconPalIndex = 0, + SHADOW(4, -1, SHADOW_SIZE_S) FOOTPRINT(Trapinch) OVERWORLD( sPicTable_Trapinch, @@ -6302,6 +6397,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Vibrava, .iconSprite = gMonIcon_Vibrava, .iconPalIndex = 1, + SHADOW(-2, 0, SHADOW_SIZE_L) FOOTPRINT(Vibrava) OVERWORLD( sPicTable_Vibrava, @@ -6375,6 +6471,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Flygon, .iconSprite = gMonIcon_Flygon, .iconPalIndex = 1, + SHADOW(0, 17, SHADOW_SIZE_M) FOOTPRINT(Flygon) OVERWORLD( sPicTable_Flygon, @@ -6438,6 +6535,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Cacnea, .iconSprite = gMonIcon_Cacnea, .iconPalIndex = 1, + SHADOW(0, 1, SHADOW_SIZE_S) FOOTPRINT(Cacnea) OVERWORLD( sPicTable_Cacnea, @@ -6504,6 +6602,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Cacturne, .iconSprite = gMonIcon_Cacturne, .iconPalIndex = 1, + SHADOW(-1, 14, SHADOW_SIZE_M) FOOTPRINT(Cacturne) OVERWORLD( sPicTable_Cacturne, @@ -6566,6 +6665,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Swablu, .iconSprite = gMonIcon_Swablu, .iconPalIndex = 0, + SHADOW(-2, 0, SHADOW_SIZE_S) FOOTPRINT(Swablu) OVERWORLD( sPicTable_Swablu, @@ -6628,6 +6728,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Altaria, .iconSprite = gMonIcon_Altaria, .iconPalIndex = 0, + SHADOW(-1, 14, SHADOW_SIZE_L) FOOTPRINT(Altaria) OVERWORLD( sPicTable_Altaria, @@ -6692,6 +6793,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_AltariaMega, .iconSprite = gMonIcon_AltariaMega, .iconPalIndex = 0, + SHADOW(-2, 17, SHADOW_SIZE_L) FOOTPRINT(Altaria) .isMegaEvolution = TRUE, .levelUpLearnset = sAltariaLevelUpLearnset, @@ -6752,6 +6854,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Zangoose, .iconSprite = gMonIcon_Zangoose, .iconPalIndex = 0, + SHADOW(-1, 8, SHADOW_SIZE_M) FOOTPRINT(Zangoose) OVERWORLD( sPicTable_Zangoose, @@ -6818,6 +6921,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Seviper, .iconSprite = gMonIcon_Seviper, .iconPalIndex = 2, + SHADOW(-3, 7, SHADOW_SIZE_L) FOOTPRINT(Seviper) OVERWORLD( sPicTable_Seviper, @@ -6890,6 +6994,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Lunatone, .iconSprite = gMonIcon_Lunatone, .iconPalIndex = 1, + SHADOW(0, 15, SHADOW_SIZE_S) FOOTPRINT(Lunatone) OVERWORLD( sPicTable_Lunatone, @@ -6961,6 +7066,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Solrock, .iconSprite = gMonIcon_Solrock, .iconPalIndex = 0, + SHADOW(0, 15, SHADOW_SIZE_M) FOOTPRINT(Solrock) OVERWORLD( sPicTable_Solrock, @@ -7028,6 +7134,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Barboach, .iconSprite = gMonIcon_Barboach, .iconPalIndex = 0, + SHADOW(0, 3, SHADOW_SIZE_M) FOOTPRINT(Barboach) OVERWORLD( sPicTable_Barboach, @@ -7094,6 +7201,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Whiscash, .iconSprite = gMonIcon_Whiscash, .iconPalIndex = 0, + SHADOW(0, 3, SHADOW_SIZE_L) FOOTPRINT(Whiscash) OVERWORLD( sPicTable_Whiscash, @@ -7156,6 +7264,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Corphish, .iconSprite = gMonIcon_Corphish, .iconPalIndex = 0, + SHADOW(1, 5, SHADOW_SIZE_M) FOOTPRINT(Corphish) OVERWORLD( sPicTable_Corphish, @@ -7218,6 +7327,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Crawdaunt, .iconSprite = gMonIcon_Crawdaunt, .iconPalIndex = 0, + SHADOW(6, 9, SHADOW_SIZE_M) FOOTPRINT(Crawdaunt) OVERWORLD( sPicTable_Crawdaunt, @@ -7282,6 +7392,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Baltoy, .iconSprite = gMonIcon_Baltoy, .iconPalIndex = 2, + SHADOW(-2, 5, SHADOW_SIZE_S) FOOTPRINT(Baltoy) OVERWORLD( sPicTable_Baltoy, @@ -7345,6 +7456,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Claydol, .iconSprite = gMonIcon_Claydol, .iconPalIndex = 0, + SHADOW(0, 18, SHADOW_SIZE_M) FOOTPRINT(Claydol) OVERWORLD( sPicTable_Claydol, @@ -7414,6 +7526,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Lileep, .iconSprite = gMonIcon_Lileep, .iconPalIndex = 2, + SHADOW(0, 5, SHADOW_SIZE_S) FOOTPRINT(Lileep) OVERWORLD( sPicTable_Lileep, @@ -7483,6 +7596,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Cradily, .iconSprite = gMonIcon_Cradily, .iconPalIndex = 1, + SHADOW(2, 11, SHADOW_SIZE_M) FOOTPRINT(Cradily) OVERWORLD( sPicTable_Cradily, @@ -7551,6 +7665,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Anorith, .iconSprite = gMonIcon_Anorith, .iconPalIndex = 0, + SHADOW(0, 4, SHADOW_SIZE_S) FOOTPRINT(Anorith) OVERWORLD( sPicTable_Anorith, @@ -7619,6 +7734,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Armaldo, .iconSprite = gMonIcon_Armaldo, .iconPalIndex = 2, + SHADOW(-2, 11, SHADOW_SIZE_L) FOOTPRINT(Armaldo) OVERWORLD( sPicTable_Armaldo, @@ -7685,6 +7801,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Feebas, .iconSprite = gMonIcon_Feebas, .iconPalIndex = 2, + SHADOW(-2, 2, SHADOW_SIZE_S) FOOTPRINT(Feebas) OVERWORLD( sPicTable_Feebas, @@ -7758,6 +7875,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Milotic, .iconSprite = gMonIcon_Milotic, .iconPalIndex = 2, + SHADOW(0, 12, SHADOW_SIZE_M) FOOTPRINT(Milotic) OVERWORLD( sPicTable_Milotic, @@ -7823,6 +7941,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_CastformNormal, .iconSprite = gMonIcon_CastformNormal, .iconPalIndex = 0, + SHADOW(1, 10, SHADOW_SIZE_S) FOOTPRINT(Castform) OVERWORLD( sPicTable_CastformNormal, @@ -7889,6 +8008,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_CastformSunny, .iconSprite = gMonIcon_CastformSunny, .iconPalIndex = 0, + SHADOW(0, 7, SHADOW_SIZE_S) FOOTPRINT(Castform) OVERWORLD( sPicTable_CastformSunny, @@ -7955,6 +8075,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_CastformRainy, .iconSprite = gMonIcon_CastformRainy, .iconPalIndex = 0, + SHADOW(0, 7, SHADOW_SIZE_S) FOOTPRINT(Castform) OVERWORLD( sPicTable_CastformRainy, @@ -8021,6 +8142,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_CastformSnowy, .iconSprite = gMonIcon_CastformSnowy, .iconPalIndex = 0, + SHADOW(0, 8, SHADOW_SIZE_S) FOOTPRINT(Castform) OVERWORLD( sPicTable_CastformSnowy, @@ -8091,6 +8213,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Kecleon, .iconSprite = gMonIcon_Kecleon, .iconPalIndex = 1, + SHADOW(2, 8, SHADOW_SIZE_S) FOOTPRINT(Kecleon) OVERWORLD( sPicTable_Kecleon, @@ -8160,6 +8283,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Shuppet, .iconSprite = gMonIcon_Shuppet, .iconPalIndex = 0, + SHADOW(2, 12, SHADOW_SIZE_S) FOOTPRINT(Shuppet) OVERWORLD( sPicTable_Shuppet, @@ -8227,6 +8351,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Banette, .iconSprite = gMonIcon_Banette, .iconPalIndex = 0, + SHADOW(0, 7, SHADOW_SIZE_S) FOOTPRINT(Banette) OVERWORLD( sPicTable_Banette, @@ -8291,6 +8416,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_BanetteMega, .iconSprite = gMonIcon_BanetteMega, .iconPalIndex = 0, + SHADOW(0, 16, SHADOW_SIZE_M) FOOTPRINT(Banette) .isMegaEvolution = TRUE, .levelUpLearnset = sBanetteLevelUpLearnset, @@ -8356,6 +8482,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Duskull, .iconSprite = gMonIcon_Duskull, .iconPalIndex = 0, + SHADOW(0, 12, SHADOW_SIZE_S) FOOTPRINT(Duskull) OVERWORLD( sPicTable_Duskull, @@ -8425,6 +8552,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Dusclops, .iconSprite = gMonIcon_Dusclops, .iconPalIndex = 0, + SHADOW(-2, 8, SHADOW_SIZE_M) FOOTPRINT(Dusclops) OVERWORLD( sPicTable_Dusclops, @@ -8501,6 +8629,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Dusknoir, .iconSprite = gMonIcon_Dusknoir, .iconPalIndex = 2, + SHADOW(6, 13, SHADOW_SIZE_M) FOOTPRINT(Dusknoir) OVERWORLD( sPicTable_Dusknoir, @@ -8568,6 +8697,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Tropius, .iconSprite = gMonIcon_Tropius, .iconPalIndex = 1, + SHADOW(-6, 13, SHADOW_SIZE_L) FOOTPRINT(Tropius) OVERWORLD( sPicTable_Tropius, @@ -8633,6 +8763,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Chingling, .iconSprite = gMonIcon_Chingling, .iconPalIndex = 1, + SHADOW(-1, -2, SHADOW_SIZE_S) FOOTPRINT(Chingling) OVERWORLD( sPicTable_Chingling, @@ -8705,6 +8836,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Chimecho, .iconSprite = gMonIcon_Chimecho, .iconPalIndex = 0, + SHADOW(-3, 16, SHADOW_SIZE_S) FOOTPRINT(Chimecho) OVERWORLD( sPicTable_Chimecho, @@ -8774,6 +8906,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Absol, .iconSprite = gMonIcon_Absol, .iconPalIndex = 0, + SHADOW(4, 6, SHADOW_SIZE_L) FOOTPRINT(Absol) OVERWORLD( sPicTable_Absol, @@ -8839,6 +8972,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_AbsolMega, .iconSprite = gMonIcon_AbsolMega, .iconPalIndex = 0, + SHADOW(1, 7, SHADOW_SIZE_L) FOOTPRINT(Absol) .isMegaEvolution = TRUE, .levelUpLearnset = sAbsolLevelUpLearnset, @@ -8904,6 +9038,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Snorunt, .iconSprite = gMonIcon_Snorunt, .iconPalIndex = 2, + SHADOW(1, 2, SHADOW_SIZE_S) FOOTPRINT(Snorunt) OVERWORLD( sPicTable_Snorunt, @@ -8972,6 +9107,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Glalie, .iconSprite = gMonIcon_Glalie, .iconPalIndex = 0, + SHADOW(1, 15, SHADOW_SIZE_M) FOOTPRINT(Glalie) OVERWORLD( sPicTable_Glalie, @@ -9035,6 +9171,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_GlalieMega, .iconSprite = gMonIcon_GlalieMega, .iconPalIndex = 0, + SHADOW(3, 18, SHADOW_SIZE_L) FOOTPRINT(Glalie) .isMegaEvolution = TRUE, .levelUpLearnset = sGlalieLevelUpLearnset, @@ -9093,6 +9230,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Froslass, .iconSprite = gMonIcon_Froslass, .iconPalIndex = 0, + SHADOW(-1, 10, SHADOW_SIZE_S) FOOTPRINT(Froslass) OVERWORLD( sPicTable_Froslass, @@ -9161,6 +9299,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Spheal, .iconSprite = gMonIcon_Spheal, .iconPalIndex = 2, + SHADOW(0, -1, SHADOW_SIZE_M) FOOTPRINT(Spheal) OVERWORLD( sPicTable_Spheal, @@ -9227,6 +9366,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Sealeo, .iconSprite = gMonIcon_Sealeo, .iconPalIndex = 2, + SHADOW(-1, 2, SHADOW_SIZE_L) FOOTPRINT(Sealeo) OVERWORLD( sPicTable_Sealeo, @@ -9298,6 +9438,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Walrein, .iconSprite = gMonIcon_Walrein, .iconPalIndex = 0, + SHADOW(0, 8, SHADOW_SIZE_L) FOOTPRINT(Walrein) OVERWORLD( sPicTable_Walrein, @@ -9362,6 +9503,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Clamperl, .iconSprite = gMonIcon_Clamperl, .iconPalIndex = 0, + SHADOW(-1, 1, SHADOW_SIZE_M) FOOTPRINT(Clamperl) OVERWORLD( sPicTable_Clamperl, @@ -9429,6 +9571,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Huntail, .iconSprite = gMonIcon_Huntail, .iconPalIndex = 0, + SHADOW(2, 7, SHADOW_SIZE_L) FOOTPRINT(Huntail) OVERWORLD( sPicTable_Huntail, @@ -9490,6 +9633,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Gorebyss, .iconSprite = gMonIcon_Gorebyss, .iconPalIndex = 0, + SHADOW(-1, 5, SHADOW_SIZE_M) FOOTPRINT(Gorebyss) OVERWORLD( sPicTable_Gorebyss, @@ -9558,6 +9702,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Relicanth, .iconSprite = gMonIcon_Relicanth, .iconPalIndex = 2, + SHADOW(0, 3, SHADOW_SIZE_M) FOOTPRINT(Relicanth) OVERWORLD( sPicTable_Relicanth, @@ -9622,6 +9767,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Luvdisc, .iconSprite = gMonIcon_Luvdisc, .iconPalIndex = 0, + SHADOW(-1, 0, SHADOW_SIZE_S) FOOTPRINT(Luvdisc) OVERWORLD( sPicTable_Luvdisc, @@ -9686,6 +9832,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Bagon, .iconSprite = gMonIcon_Bagon, .iconPalIndex = 0, + SHADOW(4, 3, SHADOW_SIZE_S) FOOTPRINT(Bagon) OVERWORLD( sPicTable_Bagon, @@ -9749,6 +9896,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Shelgon, .iconSprite = gMonIcon_Shelgon, .iconPalIndex = 2, + SHADOW(1, 2, SHADOW_SIZE_M) FOOTPRINT(Shelgon) OVERWORLD( sPicTable_Shelgon, @@ -9818,6 +9966,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Salamence, .iconSprite = gMonIcon_Salamence, .iconPalIndex = 0, + SHADOW(3, 8, SHADOW_SIZE_L) FOOTPRINT(Salamence) OVERWORLD( sPicTable_Salamence, @@ -9882,6 +10031,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_SalamenceMega, .iconSprite = gMonIcon_SalamenceMega, .iconPalIndex = 0, + SHADOW(3, 8, SHADOW_SIZE_L) FOOTPRINT(Salamence) .isMegaEvolution = TRUE, .levelUpLearnset = sSalamenceLevelUpLearnset, @@ -9942,6 +10092,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Beldum, .iconSprite = gMonIcon_Beldum, .iconPalIndex = 0, + SHADOW(0, 4, SHADOW_SIZE_S) FOOTPRINT(Beldum) OVERWORLD( sPicTable_Beldum, @@ -10005,6 +10156,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Metang, .iconSprite = gMonIcon_Metang, .iconPalIndex = 0, + SHADOW(1, 2, SHADOW_SIZE_M) FOOTPRINT(Metang) OVERWORLD( sPicTable_Metang, @@ -10073,6 +10225,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Metagross, .iconSprite = gMonIcon_Metagross, .iconPalIndex = 0, + SHADOW(2, -2, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Metagross) OVERWORLD( sPicTable_Metagross, @@ -10137,6 +10290,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_MetagrossMega, .iconSprite = gMonIcon_MetagrossMega, .iconPalIndex = 0, + SHADOW(1, 15, SHADOW_SIZE_L) FOOTPRINT(Metagross) .isMegaEvolution = TRUE, .levelUpLearnset = sMetagrossLevelUpLearnset, @@ -10202,6 +10356,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Regirock, .iconSprite = gMonIcon_Regirock, .iconPalIndex = 2, + SHADOW(1, 10, SHADOW_SIZE_L) FOOTPRINT(Regirock) OVERWORLD( sPicTable_Regirock, @@ -10272,6 +10427,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Regice, .iconSprite = gMonIcon_Regice, .iconPalIndex = 0, + SHADOW(1, 10, SHADOW_SIZE_L) FOOTPRINT(Regice) OVERWORLD( sPicTable_Regice, @@ -10343,6 +10499,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Registeel, .iconSprite = gMonIcon_Registeel, .iconPalIndex = 2, + SHADOW(4, 8, SHADOW_SIZE_L) FOOTPRINT(Registeel) OVERWORLD( sPicTable_Registeel, @@ -10414,6 +10571,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Latias, .iconSprite = gMonIcon_Latias, .iconPalIndex = 0, + SHADOW(3, 15, SHADOW_SIZE_M) FOOTPRINT(Latias) OVERWORLD( sPicTable_Latias, @@ -10480,6 +10638,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_LatiasMega, .iconSprite = gMonIcon_LatiasMega, .iconPalIndex = 2, + SHADOW(-1, 19, SHADOW_SIZE_L) FOOTPRINT(Latias) .isLegendary = TRUE, .isMegaEvolution = TRUE, @@ -10547,6 +10706,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Latios, .iconSprite = gMonIcon_Latios, .iconPalIndex = 0, + SHADOW(1, 17, SHADOW_SIZE_M) FOOTPRINT(Latios) OVERWORLD( sPicTable_Latios, @@ -10613,6 +10773,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_LatiosMega, .iconSprite = gMonIcon_LatiosMega, .iconPalIndex = 2, + SHADOW(-1, 19, SHADOW_SIZE_L) FOOTPRINT(Latios) .isLegendary = TRUE, .isMegaEvolution = TRUE, @@ -10680,6 +10841,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Kyogre, .iconSprite = gMonIcon_Kyogre, .iconPalIndex = 2, + SHADOW(-1, 11, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Kyogre) OVERWORLD( sPicTable_Kyogre, @@ -10745,6 +10907,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_KyogrePrimal, .iconSprite = gMonIcon_KyogrePrimal, .iconPalIndex = 0, + SHADOW(-1, 11, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Kyogre) .isLegendary = TRUE, .isPrimalReversion = TRUE, @@ -10812,6 +10975,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Groudon, .iconSprite = gMonIcon_Groudon, .iconPalIndex = 0, + SHADOW(2, 11, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Groudon) OVERWORLD( sPicTable_Groudon, @@ -10878,6 +11042,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_GroudonPrimal, .iconSprite = gMonIcon_GroudonPrimal, .iconPalIndex = 0, + SHADOW(2, 11, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Groudon) .isLegendary = TRUE, .isPrimalReversion = TRUE, @@ -10948,6 +11113,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Rayquaza, .iconSprite = gMonIcon_Rayquaza, .iconPalIndex = 1, + SHADOW(0, 17, SHADOW_SIZE_L) FOOTPRINT(Rayquaza) OVERWORLD( sPicTable_Rayquaza, @@ -11016,6 +11182,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_RayquazaMega, .iconSprite = gMonIcon_RayquazaMega, .iconPalIndex = 1, + SHADOW(0, 15, SHADOW_SIZE_L) FOOTPRINT(Rayquaza) .isLegendary = TRUE, .isMegaEvolution = TRUE, @@ -11086,6 +11253,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_Jirachi, .iconSprite = gMonIcon_Jirachi, .iconPalIndex = 0, + SHADOW(0, 12, SHADOW_SIZE_S) FOOTPRINT(Jirachi) OVERWORLD( sPicTable_Jirachi, @@ -11157,6 +11325,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_DeoxysNormal, .iconSprite = gMonIcon_DeoxysNormal, .iconPalIndex = 0, + SHADOW(0, 14, SHADOW_SIZE_M) FOOTPRINT(Deoxys) OVERWORLD( sPicTable_DeoxysNormal, @@ -11219,7 +11388,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_DeoxysAttack, .iconSprite = gMonIcon_DeoxysAttack, .iconPalIndex = 0, - FOOTPRINT(Deoxys) + SHADOW(0, 14, SHADOW_SIZE_M) OVERWORLD( sPicTable_DeoxysAttack, SIZE_32x32, @@ -11281,6 +11450,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_DeoxysDefense, .iconSprite = gMonIcon_DeoxysDefense, .iconPalIndex = 0, + SHADOW(0, 13, SHADOW_SIZE_M) FOOTPRINT(Deoxys) OVERWORLD( sPicTable_DeoxysDefense, @@ -11343,6 +11513,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .shinyPalette = gMonShinyPalette_DeoxysSpeed, .iconSprite = gMonIcon_DeoxysSpeed, .iconPalIndex = 0, + SHADOW(3, 13, SHADOW_SIZE_M) FOOTPRINT(Deoxys) OVERWORLD( sPicTable_DeoxysSpeed, diff --git a/src/data/pokemon/species_info/gen_4_families.h b/src/data/pokemon/species_info/gen_4_families.h index e1dbdd160e..c63d6f613b 100644 --- a/src/data/pokemon/species_info/gen_4_families.h +++ b/src/data/pokemon/species_info/gen_4_families.h @@ -51,6 +51,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Turtwig, .iconSprite = gMonIcon_Turtwig, .iconPalIndex = 1, + SHADOW(1, 2, SHADOW_SIZE_S) FOOTPRINT(Turtwig) OVERWORLD( sPicTable_Turtwig, @@ -114,6 +115,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Grotle, .iconSprite = gMonIcon_Grotle, .iconPalIndex = 1, + SHADOW(1, 2, SHADOW_SIZE_L) FOOTPRINT(Grotle) OVERWORLD( sPicTable_Grotle, @@ -183,6 +185,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Torterra, .iconSprite = gMonIcon_Torterra, .iconPalIndex = 1, + SHADOW(1, 10, SHADOW_SIZE_L) FOOTPRINT(Torterra) OVERWORLD( sPicTable_Torterra, @@ -246,6 +249,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Chimchar, .iconSprite = gMonIcon_Chimchar, .iconPalIndex = 1, + SHADOW(4, 3, SHADOW_SIZE_S) FOOTPRINT(Chimchar) OVERWORLD( sPicTable_Chimchar, @@ -310,6 +314,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Monferno, .iconSprite = gMonIcon_Monferno, .iconPalIndex = 0, + SHADOW(-7, 6, SHADOW_SIZE_S) FOOTPRINT(Monferno) OVERWORLD( sPicTable_Monferno, @@ -379,6 +384,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Infernape, .iconSprite = gMonIcon_Infernape, .iconPalIndex = 0, + SHADOW(0, 9, SHADOW_SIZE_L) FOOTPRINT(Infernape) OVERWORLD( sPicTable_Infernape, @@ -445,6 +451,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Piplup, .iconSprite = gMonIcon_Piplup, .iconPalIndex = 0, + SHADOW(0, -1, SHADOW_SIZE_S) FOOTPRINT(Piplup) OVERWORLD( sPicTable_Piplup, @@ -511,6 +518,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Prinplup, .iconSprite = gMonIcon_Prinplup, .iconPalIndex = 0, + SHADOW(0, 7, SHADOW_SIZE_M) FOOTPRINT(Prinplup) OVERWORLD( sPicTable_Prinplup, @@ -582,6 +590,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Empoleon, .iconSprite = gMonIcon_Empoleon, .iconPalIndex = 0, + SHADOW(2, 12, SHADOW_SIZE_M) FOOTPRINT(Empoleon) OVERWORLD( sPicTable_Empoleon, @@ -652,6 +661,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Starly, .iconSprite = gMonIcon_Starly, .iconPalIndex = 0, + SHADOW(-2, 1, SHADOW_SIZE_S) FOOTPRINT(Starly) OVERWORLD( sPicTable_Starly, @@ -718,6 +728,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Staravia, .iconSprite = gMonIcon_Staravia, .iconPalIndex = 0, + SHADOW(-1, 5, SHADOW_SIZE_S) FOOTPRINT(Staravia) OVERWORLD( sPicTable_Staravia, @@ -789,6 +800,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Staraptor, .iconSprite = gMonIcon_Staraptor, .iconPalIndex = 0, + SHADOW(1, 10, SHADOW_SIZE_M) FOOTPRINT(Staraptor) OVERWORLD( sPicTable_Staraptor, @@ -855,6 +867,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Bidoof, .iconSprite = gMonIcon_Bidoof, .iconPalIndex = 2, + SHADOW(1, 1, SHADOW_SIZE_M) FOOTPRINT(Bidoof) OVERWORLD( sPicTable_Bidoof, @@ -919,6 +932,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Bibarel, .iconSprite = gMonIcon_Bibarel, .iconPalIndex = 2, + SHADOW(-5, 5, SHADOW_SIZE_M) FOOTPRINT(Bibarel) OVERWORLD( sPicTable_Bibarel, @@ -986,6 +1000,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Kricketot, .iconSprite = gMonIcon_Kricketot, .iconPalIndex = 2, + SHADOW(-5, 2, SHADOW_SIZE_S) FOOTPRINT(Kricketot) OVERWORLD( sPicTable_Kricketot, @@ -1053,6 +1068,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Kricketune, .iconSprite = gMonIcon_Kricketune, .iconPalIndex = 2, + SHADOW(-3, 6, SHADOW_SIZE_S) FOOTPRINT(Kricketune) OVERWORLD( sPicTable_Kricketune, @@ -1119,6 +1135,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Shinx, .iconSprite = gMonIcon_Shinx, .iconPalIndex = 0, + SHADOW(-1, 1, SHADOW_SIZE_S) FOOTPRINT(Shinx) OVERWORLD( sPicTable_Shinx, @@ -1185,6 +1202,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Luxio, .iconSprite = gMonIcon_Luxio, .iconPalIndex = 0, + SHADOW(-4, 2, SHADOW_SIZE_M) FOOTPRINT(Luxio) OVERWORLD( sPicTable_Luxio, @@ -1256,6 +1274,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Luxray, .iconSprite = gMonIcon_Luxray, .iconPalIndex = 0, + SHADOW(-1, 10, SHADOW_SIZE_L) FOOTPRINT(Luxray) OVERWORLD( sPicTable_Luxray, @@ -1318,6 +1337,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Cranidos, .iconSprite = gMonIcon_Cranidos, .iconPalIndex = 0, + SHADOW(4, 4, SHADOW_SIZE_S) FOOTPRINT(Cranidos) OVERWORLD( sPicTable_Cranidos, @@ -1380,6 +1400,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Rampardos, .iconSprite = gMonIcon_Rampardos, .iconPalIndex = 0, + SHADOW(7, 11, SHADOW_SIZE_L) FOOTPRINT(Rampardos) OVERWORLD( sPicTable_Rampardos, @@ -1442,6 +1463,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Shieldon, .iconSprite = gMonIcon_Shieldon, .iconPalIndex = 1, + SHADOW(3, -1, SHADOW_SIZE_S) FOOTPRINT(Shieldon) OVERWORLD( sPicTable_Shieldon, @@ -1504,6 +1526,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Bastiodon, .iconSprite = gMonIcon_Bastiodon, .iconPalIndex = 1, + SHADOW(1, 6, SHADOW_SIZE_L) FOOTPRINT(Bastiodon) OVERWORLD( sPicTable_Bastiodon, @@ -1567,6 +1590,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_BurmyPlantCloak, .iconSprite = gMonIcon_BurmyPlantCloak, .iconPalIndex = 1, + SHADOW(-1, 8, SHADOW_SIZE_S) FOOTPRINT(Burmy) OVERWORLD( sPicTable_BurmyPlantCloak, @@ -1633,6 +1657,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_BurmySandyCloak, .iconSprite = gMonIcon_BurmySandyCloak, .iconPalIndex = 1, + SHADOW(-1, 9, SHADOW_SIZE_S) FOOTPRINT(Burmy) OVERWORLD( sPicTable_BurmySandyCloak, @@ -1699,6 +1724,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_BurmyTrashCloak, .iconSprite = gMonIcon_BurmyTrashCloak, .iconPalIndex = 0, + SHADOW(-1, 13, SHADOW_SIZE_S) FOOTPRINT(Burmy) OVERWORLD( sPicTable_BurmyTrashCloak, @@ -1766,6 +1792,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_WormadamPlantCloak, .iconSprite = gMonIcon_WormadamPlantCloak, .iconPalIndex = 1, + SHADOW(0, 9, SHADOW_SIZE_S) FOOTPRINT(Wormadam) OVERWORLD( sPicTable_WormadamPlantCloak, @@ -1829,6 +1856,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_WormadamSandyCloak, .iconSprite = gMonIcon_WormadamSandyCloak, .iconPalIndex = 1, + SHADOW(-1, 9, SHADOW_SIZE_S) FOOTPRINT(Wormadam) OVERWORLD( sPicTable_WormadamSandyCloak, @@ -1893,6 +1921,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_WormadamTrashCloak, .iconSprite = gMonIcon_WormadamTrashCloak, .iconPalIndex = 0, + SHADOW(0, 9, SHADOW_SIZE_S) FOOTPRINT(Wormadam) OVERWORLD( sPicTable_WormadamTrashCloak, @@ -1953,6 +1982,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Mothim, \ .iconSprite = gMonIcon_Mothim, \ .iconPalIndex = 0, \ + SHADOW(-1, 9, SHADOW_SIZE_S) \ FOOTPRINT(Mothim) \ OVERWORLD( \ sPicTable_Mothim, \ @@ -2024,6 +2054,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPaletteFemale = gMonShinyPalette_CombeeF, .iconSprite = gMonIcon_Combee, .iconPalIndex = 0, + SHADOW(-4, 10, SHADOW_SIZE_S) FOOTPRINT(Combee) OVERWORLD( sPicTable_Combee, @@ -2089,6 +2120,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Vespiquen, .iconSprite = gMonIcon_Vespiquen, .iconPalIndex = 0, + SHADOW(-1, 11, SHADOW_SIZE_L) FOOTPRINT(Vespiquen) OVERWORLD( sPicTable_Vespiquen, @@ -2153,6 +2185,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Pachirisu, .iconSprite = gMonIcon_Pachirisu, .iconPalIndex = 0, + SHADOW(-2, 1, SHADOW_SIZE_S) FOOTPRINT(Pachirisu) OVERWORLD( sPicTable_Pachirisu, @@ -2218,6 +2251,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Buizel, .iconSprite = gMonIcon_Buizel, .iconPalIndex = 0, + SHADOW(1, 4, SHADOW_SIZE_S) FOOTPRINT(Buizel) OVERWORLD( sPicTable_Buizel, @@ -2282,6 +2316,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Floatzel, .iconSprite = gMonIcon_Floatzel, .iconPalIndex = 0, + SHADOW(-4, 10, SHADOW_SIZE_M) FOOTPRINT(Floatzel) OVERWORLD( sPicTable_Floatzel, @@ -2345,6 +2380,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Cherubi, .iconSprite = gMonIcon_Cherubi, .iconPalIndex = 1, + SHADOW(-4, -2, SHADOW_SIZE_S) FOOTPRINT(Cherubi) OVERWORLD( sPicTable_Cherubi, @@ -2408,6 +2444,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_CherrimOvercast, .iconSprite = gMonIcon_CherrimOvercast, .iconPalIndex = 0, + SHADOW(0, 6, SHADOW_SIZE_S) FOOTPRINT(Cherrim) OVERWORLD( sPicTable_CherrimOvercast, @@ -2471,6 +2508,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_CherrimSunshine, .iconSprite = gMonIcon_CherrimSunshine, .iconPalIndex = 1, + SHADOW(1, 2, SHADOW_SIZE_S) FOOTPRINT(Cherrim) .levelUpLearnset = sCherrimLevelUpLearnset, .teachableLearnset = sCherrimTeachableLearnset, @@ -2527,6 +2565,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_ShellosWestSea, .iconSprite = gMonIcon_ShellosWestSea, .iconPalIndex = 0, + SHADOW(1, 0, SHADOW_SIZE_S) FOOTPRINT(Shellos) OVERWORLD( sPicTable_ShellosWestSea, @@ -2590,6 +2629,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_ShellosEastSea, .iconSprite = gMonIcon_ShellosEastSea, .iconPalIndex = 0, + SHADOW(2, -1, SHADOW_SIZE_S) FOOTPRINT(Shellos) OVERWORLD( sPicTable_ShellosEastSea, @@ -2653,6 +2693,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_GastrodonWestSea, .iconSprite = gMonIcon_GastrodonWestSea, .iconPalIndex = 0, + SHADOW(1, 3, SHADOW_SIZE_M) FOOTPRINT(Gastrodon) OVERWORLD( sPicTable_GastrodonWestSea, @@ -2714,6 +2755,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_GastrodonEastSea, .iconSprite = gMonIcon_GastrodonEastSea, .iconPalIndex = 0, + SHADOW(2, 4, SHADOW_SIZE_M) FOOTPRINT(Gastrodon) OVERWORLD( sPicTable_GastrodonEastSea, @@ -2778,6 +2820,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Drifloon, .iconSprite = gMonIcon_Drifloon, .iconPalIndex = 2, + SHADOW(1, 9, SHADOW_SIZE_S) FOOTPRINT(Drifloon) OVERWORLD( sPicTable_Drifloon, @@ -2841,6 +2884,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Drifblim, .iconSprite = gMonIcon_Drifblim, .iconPalIndex = 2, + SHADOW(0, 11, SHADOW_SIZE_M) FOOTPRINT(Drifblim) OVERWORLD( sPicTable_Drifblim, @@ -2903,6 +2947,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Buneary, .iconSprite = gMonIcon_Buneary, .iconPalIndex = 2, + SHADOW(3, 5, SHADOW_SIZE_S) FOOTPRINT(Buneary) OVERWORLD( sPicTable_Buneary, @@ -2965,6 +3010,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Lopunny, .iconSprite = gMonIcon_Lopunny, .iconPalIndex = 2, + SHADOW(0, 10, SHADOW_SIZE_S) FOOTPRINT(Lopunny) OVERWORLD( sPicTable_Lopunny, @@ -3028,6 +3074,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_LopunnyMega, .iconSprite = gMonIcon_LopunnyMega, .iconPalIndex = 2, + SHADOW(0, 13, SHADOW_SIZE_S) FOOTPRINT(Lopunny) .isMegaEvolution = TRUE, .levelUpLearnset = sLopunnyLevelUpLearnset, @@ -3086,6 +3133,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Glameow, .iconSprite = gMonIcon_Glameow, .iconPalIndex = 0, + SHADOW(-3, 6, SHADOW_SIZE_S) FOOTPRINT(Glameow) OVERWORLD( sPicTable_Glameow, @@ -3148,6 +3196,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Purugly, .iconSprite = gMonIcon_Purugly, .iconPalIndex = 0, + SHADOW(4, 8, SHADOW_SIZE_L) FOOTPRINT(Purugly) OVERWORLD( sPicTable_Purugly, @@ -3210,6 +3259,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Stunky, .iconSprite = gMonIcon_Stunky, .iconPalIndex = 2, + SHADOW(-1, 0, SHADOW_SIZE_M) FOOTPRINT(Stunky) OVERWORLD( sPicTable_Stunky, @@ -3272,6 +3322,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Skuntank, .iconSprite = gMonIcon_Skuntank, .iconPalIndex = 2, + SHADOW(-3, 6, SHADOW_SIZE_L) FOOTPRINT(Skuntank) OVERWORLD( sPicTable_Skuntank, @@ -3336,6 +3387,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Bronzor, .iconSprite = gMonIcon_Bronzor, .iconPalIndex = 0, + SHADOW(0, 6, SHADOW_SIZE_S) FOOTPRINT(Bronzor) OVERWORLD( sPicTable_Bronzor, @@ -3400,6 +3452,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Bronzong, .iconSprite = gMonIcon_Bronzong, .iconPalIndex = 0, + SHADOW(5, 12, SHADOW_SIZE_M) FOOTPRINT(Bronzong) OVERWORLD( sPicTable_Bronzong, @@ -3463,6 +3516,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Chatot, .iconSprite = gMonIcon_Chatot, .iconPalIndex = 0, + SHADOW(-1, 3, SHADOW_SIZE_S) FOOTPRINT(Chatot) OVERWORLD( sPicTable_Chatot, @@ -3527,6 +3581,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Spiritomb, .iconSprite = gMonIcon_Spiritomb, .iconPalIndex = 5, + SHADOW(-1, 7, SHADOW_SIZE_L) FOOTPRINT(Spiritomb) OVERWORLD( sPicTable_Spiritomb, @@ -3594,6 +3649,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Gible, .iconSprite = gMonIcon_Gible, .iconPalIndex = 0, + SHADOW(1, 5, SHADOW_SIZE_M) FOOTPRINT(Gible) OVERWORLD( sPicTable_Gible, @@ -3660,6 +3716,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Gabite, .iconSprite = gMonIcon_Gabite, .iconPalIndex = 0, + SHADOW(3, 8, SHADOW_SIZE_M) FOOTPRINT(Gabite) OVERWORLD( sPicTable_Gabite, @@ -3729,6 +3786,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Garchomp, .iconSprite = gMonIcon_Garchomp, .iconPalIndex = 0, + SHADOW(5, 11, SHADOW_SIZE_L) FOOTPRINT(Garchomp) OVERWORLD( sPicTable_Garchomp, @@ -3792,6 +3850,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_GarchompMega, .iconSprite = gMonIcon_GarchompMega, .iconPalIndex = 0, + SHADOW(1, 12, SHADOW_SIZE_L) FOOTPRINT(Garchomp) .isMegaEvolution = TRUE, .levelUpLearnset = sGarchompLevelUpLearnset, @@ -3850,6 +3909,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Riolu, .iconSprite = gMonIcon_Riolu, .iconPalIndex = 2, + SHADOW(3, 3, SHADOW_SIZE_S) FOOTPRINT(Riolu) OVERWORLD( sPicTable_Riolu, @@ -3913,6 +3973,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Lucario, .iconSprite = gMonIcon_Lucario, .iconPalIndex = 2, + SHADOW(-1, 7, SHADOW_SIZE_M) FOOTPRINT(Lucario) OVERWORLD( sPicTable_Lucario, @@ -3977,6 +4038,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_LucarioMega, .iconSprite = gMonIcon_LucarioMega, .iconPalIndex = 2, + SHADOW(-1, 11, SHADOW_SIZE_M) FOOTPRINT(Lucario) .isMegaEvolution = TRUE, .levelUpLearnset = sLucarioLevelUpLearnset, @@ -4041,6 +4103,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .iconSpriteFemale = gMonIcon_HippopotasF, .iconPalIndexFemale = 1, #endif + SHADOW(2, -1, SHADOW_SIZE_L) FOOTPRINT(Hippopotas) OVERWORLD( sPicTable_Hippopotas, @@ -4109,6 +4172,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .iconSpriteFemale = gMonIcon_HippowdonF, .iconPalIndexFemale = 1, #endif + NO_SHADOW FOOTPRINT(Hippowdon) OVERWORLD( sPicTable_Hippowdon, @@ -4172,6 +4236,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Skorupi, .iconSprite = gMonIcon_Skorupi, .iconPalIndex = 0, + SHADOW(-2, 3, SHADOW_SIZE_S) FOOTPRINT(Skorupi) OVERWORLD( sPicTable_Skorupi, @@ -4235,6 +4300,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Drapion, .iconSprite = gMonIcon_Drapion, .iconPalIndex = 2, + SHADOW(-3, 6, SHADOW_SIZE_L) FOOTPRINT(Drapion) OVERWORLD( sPicTable_Drapion, @@ -4302,6 +4368,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Croagunk, .iconSprite = gMonIcon_Croagunk, .iconPalIndex = 0, + SHADOW(2, 4, SHADOW_SIZE_S) FOOTPRINT(Croagunk) OVERWORLD( sPicTable_Croagunk, @@ -4369,6 +4436,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Toxicroak, .iconSprite = gMonIcon_Toxicroak, .iconPalIndex = 0, + SHADOW(3, 7, SHADOW_SIZE_M) FOOTPRINT(Toxicroak) OVERWORLD( sPicTable_Toxicroak, @@ -4432,6 +4500,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Carnivine, .iconSprite = gMonIcon_Carnivine, .iconPalIndex = 1, + SHADOW(0, 9, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Carnivine) OVERWORLD( sPicTable_Carnivine, @@ -4499,6 +4568,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Finneon, .iconSprite = gMonIcon_Finneon, .iconPalIndex = 0, + SHADOW(0, 1, SHADOW_SIZE_S) FOOTPRINT(Finneon) OVERWORLD( sPicTable_Finneon, @@ -4565,6 +4635,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Lumineon, .iconSprite = gMonIcon_Lumineon, .iconPalIndex = 0, + SHADOW(-1, 8, SHADOW_SIZE_M) FOOTPRINT(Lumineon) OVERWORLD( sPicTable_Lumineon, @@ -4632,6 +4703,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Snover, .iconSprite = gMonIcon_Snover, .iconPalIndex = 1, + SHADOW(1, 4, SHADOW_SIZE_M) FOOTPRINT(Snover) OVERWORLD( sPicTable_Snover, @@ -4698,6 +4770,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Abomasnow, .iconSprite = gMonIcon_Abomasnow, .iconPalIndex = 1, + SHADOW(0, 11, SHADOW_SIZE_L) FOOTPRINT(Abomasnow) OVERWORLD( sPicTable_Abomasnow, @@ -4763,6 +4836,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_AbomasnowMega, .iconSprite = gMonIcon_AbomasnowMega, .iconPalIndex = 1, + SHADOW(0, 12, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Abomasnow) .isMegaEvolution = TRUE, .levelUpLearnset = sAbomasnowLevelUpLearnset, @@ -4823,6 +4897,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Rotom, .iconSprite = gMonIcon_Rotom, .iconPalIndex = 0, + SHADOW(0, 10, SHADOW_SIZE_S) FOOTPRINT(Rotom) OVERWORLD( sPicTable_Rotom, @@ -4895,6 +4970,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_RotomHeat, .iconSprite = gMonIcon_RotomHeat, .iconPalIndex = 0, + SHADOW(-1, 7, SHADOW_SIZE_M) FOOTPRINT(Rotom) OVERWORLD( sPicTable_RotomHeat, @@ -4960,6 +5036,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_RotomWash, .iconSprite = gMonIcon_RotomWash, .iconPalIndex = 0, + SHADOW(0, 10, SHADOW_SIZE_M) FOOTPRINT(Rotom) OVERWORLD( sPicTable_RotomWash, @@ -5024,6 +5101,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_RotomFrost, .iconSprite = gMonIcon_RotomFrost, .iconPalIndex = 5, + SHADOW(0, 13, SHADOW_SIZE_M) FOOTPRINT(Rotom) OVERWORLD( sPicTable_RotomFrost, @@ -5089,6 +5167,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_RotomFan, .iconSprite = gMonIcon_RotomFan, .iconPalIndex = 0, + SHADOW(4, 9, SHADOW_SIZE_S) FOOTPRINT(Rotom) OVERWORLD( sPicTable_RotomFan, @@ -5153,6 +5232,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_RotomMow, .iconSprite = gMonIcon_RotomMow, .iconPalIndex = 0, + SHADOW(2, 14, SHADOW_SIZE_M) FOOTPRINT(Rotom) OVERWORLD( sPicTable_RotomMow, @@ -5225,6 +5305,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Uxie, .iconSprite = gMonIcon_Uxie, .iconPalIndex = 0, + SHADOW(2, 11, SHADOW_SIZE_S) FOOTPRINT(Uxie) OVERWORLD( sPicTable_Uxie, @@ -5298,6 +5379,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Mesprit, .iconSprite = gMonIcon_Mesprit, .iconPalIndex = 0, + SHADOW(0, 13, SHADOW_SIZE_S) FOOTPRINT(Mesprit) OVERWORLD( sPicTable_Mesprit, @@ -5370,6 +5452,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Azelf, .iconSprite = gMonIcon_Azelf, .iconPalIndex = 0, + SHADOW(0, 17, SHADOW_SIZE_S) FOOTPRINT(Azelf) OVERWORLD( sPicTable_Azelf, @@ -5442,6 +5525,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Dialga, .iconSprite = gMonIcon_Dialga, .iconPalIndex = 2, + SHADOW(4, 12, SHADOW_SIZE_L) FOOTPRINT(Dialga) OVERWORLD( sPicTable_Dialga, @@ -5507,6 +5591,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_DialgaOrigin, .iconSprite = gMonIcon_DialgaOrigin, .iconPalIndex = 0, + SHADOW(2, 11, SHADOW_SIZE_L) FOOTPRINT(Dialga) OVERWORLD( sPicTable_DialgaOrigin, @@ -5582,6 +5667,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Palkia, .iconSprite = gMonIcon_Palkia, .iconPalIndex = 2, + SHADOW(0, 10, SHADOW_SIZE_L) FOOTPRINT(Palkia) OVERWORLD( sPicTable_Palkia, @@ -5647,6 +5733,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_PalkiaOrigin, .iconSprite = gMonIcon_PalkiaOrigin, .iconPalIndex = 2, + SHADOW(-3, 14, SHADOW_SIZE_L) FOOTPRINT(Palkia) OVERWORLD( sPicTable_PalkiaOrigin, @@ -5720,6 +5807,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Heatran, .iconSprite = gMonIcon_Heatran, .iconPalIndex = 0, + SHADOW(2, 2, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Heatran) OVERWORLD( sPicTable_Heatran, @@ -5790,6 +5878,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Regigigas, .iconSprite = gMonIcon_Regigigas, .iconPalIndex = 0, + SHADOW(3, 10, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Regigigas) OVERWORLD( sPicTable_Regigigas, @@ -5862,6 +5951,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_GiratinaAltered, .iconSprite = gMonIcon_GiratinaAltered, .iconPalIndex = 0, + SHADOW(3, 11, SHADOW_SIZE_L) FOOTPRINT(GiratinaAltered) OVERWORLD( sPicTable_GiratinaAltered, @@ -5928,6 +6018,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_GiratinaOrigin, .iconSprite = gMonIcon_GiratinaOrigin, .iconPalIndex = 0, + SHADOW(0, 18, SHADOW_SIZE_L) FOOTPRINT(GiratinaOrigin) OVERWORLD( sPicTable_GiratinaOrigin, @@ -6002,6 +6093,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Cresselia, .iconSprite = gMonIcon_Cresselia, .iconPalIndex = 0, + SHADOW(-2, 12, SHADOW_SIZE_M) FOOTPRINT(Cresselia) OVERWORLD( sPicTable_Cresselia, @@ -6073,6 +6165,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Phione, .iconSprite = gMonIcon_Phione, .iconPalIndex = 0, + SHADOW(0, 7, SHADOW_SIZE_S) FOOTPRINT(Phione) OVERWORLD( sPicTable_Phione, @@ -6143,6 +6236,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Manaphy, .iconSprite = gMonIcon_Manaphy, .iconPalIndex = 0, + SHADOW(-5, 8, SHADOW_SIZE_S) FOOTPRINT(Manaphy) OVERWORLD( sPicTable_Manaphy, @@ -6216,6 +6310,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_Darkrai, .iconSprite = gMonIcon_Darkrai, .iconPalIndex = 0, + SHADOW(4, 12, SHADOW_SIZE_M) FOOTPRINT(Darkrai) OVERWORLD( sPicTable_Darkrai, @@ -6291,6 +6386,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_ShayminLand, .iconSprite = gMonIcon_ShayminLand, .iconPalIndex = 1, + SHADOW(1, -3, SHADOW_SIZE_S) FOOTPRINT(Shaymin) OVERWORLD( sPicTable_ShayminLand, @@ -6363,6 +6459,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .shinyPalette = gMonShinyPalette_ShayminSky, .iconSprite = gMonIcon_ShayminSky, .iconPalIndex = 1, + SHADOW(3, 7, SHADOW_SIZE_M) FOOTPRINT(Shaymin) .isMythical = TRUE, .isFrontierBanned = TRUE, @@ -6434,6 +6531,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .palette = gMonPalette_Arceus ##typeName, \ .shinyPalette = gMonShinyPalette_Arceus ##typeName, \ ARCEUS_ICON(typeName, iconPal) \ + SHADOW(-1, 15, SHADOW_SIZE_XL_BATTLE_ONLY) \ FOOTPRINT(Arceus) \ OVERWORLD( \ sPicTable_Arceus ##typeName, \ diff --git a/src/data/pokemon/species_info/gen_5_families.h b/src/data/pokemon/species_info/gen_5_families.h index 5e40f94469..9445c57a43 100644 --- a/src/data/pokemon/species_info/gen_5_families.h +++ b/src/data/pokemon/species_info/gen_5_families.h @@ -51,6 +51,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Victini, .iconSprite = gMonIcon_Victini, .iconPalIndex = 0, + SHADOW(1, 4, SHADOW_SIZE_S) FOOTPRINT(Victini) OVERWORLD( sPicTable_Victini, @@ -116,6 +117,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Snivy, .iconSprite = gMonIcon_Snivy, .iconPalIndex = 1, + SHADOW(-1, 1, SHADOW_SIZE_S) FOOTPRINT(Snivy) OVERWORLD( sPicTable_Snivy, @@ -178,6 +180,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Servine, .iconSprite = gMonIcon_Servine, .iconPalIndex = 1, + SHADOW(-2, 7, SHADOW_SIZE_S) FOOTPRINT(Servine) OVERWORLD( sPicTable_Servine, @@ -239,6 +242,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Serperior, .iconSprite = gMonIcon_Serperior, .iconPalIndex = 1, + SHADOW(2, 8, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Serperior) OVERWORLD( sPicTable_Serperior, @@ -301,6 +305,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Tepig, .iconSprite = gMonIcon_Tepig, .iconPalIndex = 0, + SHADOW(0, -2, SHADOW_SIZE_S) FOOTPRINT(Tepig) OVERWORLD( sPicTable_Tepig, @@ -363,6 +368,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Pignite, .iconSprite = gMonIcon_Pignite, .iconPalIndex = 0, + SHADOW(0, 6, SHADOW_SIZE_M) FOOTPRINT(Pignite) OVERWORLD( sPicTable_Pignite, @@ -425,6 +431,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Emboar, .iconSprite = gMonIcon_Emboar, .iconPalIndex = 0, + SHADOW(-1, 12, SHADOW_SIZE_L) FOOTPRINT(Emboar) OVERWORLD( sPicTable_Emboar, @@ -487,6 +494,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Oshawott, .iconSprite = gMonIcon_Oshawott, .iconPalIndex = 0, + SHADOW(-3, 0, SHADOW_SIZE_S) FOOTPRINT(Oshawott) OVERWORLD( sPicTable_Oshawott, @@ -549,6 +557,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Dewott, .iconSprite = gMonIcon_Dewott, .iconPalIndex = 0, + SHADOW(-2, 6, SHADOW_SIZE_S) FOOTPRINT(Dewott) OVERWORLD( sPicTable_Dewott, @@ -611,6 +620,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Samurott, .iconSprite = gMonIcon_Samurott, .iconPalIndex = 2, + SHADOW(-2, 13, SHADOW_SIZE_L) FOOTPRINT(Samurott) OVERWORLD( sPicTable_Samurott, @@ -673,6 +683,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_SamurottHisuian, .iconSprite = gMonIcon_SamurottHisuian, .iconPalIndex = 0, + SHADOW(-2, 13, SHADOW_SIZE_L) FOOTPRINT(Samurott) OVERWORLD( sPicTable_SamurottHisuian, @@ -738,6 +749,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Patrat, .iconSprite = gMonIcon_Patrat, .iconPalIndex = 2, + SHADOW(1, 2, SHADOW_SIZE_S) FOOTPRINT(Patrat) OVERWORLD( sPicTable_Patrat, @@ -800,6 +812,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Watchog, .iconSprite = gMonIcon_Watchog, .iconPalIndex = 2, + SHADOW(-4, 11, SHADOW_SIZE_S) FOOTPRINT(Watchog) OVERWORLD( sPicTable_Watchog, @@ -862,6 +875,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Lillipup, .iconSprite = gMonIcon_Lillipup, .iconPalIndex = 2, + SHADOW(2, 1, SHADOW_SIZE_S) FOOTPRINT(Lillipup) OVERWORLD( sPicTable_Lillipup, @@ -924,6 +938,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Herdier, .iconSprite = gMonIcon_Herdier, .iconPalIndex = 2, + SHADOW(3, 5, SHADOW_SIZE_M) FOOTPRINT(Herdier) OVERWORLD( sPicTable_Herdier, @@ -991,6 +1006,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Stoutland, .iconSprite = gMonIcon_Stoutland, .iconPalIndex = 2, + SHADOW(-4, 9, SHADOW_SIZE_L) FOOTPRINT(Stoutland) OVERWORLD( sPicTable_Stoutland, @@ -1053,6 +1069,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Purrloin, .iconSprite = gMonIcon_Purrloin, .iconPalIndex = 0, + SHADOW(0, 2, SHADOW_SIZE_S) FOOTPRINT(Purrloin) OVERWORLD( sPicTable_Purrloin, @@ -1115,6 +1132,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Liepard, .iconSprite = gMonIcon_Liepard, .iconPalIndex = 0, + SHADOW(-1, 11, SHADOW_SIZE_M) FOOTPRINT(Liepard) OVERWORLD( sPicTable_Liepard, @@ -1177,6 +1195,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Pansage, .iconSprite = gMonIcon_Pansage, .iconPalIndex = 1, + SHADOW(0, 3, SHADOW_SIZE_S) FOOTPRINT(Pansage) OVERWORLD( sPicTable_Pansage, @@ -1239,6 +1258,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Simisage, .iconSprite = gMonIcon_Simisage, .iconPalIndex = 1, + SHADOW(-2, 12, SHADOW_SIZE_M) FOOTPRINT(Simisage) OVERWORLD( sPicTable_Simisage, @@ -1302,6 +1322,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Pansear, .iconSprite = gMonIcon_Pansear, .iconPalIndex = 2, + SHADOW(1, 3, SHADOW_SIZE_S) FOOTPRINT(Pansear) OVERWORLD( sPicTable_Pansear, @@ -1365,6 +1386,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Simisear, .iconSprite = gMonIcon_Simisear, .iconPalIndex = 2, + SHADOW(-2, 8, SHADOW_SIZE_M) FOOTPRINT(Simisear) OVERWORLD( sPicTable_Simisear, @@ -1427,6 +1449,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Panpour, .iconSprite = gMonIcon_Panpour, .iconPalIndex = 2, + SHADOW(-3, 4, SHADOW_SIZE_S) FOOTPRINT(Panpour) OVERWORLD( sPicTable_Panpour, @@ -1489,6 +1512,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Simipour, .iconSprite = gMonIcon_Simipour, .iconPalIndex = 2, + SHADOW(-1, 8, SHADOW_SIZE_M) FOOTPRINT(Simipour) OVERWORLD( sPicTable_Simipour, @@ -1552,6 +1576,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Munna, .iconSprite = gMonIcon_Munna, .iconPalIndex = 0, + SHADOW(0, 2, SHADOW_SIZE_S) FOOTPRINT(Munna) OVERWORLD( sPicTable_Munna, @@ -1615,6 +1640,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Musharna, .iconSprite = gMonIcon_Musharna, .iconPalIndex = 0, + SHADOW(6, 10, SHADOW_SIZE_M) FOOTPRINT(Musharna) OVERWORLD( sPicTable_Musharna, @@ -1677,6 +1703,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Pidove, .iconSprite = gMonIcon_Pidove, .iconPalIndex = 0, + SHADOW(-2, 1, SHADOW_SIZE_S) FOOTPRINT(Pidove) OVERWORLD( sPicTable_Pidove, @@ -1739,6 +1766,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Tranquill, .iconSprite = gMonIcon_Tranquill, .iconPalIndex = 0, + SHADOW(0, 6, SHADOW_SIZE_S) FOOTPRINT(Tranquill) OVERWORLD( sPicTable_Tranquill, @@ -1814,6 +1842,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .iconSpriteFemale = gMonIcon_UnfezantF, .iconPalIndex = 1, .iconPalIndexFemale = 1, + SHADOW(-2, 12, SHADOW_SIZE_M) FOOTPRINT(Unfezant) OVERWORLD( sPicTable_Unfezant, @@ -1876,6 +1905,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Blitzle, .iconSprite = gMonIcon_Blitzle, .iconPalIndex = 2, + SHADOW(3, 9, SHADOW_SIZE_M) FOOTPRINT(Blitzle) OVERWORLD( sPicTable_Blitzle, @@ -1938,6 +1968,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Zebstrika, .iconSprite = gMonIcon_Zebstrika, .iconPalIndex = 2, + SHADOW(-2, 13, SHADOW_SIZE_M) FOOTPRINT(Zebstrika) OVERWORLD( sPicTable_Zebstrika, @@ -2006,6 +2037,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Roggenrola, .iconSprite = gMonIcon_Roggenrola, .iconPalIndex = 2, + SHADOW(-1, 0, SHADOW_SIZE_S) FOOTPRINT(Roggenrola) OVERWORLD( sPicTable_Roggenrola, @@ -2075,6 +2107,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Boldore, .iconSprite = gMonIcon_Boldore, .iconPalIndex = 0, + SHADOW(1, 3, SHADOW_SIZE_L) FOOTPRINT(Boldore) OVERWORLD( sPicTable_Boldore, @@ -2149,6 +2182,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Gigalith, .iconSprite = gMonIcon_Gigalith, .iconPalIndex = 0, + SHADOW(-1, 8, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Gigalith) OVERWORLD( sPicTable_Gigalith, @@ -2212,6 +2246,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Woobat, .iconSprite = gMonIcon_Woobat, .iconPalIndex = 0, + SHADOW(-2, 14, SHADOW_SIZE_S) FOOTPRINT(Woobat) OVERWORLD( sPicTable_Woobat, @@ -2275,6 +2310,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Swoobat, .iconSprite = gMonIcon_Swoobat, .iconPalIndex = 0, + SHADOW(-1, 17, SHADOW_SIZE_M) FOOTPRINT(Swoobat) OVERWORLD( sPicTable_Swoobat, @@ -2338,6 +2374,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Drilbur, .iconSprite = gMonIcon_Drilbur, .iconPalIndex = 0, + SHADOW(0, 4, SHADOW_SIZE_S) FOOTPRINT(Drilbur) OVERWORLD( sPicTable_Drilbur, @@ -2401,6 +2438,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Excadrill, .iconSprite = gMonIcon_Excadrill, .iconPalIndex = 0, + SHADOW(3, 8, SHADOW_SIZE_L) FOOTPRINT(Excadrill) OVERWORLD( sPicTable_Excadrill, @@ -2465,6 +2503,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Audino, .iconSprite = gMonIcon_Audino, .iconPalIndex = 1, + SHADOW(-1, 6, SHADOW_SIZE_S) FOOTPRINT(Audino) OVERWORLD( sPicTable_Audino, @@ -2531,6 +2570,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_AudinoMega, .iconSprite = gMonIcon_AudinoMega, .iconPalIndex = 1, + SHADOW(-1, 7, SHADOW_SIZE_M) FOOTPRINT(Audino) .isMegaEvolution = TRUE, .levelUpLearnset = sAudinoLevelUpLearnset, @@ -2590,6 +2630,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Timburr, .iconSprite = gMonIcon_Timburr, .iconPalIndex = 1, + SHADOW(-4, 2, SHADOW_SIZE_S) FOOTPRINT(Timburr) OVERWORLD( sPicTable_Timburr, @@ -2652,6 +2693,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Gurdurr, .iconSprite = gMonIcon_Gurdurr, .iconPalIndex = 1, + SHADOW(-2, 14, SHADOW_SIZE_M) FOOTPRINT(Gurdurr) OVERWORLD( sPicTable_Gurdurr, @@ -2714,6 +2756,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Conkeldurr, .iconSprite = gMonIcon_Conkeldurr, .iconPalIndex = 1, + SHADOW(0, 3, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Conkeldurr) OVERWORLD( sPicTable_Conkeldurr, @@ -2776,6 +2819,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Tympole, .iconSprite = gMonIcon_Tympole, .iconPalIndex = 2, + SHADOW(0, 0, SHADOW_SIZE_S) FOOTPRINT(Tympole) OVERWORLD( sPicTable_Tympole, @@ -2838,6 +2882,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Palpitoad, .iconSprite = gMonIcon_Palpitoad, .iconPalIndex = 2, + SHADOW(-1, 3, SHADOW_SIZE_S) FOOTPRINT(Palpitoad) OVERWORLD( sPicTable_Palpitoad, @@ -2905,6 +2950,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Seismitoad, .iconSprite = gMonIcon_Seismitoad, .iconPalIndex = 0, + SHADOW(4, 10, SHADOW_SIZE_L) FOOTPRINT(Seismitoad) OVERWORLD( sPicTable_Seismitoad, @@ -2968,6 +3014,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Throh, .iconSprite = gMonIcon_Throh, .iconPalIndex = 0, + SHADOW(3, 4, SHADOW_SIZE_M) FOOTPRINT(Throh) OVERWORLD( sPicTable_Throh, @@ -3032,6 +3079,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Sawk, .iconSprite = gMonIcon_Sawk, .iconPalIndex = 0, + SHADOW(-1, 6, SHADOW_SIZE_M) FOOTPRINT(Sawk) OVERWORLD( sPicTable_Sawk, @@ -3095,6 +3143,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Sewaddle, .iconSprite = gMonIcon_Sewaddle, .iconPalIndex = 1, + SHADOW(1, 0, SHADOW_SIZE_S) FOOTPRINT(Sewaddle) OVERWORLD( sPicTable_Sewaddle, @@ -3158,6 +3207,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Swadloon, .iconSprite = gMonIcon_Swadloon, .iconPalIndex = 1, + SHADOW(0, 1, SHADOW_SIZE_L) FOOTPRINT(Swadloon) OVERWORLD( sPicTable_Swadloon, @@ -3226,6 +3276,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Leavanny, .iconSprite = gMonIcon_Leavanny, .iconPalIndex = 1, + SHADOW(0, 14, SHADOW_SIZE_S) FOOTPRINT(Leavanny) OVERWORLD( sPicTable_Leavanny, @@ -3293,6 +3344,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Venipede, .iconSprite = gMonIcon_Venipede, .iconPalIndex = 1, + SHADOW(-2, -3, SHADOW_SIZE_M) FOOTPRINT(Venipede) OVERWORLD( sPicTable_Venipede, @@ -3360,6 +3412,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Whirlipede, .iconSprite = gMonIcon_Whirlipede, .iconPalIndex = 2, + SHADOW(0, 1, SHADOW_SIZE_S) FOOTPRINT(Whirlipede) OVERWORLD( sPicTable_Whirlipede, @@ -3432,6 +3485,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Scolipede, .iconSprite = gMonIcon_Scolipede, .iconPalIndex = 2, + SHADOW(1, 12, SHADOW_SIZE_L) FOOTPRINT(Scolipede) OVERWORLD( sPicTable_Scolipede, @@ -3501,6 +3555,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Cottonee, .iconSprite = gMonIcon_Cottonee, .iconPalIndex = 1, + SHADOW(-1, -5, SHADOW_SIZE_M) FOOTPRINT(Cottonee) OVERWORLD( sPicTable_Cottonee, @@ -3564,6 +3619,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Whimsicott, .iconSprite = gMonIcon_Whimsicott, .iconPalIndex = 1, + SHADOW(-1, 8, SHADOW_SIZE_M) FOOTPRINT(Whimsicott) OVERWORLD( sPicTable_Whimsicott, @@ -3628,6 +3684,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Petilil, .iconSprite = gMonIcon_Petilil, .iconPalIndex = 1, + SHADOW(-2, 6, SHADOW_SIZE_S) FOOTPRINT(Petilil) OVERWORLD( sPicTable_Petilil, @@ -3693,6 +3750,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Lilligant, .iconSprite = gMonIcon_Lilligant, .iconPalIndex = 1, + SHADOW(-2, 13, SHADOW_SIZE_M) FOOTPRINT(Lilligant) OVERWORLD( sPicTable_Lilligant, @@ -3758,6 +3816,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_LilligantHisuian, .iconSprite = gMonIcon_LilligantHisuian, .iconPalIndex = 1, + SHADOW(-3, 13, SHADOW_SIZE_S) FOOTPRINT(Lilligant) OVERWORLD( sPicTable_LilligantHisuian, @@ -3825,6 +3884,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_BasculinRedStriped, .iconSprite = gMonIcon_BasculinRedStriped, .iconPalIndex = 1, + SHADOW(0, 4, SHADOW_SIZE_S) FOOTPRINT(Basculin) OVERWORLD( sPicTable_BasculinRedStriped, @@ -3889,6 +3949,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_BasculinBlueStriped, .iconSprite = gMonIcon_BasculinBlueStriped, .iconPalIndex = 0, + SHADOW(-1, 1, SHADOW_SIZE_S) FOOTPRINT(Basculin) OVERWORLD( sPicTable_BasculinBlueStriped, @@ -3954,6 +4015,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_BasculinWhiteStriped, .iconSprite = gMonIcon_BasculinWhiteStriped, .iconPalIndex = 0, + SHADOW(-2, 5, SHADOW_SIZE_S) FOOTPRINT(Basculin) OVERWORLD( sPicTable_BasculinWhiteStriped, @@ -4018,6 +4080,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_BasculegionMale, .iconSprite = gMonIcon_BasculegionMale, .iconPalIndex = 1, + SHADOW(0, 16, SHADOW_SIZE_M) FOOTPRINT(Basculegion) OVERWORLD( sPicTable_BasculegionMale, @@ -4079,6 +4142,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_BasculegionFemale, .iconSprite = gMonIcon_BasculegionFemale, .iconPalIndex = 0, + SHADOW(0, 16, SHADOW_SIZE_M) FOOTPRINT(Basculegion) OVERWORLD( sPicTable_BasculegionFemale, @@ -4144,6 +4208,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Sandile, .iconSprite = gMonIcon_Sandile, .iconPalIndex = 1, + SHADOW(4, -5, SHADOW_SIZE_M) FOOTPRINT(Sandile) OVERWORLD( sPicTable_Sandile, @@ -4207,6 +4272,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Krokorok, .iconSprite = gMonIcon_Krokorok, .iconPalIndex = 1, + SHADOW(-2, 8, SHADOW_SIZE_M) FOOTPRINT(Krokorok) OVERWORLD( sPicTable_Krokorok, @@ -4275,6 +4341,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Krookodile, .iconSprite = gMonIcon_Krookodile, .iconPalIndex = 0, + SHADOW(3, 12, SHADOW_SIZE_L) FOOTPRINT(Krookodile) OVERWORLD( sPicTable_Krookodile, @@ -4337,6 +4404,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Darumaka, .iconSprite = gMonIcon_Darumaka, .iconPalIndex = 0, + SHADOW(-3, 1, SHADOW_SIZE_S) FOOTPRINT(Darumaka) OVERWORLD( sPicTable_Darumaka, @@ -4400,6 +4468,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_DarmanitanStandardMode, .iconSprite = gMonIcon_DarmanitanStandardMode, .iconPalIndex = 0, + SHADOW(3, 5, SHADOW_SIZE_L) FOOTPRINT(Darmanitan) OVERWORLD( sPicTable_DarmanitanStandardMode, @@ -4461,6 +4530,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_DarmanitanZenMode, .iconSprite = gMonIcon_DarmanitanZenMode, .iconPalIndex = 0, + SHADOW(-1, -1, SHADOW_SIZE_S) FOOTPRINT(Darmanitan) .levelUpLearnset = sDarmanitanLevelUpLearnset, .teachableLearnset = sDarmanitanTeachableLearnset, @@ -4516,6 +4586,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_DarumakaGalarian, .iconSprite = gMonIcon_DarumakaGalarian, .iconPalIndex = 0, + SHADOW(-3, -1, SHADOW_SIZE_S) FOOTPRINT(Darumaka) OVERWORLD( sPicTable_DarumakaGalarian, @@ -4580,6 +4651,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_DarmanitanGalarianStandardMode, .iconSprite = gMonIcon_DarmanitanGalarianStandardMode, .iconPalIndex = 0, + SHADOW(4, 8, SHADOW_SIZE_L) FOOTPRINT(Darmanitan) OVERWORLD( sPicTable_DarmanitanGalarianStandardMode, @@ -4643,6 +4715,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_DarmanitanGalarianZenMode, .iconSprite = gMonIcon_DarmanitanGalarianZenMode, .iconPalIndex = 0, + SHADOW(0, 11, SHADOW_SIZE_S) FOOTPRINT(Darmanitan) .isGalarianForm = TRUE, .levelUpLearnset = sDarmanitanGalarianLevelUpLearnset, @@ -4702,6 +4775,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Maractus, .iconSprite = gMonIcon_Maractus, .iconPalIndex = 1, + SHADOW(-1, 13, SHADOW_SIZE_S) FOOTPRINT(Maractus) OVERWORLD( sPicTable_Maractus, @@ -4766,6 +4840,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Dwebble, .iconSprite = gMonIcon_Dwebble, .iconPalIndex = 0, + SHADOW(-1, -2, SHADOW_SIZE_S) FOOTPRINT(Dwebble) OVERWORLD( sPicTable_Dwebble, @@ -4829,6 +4904,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Crustle, .iconSprite = gMonIcon_Crustle, .iconPalIndex = 2, + SHADOW(1, 8, SHADOW_SIZE_L) FOOTPRINT(Crustle) OVERWORLD( sPicTable_Crustle, @@ -4892,6 +4968,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Scraggy, .iconSprite = gMonIcon_Scraggy, .iconPalIndex = 2, + SHADOW(-4, 2, SHADOW_SIZE_S) FOOTPRINT(Scraggy) OVERWORLD( sPicTable_Scraggy, @@ -4956,6 +5033,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Scrafty, .iconSprite = gMonIcon_Scrafty, .iconPalIndex = 0, + SHADOW(-2, 9, SHADOW_SIZE_M) FOOTPRINT(Scrafty) OVERWORLD( sPicTable_Scrafty, @@ -5019,6 +5097,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Sigilyph, .iconSprite = gMonIcon_Sigilyph, .iconPalIndex = 0, + SHADOW(3, 18, SHADOW_SIZE_S) FOOTPRINT(Sigilyph) OVERWORLD( sPicTable_Sigilyph, @@ -5084,6 +5163,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Yamask, .iconSprite = gMonIcon_Yamask, .iconPalIndex = 0, + SHADOW(-1, 6, SHADOW_SIZE_S) FOOTPRINT(Yamask) OVERWORLD( sPicTable_Yamask, @@ -5148,6 +5228,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Cofagrigus, .iconSprite = gMonIcon_Cofagrigus, .iconPalIndex = 0, + SHADOW(6, 12, SHADOW_SIZE_M) FOOTPRINT(Cofagrigus) OVERWORLD( sPicTable_Cofagrigus, @@ -5210,6 +5291,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_YamaskGalarian, .iconSprite = gMonIcon_YamaskGalarian, .iconPalIndex = 2, + SHADOW(0, 2, SHADOW_SIZE_S) FOOTPRINT(Yamask) OVERWORLD( sPicTable_YamaskGalarian, @@ -5274,6 +5356,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Runerigus, .iconSprite = gMonIcon_Runerigus, .iconPalIndex = 2, + SHADOW(14, 14, SHADOW_SIZE_M) FOOTPRINT(Runerigus) OVERWORLD( sPicTable_Runerigus, @@ -5337,6 +5420,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Tirtouga, .iconSprite = gMonIcon_Tirtouga, .iconPalIndex = 2, + SHADOW(0, -3, SHADOW_SIZE_M) FOOTPRINT(Tirtouga) OVERWORLD( sPicTable_Tirtouga, @@ -5399,6 +5483,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Carracosta, .iconSprite = gMonIcon_Carracosta, .iconPalIndex = 2, + SHADOW(4, 8, SHADOW_SIZE_L) FOOTPRINT(Carracosta) OVERWORLD( sPicTable_Carracosta, @@ -5461,6 +5546,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Archen, .iconSprite = gMonIcon_Archen, .iconPalIndex = 0, + SHADOW(-3, -2, SHADOW_SIZE_S) FOOTPRINT(Archen) OVERWORLD( sPicTable_Archen, @@ -5524,6 +5610,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Archeops, .iconSprite = gMonIcon_Archeops, .iconPalIndex = 0, + SHADOW(0, 18, SHADOW_SIZE_M) FOOTPRINT(Archeops) OVERWORLD( sPicTable_Archeops, @@ -5587,6 +5674,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Trubbish, .iconSprite = gMonIcon_Trubbish, .iconPalIndex = 1, + SHADOW(-2, -1, SHADOW_SIZE_S) FOOTPRINT(Trubbish) OVERWORLD( sPicTable_Trubbish, @@ -5652,6 +5740,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Garbodor, .iconSprite = gMonIcon_Garbodor, .iconPalIndex = 1, + SHADOW(3, 9, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Garbodor) OVERWORLD( sPicTable_Garbodor, @@ -5718,6 +5807,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_GarbodorGigantamax, .iconSprite = gMonIcon_GarbodorGigantamax, .iconPalIndex = 0, + NO_SHADOW FOOTPRINT(Garbodor) .isGigantamax = TRUE, .levelUpLearnset = sGarbodorLevelUpLearnset, @@ -5776,6 +5866,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Zorua, .iconSprite = gMonIcon_Zorua, .iconPalIndex = 0, + SHADOW(0, 2, SHADOW_SIZE_S) FOOTPRINT(Zorua) OVERWORLD( sPicTable_Zorua, @@ -5839,6 +5930,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Zoroark, .iconSprite = gMonIcon_Zoroark, .iconPalIndex = 0, + SHADOW(1, 8, SHADOW_SIZE_L) FOOTPRINT(Zoroark) OVERWORLD( sPicTable_Zoroark, @@ -5901,6 +5993,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_ZoruaHisuian, .iconSprite = gMonIcon_ZoruaHisuian, .iconPalIndex = 0, + SHADOW(2, 12, SHADOW_SIZE_S) FOOTPRINT(Zorua) OVERWORLD( sPicTable_ZoruaHisuian, @@ -5964,6 +6057,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_ZoroarkHisuian, .iconSprite = gMonIcon_ZoroarkHisuian, .iconPalIndex = 0, + SHADOW(11, 13, SHADOW_SIZE_L) FOOTPRINT(Zoroark) OVERWORLD( sPicTable_ZoroarkHisuian, @@ -6029,6 +6123,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Minccino, .iconSprite = gMonIcon_Minccino, .iconPalIndex = 0, + SHADOW(-3, 3, SHADOW_SIZE_S) FOOTPRINT(Minccino) OVERWORLD( sPicTable_Minccino, @@ -6092,6 +6187,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Cinccino, .iconSprite = gMonIcon_Cinccino, .iconPalIndex = 0, + SHADOW(0, 6, SHADOW_SIZE_M) FOOTPRINT(Cinccino) OVERWORLD( sPicTable_Cinccino, @@ -6158,6 +6254,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Gothita, .iconSprite = gMonIcon_Gothita, .iconPalIndex = 2, + SHADOW(-3, 2, SHADOW_SIZE_S) FOOTPRINT(Gothita) OVERWORLD( sPicTable_Gothita, @@ -6224,6 +6321,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Gothorita, .iconSprite = gMonIcon_Gothorita, .iconPalIndex = 2, + SHADOW(-2, 7, SHADOW_SIZE_S) FOOTPRINT(Gothorita) OVERWORLD( sPicTable_Gothorita, @@ -6289,6 +6387,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Gothitelle, .iconSprite = gMonIcon_Gothitelle, .iconPalIndex = 2, + SHADOW(-1, 13, SHADOW_SIZE_M) FOOTPRINT(Gothitelle) OVERWORLD( sPicTable_Gothitelle, @@ -6353,6 +6452,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Solosis, .iconSprite = gMonIcon_Solosis, .iconPalIndex = 1, + SHADOW(-1, 8, SHADOW_SIZE_S) FOOTPRINT(Solosis) OVERWORLD( sPicTable_Solosis, @@ -6416,6 +6516,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Duosion, .iconSprite = gMonIcon_Duosion, .iconPalIndex = 1, + SHADOW(-1, 6, SHADOW_SIZE_M) FOOTPRINT(Duosion) OVERWORLD( sPicTable_Duosion, @@ -6478,6 +6579,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Reuniclus, .iconSprite = gMonIcon_Reuniclus, .iconPalIndex = 1, + SHADOW(0, 8, SHADOW_SIZE_M) FOOTPRINT(Reuniclus) OVERWORLD( sPicTable_Reuniclus, @@ -6540,6 +6642,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Ducklett, .iconSprite = gMonIcon_Ducklett, .iconPalIndex = 0, + SHADOW(-1, 2, SHADOW_SIZE_S) FOOTPRINT(Ducklett) OVERWORLD( sPicTable_Ducklett, @@ -6602,6 +6705,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Swanna, .iconSprite = gMonIcon_Swanna, .iconPalIndex = 2, + SHADOW(0, 12, SHADOW_SIZE_M) FOOTPRINT(Swanna) OVERWORLD( sPicTable_Swanna, @@ -6669,6 +6773,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Vanillite, .iconSprite = gMonIcon_Vanillite, .iconPalIndex = 0, + SHADOW(-1, 0, SHADOW_SIZE_S) FOOTPRINT(Vanillite) OVERWORLD( sPicTable_Vanillite, @@ -6736,6 +6841,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Vanillish, .iconSprite = gMonIcon_Vanillish, .iconPalIndex = 2, + SHADOW(-3, 9, SHADOW_SIZE_S) FOOTPRINT(Vanillish) OVERWORLD( sPicTable_Vanillish, @@ -6802,6 +6908,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Vanilluxe, .iconSprite = gMonIcon_Vanilluxe, .iconPalIndex = 2, + SHADOW(-2, 10, SHADOW_SIZE_M) FOOTPRINT(Vanilluxe) OVERWORLD( sPicTable_Vanilluxe, @@ -6864,6 +6971,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_DeerlingSpring, .iconSprite = gMonIcon_DeerlingSpring, .iconPalIndex = 1, + SHADOW(1, 2, SHADOW_SIZE_S) FOOTPRINT(Deerling) OVERWORLD( sPicTable_DeerlingSpring, @@ -6927,6 +7035,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_DeerlingSummer, .iconSprite = gMonIcon_DeerlingSummer, .iconPalIndex = 1, + SHADOW(1, 2, SHADOW_SIZE_S) FOOTPRINT(Deerling) OVERWORLD( sPicTable_DeerlingSummer, @@ -6990,6 +7099,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_DeerlingAutumn, .iconSprite = gMonIcon_DeerlingAutumn, .iconPalIndex = 0, + SHADOW(1, 2, SHADOW_SIZE_S) FOOTPRINT(Deerling) OVERWORLD( sPicTable_DeerlingAutumn, @@ -7053,6 +7163,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_DeerlingWinter, .iconSprite = gMonIcon_DeerlingWinter, .iconPalIndex = 2, + SHADOW(1, 2, SHADOW_SIZE_S) FOOTPRINT(Deerling) OVERWORLD( sPicTable_DeerlingWinter, @@ -7116,6 +7227,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_SawsbuckSpring, .iconSprite = gMonIcon_SawsbuckSpring, .iconPalIndex = 1, + SHADOW(7, 13, SHADOW_SIZE_M) FOOTPRINT(Sawsbuck) OVERWORLD( sPicTable_SawsbuckSpring, @@ -7177,6 +7289,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_SawsbuckSummer, .iconSprite = gMonIcon_SawsbuckSummer, .iconPalIndex = 1, + SHADOW(7, 13, SHADOW_SIZE_M) FOOTPRINT(Sawsbuck) OVERWORLD( sPicTable_SawsbuckSummer, @@ -7238,6 +7351,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_SawsbuckAutumn, .iconSprite = gMonIcon_SawsbuckAutumn, .iconPalIndex = 1, + SHADOW(7, 13, SHADOW_SIZE_M) FOOTPRINT(Sawsbuck) OVERWORLD( sPicTable_SawsbuckAutumn, @@ -7299,6 +7413,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_SawsbuckWinter, .iconSprite = gMonIcon_SawsbuckWinter, .iconPalIndex = 1, + SHADOW(7, 13, SHADOW_SIZE_M) FOOTPRINT(Sawsbuck) OVERWORLD( sPicTable_SawsbuckWinter, @@ -7364,6 +7479,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Emolga, .iconSprite = gMonIcon_Emolga, .iconPalIndex = 2, + SHADOW(0, 13, SHADOW_SIZE_S) FOOTPRINT(Emolga) OVERWORLD( sPicTable_Emolga, @@ -7427,6 +7543,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Karrablast, .iconSprite = gMonIcon_Karrablast, .iconPalIndex = 0, + SHADOW(-1, 0, SHADOW_SIZE_S) FOOTPRINT(Karrablast) OVERWORLD( sPicTable_Karrablast, @@ -7489,6 +7606,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Escavalier, .iconSprite = gMonIcon_Escavalier, .iconPalIndex = 0, + SHADOW(1, 11, SHADOW_SIZE_M) FOOTPRINT(Escavalier) OVERWORLD( sPicTable_Escavalier, @@ -7553,6 +7671,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Foongus, .iconSprite = gMonIcon_Foongus, .iconPalIndex = 0, + SHADOW(-1, -3, SHADOW_SIZE_S) FOOTPRINT(Foongus) OVERWORLD( sPicTable_Foongus, @@ -7618,6 +7737,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Amoonguss, .iconSprite = gMonIcon_Amoonguss, .iconPalIndex = 1, + SHADOW(1, 5, SHADOW_SIZE_M) FOOTPRINT(Amoonguss) OVERWORLD( sPicTable_Amoonguss, @@ -7688,6 +7808,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .iconSpriteFemale = gMonIcon_FrillishF, .iconPalIndex = 0, .iconPalIndexFemale = 1, + SHADOW(-1, 9, SHADOW_SIZE_S) FOOTPRINT(Frillish) OVERWORLD( sPicTable_Frillish, @@ -7758,6 +7879,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .iconSpriteFemale = gMonIcon_JellicentF, .iconPalIndex = 0, .iconPalIndexFemale = 1, + SHADOW(-1, 11, SHADOW_SIZE_M) FOOTPRINT(Jellicent) OVERWORLD( sPicTable_Jellicent, @@ -7820,6 +7942,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Alomomola, .iconSprite = gMonIcon_Alomomola, .iconPalIndex = 0, + SHADOW(0, 15, SHADOW_SIZE_S) FOOTPRINT(Alomomola) OVERWORLD( sPicTable_Alomomola, @@ -7883,6 +8006,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Joltik, .iconSprite = gMonIcon_Joltik, .iconPalIndex = 0, + SHADOW(0, -5, SHADOW_SIZE_S) FOOTPRINT(Joltik) OVERWORLD( sPicTable_Joltik, @@ -7945,6 +8069,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Galvantula, .iconSprite = gMonIcon_Galvantula, .iconPalIndex = 2, + SHADOW(0, -2, SHADOW_SIZE_L) FOOTPRINT(Galvantula) OVERWORLD( sPicTable_Galvantula, @@ -8008,6 +8133,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Ferroseed, .iconSprite = gMonIcon_Ferroseed, .iconPalIndex = 1, + SHADOW(0, 1, SHADOW_SIZE_S) FOOTPRINT(Ferroseed) OVERWORLD( sPicTable_Ferroseed, @@ -8076,6 +8202,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Ferrothorn, .iconSprite = gMonIcon_Ferrothorn, .iconPalIndex = 1, + SHADOW(-2, 17, SHADOW_SIZE_M) FOOTPRINT(Ferrothorn) OVERWORLD( sPicTable_Ferrothorn, @@ -8140,6 +8267,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Klink, .iconSprite = gMonIcon_Klink, .iconPalIndex = 0, + SHADOW(-2, 11, SHADOW_SIZE_S) FOOTPRINT(Klink) OVERWORLD( sPicTable_Klink, @@ -8203,6 +8331,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Klang, .iconSprite = gMonIcon_Klang, .iconPalIndex = 0, + SHADOW(-1, 12, SHADOW_SIZE_M) FOOTPRINT(Klang) OVERWORLD( sPicTable_Klang, @@ -8266,6 +8395,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Klinklang, .iconSprite = gMonIcon_Klinklang, .iconPalIndex = 0, + SHADOW(0, 13, SHADOW_SIZE_L) FOOTPRINT(Klinklang) OVERWORLD( sPicTable_Klinklang, @@ -8329,6 +8459,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Tynamo, .iconSprite = gMonIcon_Tynamo, .iconPalIndex = 0, + SHADOW(-3, 5, SHADOW_SIZE_S) FOOTPRINT(Tynamo) OVERWORLD( sPicTable_Tynamo, @@ -8392,6 +8523,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Eelektrik, .iconSprite = gMonIcon_Eelektrik, .iconPalIndex = 0, + SHADOW(-1, 13, SHADOW_SIZE_S) FOOTPRINT(Eelektrik) OVERWORLD( sPicTable_Eelektrik, @@ -8454,6 +8586,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Eelektross, .iconSprite = gMonIcon_Eelektross, .iconPalIndex = 0, + SHADOW(3, 13, SHADOW_SIZE_M) FOOTPRINT(Eelektross) OVERWORLD( sPicTable_Eelektross, @@ -8516,6 +8649,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Elgyem, .iconSprite = gMonIcon_Elgyem, .iconPalIndex = 0, + SHADOW(1, 2, SHADOW_SIZE_S) FOOTPRINT(Elgyem) OVERWORLD( sPicTable_Elgyem, @@ -8578,6 +8712,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Beheeyem, .iconSprite = gMonIcon_Beheeyem, .iconPalIndex = 2, + SHADOW(0, 10, SHADOW_SIZE_M) FOOTPRINT(Beheeyem) OVERWORLD( sPicTable_Beheeyem, @@ -8645,6 +8780,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Litwick, .iconSprite = gMonIcon_Litwick, .iconPalIndex = 2, + SHADOW(1, -1, SHADOW_SIZE_S) FOOTPRINT(Litwick) OVERWORLD( sPicTable_Litwick, @@ -8712,6 +8848,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Lampent, .iconSprite = gMonIcon_Lampent, .iconPalIndex = 2, + SHADOW(-1, 9, SHADOW_SIZE_S) FOOTPRINT(Lampent) OVERWORLD( sPicTable_Lampent, @@ -8778,6 +8915,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Chandelure, .iconSprite = gMonIcon_Chandelure, .iconPalIndex = 2, + SHADOW(1, 13, SHADOW_SIZE_S) FOOTPRINT(Chandelure) OVERWORLD( sPicTable_Chandelure, @@ -8840,6 +8978,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Axew, .iconSprite = gMonIcon_Axew, .iconPalIndex = 1, + SHADOW(2, 1, SHADOW_SIZE_S) FOOTPRINT(Axew) OVERWORLD( sPicTable_Axew, @@ -8902,6 +9041,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Fraxure, .iconSprite = gMonIcon_Fraxure, .iconPalIndex = 1, + SHADOW(-2, 8, SHADOW_SIZE_L) FOOTPRINT(Fraxure) OVERWORLD( sPicTable_Fraxure, @@ -8963,6 +9103,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Haxorus, .iconSprite = gMonIcon_Haxorus, .iconPalIndex = 2, + SHADOW(2, 9, SHADOW_SIZE_L) FOOTPRINT(Haxorus) OVERWORLD( sPicTable_Haxorus, @@ -9029,6 +9170,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Cubchoo, .iconSprite = gMonIcon_Cubchoo, .iconPalIndex = 0, + SHADOW(-2, 0, SHADOW_SIZE_S) FOOTPRINT(Cubchoo) OVERWORLD( sPicTable_Cubchoo, @@ -9095,6 +9237,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Beartic, .iconSprite = gMonIcon_Beartic, .iconPalIndex = 0, + SHADOW(1, 13, SHADOW_SIZE_L) FOOTPRINT(Beartic) OVERWORLD( sPicTable_Beartic, @@ -9159,6 +9302,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Cryogonal, .iconSprite = gMonIcon_Cryogonal, .iconPalIndex = 0, + SHADOW(0, 14, SHADOW_SIZE_M) FOOTPRINT(Cryogonal) OVERWORLD( sPicTable_Cryogonal, @@ -9221,6 +9365,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Shelmet, .iconSprite = gMonIcon_Shelmet, .iconPalIndex = 1, + SHADOW(0, -1, SHADOW_SIZE_S) FOOTPRINT(Shelmet) OVERWORLD( sPicTable_Shelmet, @@ -9283,6 +9428,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Accelgor, .iconSprite = gMonIcon_Accelgor, .iconPalIndex = 1, + SHADOW(-14, 8, SHADOW_SIZE_S) FOOTPRINT(Accelgor) OVERWORLD( sPicTable_Accelgor, @@ -9346,6 +9492,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Stunfisk, .iconSprite = gMonIcon_Stunfisk, .iconPalIndex = 2, + SHADOW(0, -1, SHADOW_SIZE_M) FOOTPRINT(Stunfisk) OVERWORLD( sPicTable_Stunfisk, @@ -9409,6 +9556,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_StunfiskGalarian, .iconSprite = gMonIcon_StunfiskGalarian, .iconPalIndex = 1, + SHADOW(0, -1, SHADOW_SIZE_M) FOOTPRINT(Stunfisk) OVERWORLD( sPicTable_StunfiskGalarian, @@ -9475,6 +9623,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Mienfoo, .iconSprite = gMonIcon_Mienfoo, .iconPalIndex = 1, + SHADOW(1, 2, SHADOW_SIZE_S) FOOTPRINT(Mienfoo) OVERWORLD( sPicTable_Mienfoo, @@ -9537,6 +9686,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Mienshao, .iconSprite = gMonIcon_Mienshao, .iconPalIndex = 2, + SHADOW(-1, 8, SHADOW_SIZE_M) FOOTPRINT(Mienshao) OVERWORLD( sPicTable_Mienshao, @@ -9600,6 +9750,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Druddigon, .iconSprite = gMonIcon_Druddigon, .iconPalIndex = 0, + SHADOW(3, 9, SHADOW_SIZE_M) FOOTPRINT(Druddigon) OVERWORLD( sPicTable_Druddigon, @@ -9665,6 +9816,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Golett, .iconSprite = gMonIcon_Golett, .iconPalIndex = 0, + SHADOW(-1, 7, SHADOW_SIZE_M) FOOTPRINT(Golett) OVERWORLD( sPicTable_Golett, @@ -9728,6 +9880,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Golurk, .iconSprite = gMonIcon_Golurk, .iconPalIndex = 0, + SHADOW(-1, 14, SHADOW_SIZE_L) FOOTPRINT(Golurk) OVERWORLD( sPicTable_Golurk, @@ -9790,6 +9943,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Pawniard, .iconSprite = gMonIcon_Pawniard, .iconPalIndex = 0, + SHADOW(4, 4, SHADOW_SIZE_S) FOOTPRINT(Pawniard) OVERWORLD( sPicTable_Pawniard, @@ -9853,6 +10007,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Bisharp, .iconSprite = gMonIcon_Bisharp, .iconPalIndex = 0, + SHADOW(-2, 14, SHADOW_SIZE_M) FOOTPRINT(Bisharp) OVERWORLD( sPicTable_Bisharp, @@ -9915,6 +10070,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Kingambit, .iconSprite = gMonIcon_Kingambit, .iconPalIndex = 0, + SHADOW(-2, 14, SHADOW_SIZE_M) FOOTPRINT(Kingambit) OVERWORLD( sPicTable_Kingambit, @@ -9978,6 +10134,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Bouffalant, .iconSprite = gMonIcon_Bouffalant, .iconPalIndex = 2, + SHADOW(8, 7, SHADOW_SIZE_M) FOOTPRINT(Bouffalant) OVERWORLD( sPicTable_Bouffalant, @@ -10041,6 +10198,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Rufflet, .iconSprite = gMonIcon_Rufflet, .iconPalIndex = 2, + SHADOW(-2, 2, SHADOW_SIZE_S) FOOTPRINT(Rufflet) OVERWORLD( sPicTable_Rufflet, @@ -10104,6 +10262,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Braviary, .iconSprite = gMonIcon_Braviary, .iconPalIndex = 0, + SHADOW(-1, 16, SHADOW_SIZE_M) FOOTPRINT(Braviary) OVERWORLD( sPicTable_Braviary, @@ -10166,6 +10325,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_BraviaryHisuian, .iconSprite = gMonIcon_BraviaryHisuian, .iconPalIndex = 2, + SHADOW(0, 14, SHADOW_SIZE_M) FOOTPRINT(Braviary) OVERWORLD( sPicTable_BraviaryHisuian, @@ -10231,6 +10391,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Vullaby, .iconSprite = gMonIcon_Vullaby, .iconPalIndex = 0, + SHADOW(-1, 9, SHADOW_SIZE_M) FOOTPRINT(Vullaby) OVERWORLD( sPicTable_Vullaby, @@ -10293,6 +10454,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Mandibuzz, .iconSprite = gMonIcon_Mandibuzz, .iconPalIndex = 1, + SHADOW(1, 12, SHADOW_SIZE_M) FOOTPRINT(Mandibuzz) OVERWORLD( sPicTable_Mandibuzz, @@ -10355,6 +10517,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Heatmor, .iconSprite = gMonIcon_Heatmor, .iconPalIndex = 2, + SHADOW(5, 7, SHADOW_SIZE_L) FOOTPRINT(Heatmor) OVERWORLD( sPicTable_Heatmor, @@ -10418,6 +10581,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Durant, .iconSprite = gMonIcon_Durant, .iconPalIndex = 0, + SHADOW(0, -3, SHADOW_SIZE_L) FOOTPRINT(Durant) OVERWORLD( sPicTable_Durant, @@ -10481,6 +10645,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Deino, .iconSprite = gMonIcon_Deino, .iconPalIndex = 2, + SHADOW(1, 3, SHADOW_SIZE_S) FOOTPRINT(Deino) OVERWORLD( sPicTable_Deino, @@ -10543,6 +10708,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Zweilous, .iconSprite = gMonIcon_Zweilous, .iconPalIndex = 2, + SHADOW(1, 6, SHADOW_SIZE_L) FOOTPRINT(Zweilous) OVERWORLD( sPicTable_Zweilous, @@ -10605,6 +10771,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Hydreigon, .iconSprite = gMonIcon_Hydreigon, .iconPalIndex = 2, + SHADOW(1, 16, SHADOW_SIZE_M) FOOTPRINT(Hydreigon) OVERWORLD( sPicTable_Hydreigon, @@ -10667,6 +10834,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Larvesta, .iconSprite = gMonIcon_Larvesta, .iconPalIndex = 0, + SHADOW(0, 0, SHADOW_SIZE_S) FOOTPRINT(Larvesta) OVERWORLD( sPicTable_Larvesta, @@ -10732,6 +10900,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Volcarona, .iconSprite = gMonIcon_Volcarona, .iconPalIndex = 0, + SHADOW(-4, 14, SHADOW_SIZE_M) FOOTPRINT(Volcarona) OVERWORLD( sPicTable_Volcarona, @@ -10794,6 +10963,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Cobalion, .iconSprite = gMonIcon_Cobalion, .iconPalIndex = 0, + SHADOW(2, 14, SHADOW_SIZE_M) FOOTPRINT(Cobalion) OVERWORLD( sPicTable_Cobalion, @@ -10858,6 +11028,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Terrakion, .iconSprite = gMonIcon_Terrakion, .iconPalIndex = 2, + SHADOW(3, 6, SHADOW_SIZE_L) FOOTPRINT(Terrakion) OVERWORLD( sPicTable_Terrakion, @@ -10922,6 +11093,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Virizion, .iconSprite = gMonIcon_Virizion, .iconPalIndex = 1, + SHADOW(1, 12, SHADOW_SIZE_M) FOOTPRINT(Virizion) OVERWORLD( sPicTable_Virizion, @@ -10987,6 +11159,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_TornadusIncarnate, .iconSprite = gMonIcon_TornadusIncarnate, .iconPalIndex = 1, + SHADOW(2, 17, SHADOW_SIZE_M) FOOTPRINT(Tornadus) OVERWORLD( sPicTable_TornadusIncarnate, @@ -11051,6 +11224,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_TornadusTherian, .iconSprite = gMonIcon_TornadusTherian, .iconPalIndex = 1, + SHADOW(-5, 12, SHADOW_SIZE_L) FOOTPRINT(Tornadus) .isLegendary = TRUE, .perfectIVCount = LEGENDARY_PERFECT_IV_COUNT, @@ -11110,6 +11284,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_ThundurusIncarnate, .iconSprite = gMonIcon_ThundurusIncarnate, .iconPalIndex = 0, + SHADOW(2, 17, SHADOW_SIZE_M) FOOTPRINT(Thundurus) OVERWORLD( sPicTable_ThundurusIncarnate, @@ -11175,6 +11350,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_ThundurusTherian, .iconSprite = gMonIcon_ThundurusTherian, .iconPalIndex = 0, + SHADOW(5, 16, SHADOW_SIZE_M) FOOTPRINT(Thundurus) .isLegendary = TRUE, .perfectIVCount = LEGENDARY_PERFECT_IV_COUNT, @@ -11233,6 +11409,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Reshiram, .iconSprite = gMonIcon_Reshiram, .iconPalIndex = 0, + SHADOW(-2, 12, SHADOW_SIZE_L) FOOTPRINT(Reshiram) OVERWORLD( sPicTable_Reshiram, @@ -11298,6 +11475,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Zekrom, .iconSprite = gMonIcon_Zekrom, .iconPalIndex = 2, + SHADOW(2, 14, SHADOW_SIZE_L) FOOTPRINT(Zekrom) OVERWORLD( sPicTable_Zekrom, @@ -11364,6 +11542,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_LandorusIncarnate, .iconSprite = gMonIcon_LandorusIncarnate, .iconPalIndex = 0, + SHADOW(2, 17, SHADOW_SIZE_M) FOOTPRINT(Landorus) OVERWORLD( sPicTable_LandorusIncarnate, @@ -11428,6 +11607,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_LandorusTherian, .iconSprite = gMonIcon_LandorusTherian, .iconPalIndex = 0, + SHADOW(1, 11, SHADOW_SIZE_L) FOOTPRINT(Landorus) .isLegendary = TRUE, .perfectIVCount = LEGENDARY_PERFECT_IV_COUNT, @@ -11489,6 +11669,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_Kyurem, .iconSprite = gMonIcon_Kyurem, .iconPalIndex = 0, + SHADOW(0, 8, SHADOW_SIZE_L) FOOTPRINT(Kyurem) OVERWORLD( sPicTable_Kyurem, @@ -11561,6 +11742,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_KyuremWhite, .iconSprite = gMonIcon_KyuremWhite, .iconPalIndex = 0, + SHADOW(-8, 14, SHADOW_SIZE_L) FOOTPRINT(Kyurem) .isLegendary = TRUE, .cannotBeTraded = TRUE, @@ -11625,6 +11807,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_KyuremBlack, .iconSprite = gMonIcon_KyuremBlack, .iconPalIndex = 0, + SHADOW(4, 14, SHADOW_SIZE_L) FOOTPRINT(Kyurem) .isLegendary = TRUE, .cannotBeTraded = TRUE, @@ -11685,6 +11868,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_KeldeoOrdinary, .iconSprite = gMonIcon_KeldeoOrdinary, .iconPalIndex = 0, + SHADOW(-2, 8, SHADOW_SIZE_M) FOOTPRINT(Keldeo) OVERWORLD( sPicTable_KeldeoOrdinary, @@ -11751,6 +11935,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_KeldeoResolute, .iconSprite = gMonIcon_KeldeoResolute, .iconPalIndex = 0, + SHADOW(0, 12, SHADOW_SIZE_M) FOOTPRINT(Keldeo) .isMythical = TRUE, .isFrontierBanned = TRUE, @@ -11816,6 +12001,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_MeloettaAria, .iconSprite = gMonIcon_MeloettaAria, .iconPalIndex = 4, + SHADOW(-1, 10, SHADOW_SIZE_S) FOOTPRINT(Meloetta) OVERWORLD( sPicTable_MeloettaAria, @@ -11886,6 +12072,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_MeloettaPirouette, .iconSprite = gMonIcon_MeloettaPirouette, .iconPalIndex = 0, + SHADOW(0, 16, SHADOW_SIZE_S) FOOTPRINT(Meloetta) OVERWORLD( sPicTable_MeloettaPirouette, @@ -11951,6 +12138,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .shinyPalette = gMonShinyPalette_##form, \ .iconSprite = gMonIcon_Genesect, \ .iconPalIndex = 2, \ + SHADOW(5, 13, SHADOW_SIZE_L) \ FOOTPRINT(Genesect) \ OVERWORLD( \ sPicTable_Genesect, \ diff --git a/src/data/pokemon/species_info/gen_6_families.h b/src/data/pokemon/species_info/gen_6_families.h index bae2833b9e..90e3d2d51e 100644 --- a/src/data/pokemon/species_info/gen_6_families.h +++ b/src/data/pokemon/species_info/gen_6_families.h @@ -51,6 +51,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Chespin, .iconSprite = gMonIcon_Chespin, .iconPalIndex = 1, + SHADOW(-2, 3, SHADOW_SIZE_S) FOOTPRINT(Chespin) OVERWORLD( sPicTable_Chespin, @@ -113,6 +114,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Quilladin, .iconSprite = gMonIcon_Quilladin, .iconPalIndex = 1, + SHADOW(2, 4, SHADOW_SIZE_M) FOOTPRINT(Quilladin) OVERWORLD( sPicTable_Quilladin, @@ -174,6 +176,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Chesnaught, .iconSprite = gMonIcon_Chesnaught, .iconPalIndex = 1, + SHADOW(4, 10, SHADOW_SIZE_L) FOOTPRINT(Chesnaught) OVERWORLD( sPicTable_Chesnaught, @@ -236,6 +239,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Fennekin, .iconSprite = gMonIcon_Fennekin, .iconPalIndex = 0, + SHADOW(0, 4, SHADOW_SIZE_S) FOOTPRINT(Fennekin) OVERWORLD( sPicTable_Fennekin, @@ -298,6 +302,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Braixen, .iconSprite = gMonIcon_Braixen, .iconPalIndex = 0, + SHADOW(-2, 10, SHADOW_SIZE_M) FOOTPRINT(Braixen) OVERWORLD( sPicTable_Braixen, @@ -359,6 +364,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Delphox, .iconSprite = gMonIcon_Delphox, .iconPalIndex = 0, + SHADOW(7, 14, SHADOW_SIZE_M) FOOTPRINT(Delphox) OVERWORLD( sPicTable_Delphox, @@ -421,6 +427,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Froakie, .iconSprite = gMonIcon_Froakie, .iconPalIndex = 0, + SHADOW(2, 0, SHADOW_SIZE_S) FOOTPRINT(Froakie) OVERWORLD( sPicTable_Froakie, @@ -483,6 +490,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Frogadier, .iconSprite = gMonIcon_Frogadier, .iconPalIndex = 0, + SHADOW(0, 5, SHADOW_SIZE_M) FOOTPRINT(Frogadier) OVERWORLD( sPicTable_Frogadier, @@ -541,6 +549,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Greninja, .iconSprite = gMonIcon_Greninja, .iconPalIndex = 0, + SHADOW(4, 6, SHADOW_SIZE_L) FOOTPRINT(Greninja) OVERWORLD( sPicTable_Greninja, @@ -599,6 +608,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Greninja, .iconSprite = gMonIcon_Greninja, .iconPalIndex = 0, + SHADOW(4, 6, SHADOW_SIZE_L) FOOTPRINT(Greninja) OVERWORLD( sPicTable_Greninja, @@ -662,6 +672,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_GreninjaAsh, .iconSprite = gMonIcon_GreninjaAsh, .iconPalIndex = 0, + SHADOW(1, 10, SHADOW_SIZE_L) FOOTPRINT(Greninja) .levelUpLearnset = sGreninjaLevelUpLearnset, .teachableLearnset = sGreninjaTeachableLearnset, @@ -718,6 +729,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Bunnelby, .iconSprite = gMonIcon_Bunnelby, .iconPalIndex = 2, + SHADOW(3, 9, SHADOW_SIZE_S) FOOTPRINT(Bunnelby) OVERWORLD( sPicTable_Bunnelby, @@ -780,6 +792,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Diggersby, .iconSprite = gMonIcon_Diggersby, .iconPalIndex = 2, + SHADOW(8, 10, SHADOW_SIZE_M) FOOTPRINT(Diggersby) OVERWORLD( sPicTable_Diggersby, @@ -842,6 +855,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Fletchling, .iconSprite = gMonIcon_Fletchling, .iconPalIndex = 2, + SHADOW(-2, 0, SHADOW_SIZE_S) FOOTPRINT(Fletchling) OVERWORLD( sPicTable_Fletchling, @@ -905,6 +919,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Fletchinder, .iconSprite = gMonIcon_Fletchinder, .iconPalIndex = 2, + SHADOW(0, 12, SHADOW_SIZE_S) FOOTPRINT(Fletchinder) OVERWORLD( sPicTable_Fletchinder, @@ -967,6 +982,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Talonflame, .iconSprite = gMonIcon_Talonflame, .iconPalIndex = 2, + SHADOW(-2, 17, SHADOW_SIZE_M) FOOTPRINT(Talonflame) OVERWORLD( sPicTable_Talonflame, @@ -1025,6 +1041,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Scatterbug, \ .iconSprite = gMonIcon_Scatterbug, \ .iconPalIndex = 1, \ + SHADOW(1, 1, SHADOW_SIZE_S) \ FOOTPRINT(Scatterbug) \ OVERWORLD( \ sPicTable_Scatterbug, \ @@ -1106,6 +1123,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Spewpa, \ .iconSprite = gMonIcon_Spewpa, \ .iconPalIndex = 1, \ + SHADOW(0, 2, SHADOW_SIZE_M) \ FOOTPRINT(Spewpa) \ OVERWORLD( \ sPicTable_Spewpa, \ @@ -1187,6 +1205,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Vivillon ##form, \ .iconSprite = gMonIcon_Vivillon ##form, \ .iconPalIndex = iconPal, \ + SHADOW(0, 20, SHADOW_SIZE_M) \ FOOTPRINT(Vivillon) \ OVERWORLD( \ sPicTable_Vivillon ##form, \ @@ -1430,6 +1449,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Litleo, .iconSprite = gMonIcon_Litleo, .iconPalIndex = 2, + SHADOW(2, 3, SHADOW_SIZE_S) FOOTPRINT(Litleo) OVERWORLD( sPicTable_Litleo, @@ -1498,6 +1518,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .iconSpriteFemale = gMonIcon_PyroarF, .iconPalIndex = 2, .iconPalIndexFemale = 2, + SHADOW(-2, 11, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Pyroar) OVERWORLD( sPicTable_Pyroar, @@ -1555,6 +1576,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Flabebe##Form##Flower, \ .iconSprite = gMonIcon_Flabebe##Form##Flower, \ .iconPalIndex = iconPal, \ + SHADOW(0, 11, SHADOW_SIZE_S) \ FOOTPRINT(Flabebe) \ OVERWORLD( \ sPicTable_Flabebe##Form##Flower, \ @@ -1642,6 +1664,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Floette ##form##Flower, \ .iconSprite = gMonIcon_Floette##form##Flower, \ .iconPalIndex = iconPal, \ + SHADOW(-3, 12, SHADOW_SIZE_S) \ FOOTPRINT(Floette) \ OVERWORLD( \ sPicTable_Floette ##form##Flower, \ @@ -1789,6 +1812,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Florges##Form##Flower, \ .iconSprite = gMonIcon_Florges##Form##Flower, \ .iconPalIndex = iconPal, \ + SHADOW(-5, 15, SHADOW_SIZE_M) \ FOOTPRINT(Florges) \ OVERWORLD( \ sPicTable_Florges ##Form##Flower, \ @@ -1896,6 +1920,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Skiddo, .iconSprite = gMonIcon_Skiddo, .iconPalIndex = 1, + SHADOW(2, 7, SHADOW_SIZE_M) FOOTPRINT(Skiddo) OVERWORLD( sPicTable_Skiddo, @@ -1958,6 +1983,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Gogoat, .iconSprite = gMonIcon_Gogoat, .iconPalIndex = 1, + SHADOW(2, 9, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Gogoat) OVERWORLD( sPicTable_Gogoat, @@ -2021,6 +2047,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Pancham, .iconSprite = gMonIcon_Pancham, .iconPalIndex = 1, + SHADOW(-2, 2, SHADOW_SIZE_S) FOOTPRINT(Pancham) OVERWORLD( sPicTable_Pancham, @@ -2084,6 +2111,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Pangoro, .iconSprite = gMonIcon_Pangoro, .iconPalIndex = 1, + SHADOW(-2, 13, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Pangoro) OVERWORLD( sPicTable_Pangoro, @@ -2143,6 +2171,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Furfrou##_form, \ .iconSprite = gMonIcon_Furfrou##_form, \ .iconPalIndex = _iconIdx, \ + SHADOW(3, 10, SHADOW_SIZE_XL_BATTLE_ONLY) \ FOOTPRINT(Furfrou) \ OVERWORLD( \ sPicTable_Furfrou##_form, \ @@ -2219,6 +2248,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Espurr, .iconSprite = gMonIcon_Espurr, .iconPalIndex = 2, + SHADOW(-1, 4, SHADOW_SIZE_S) FOOTPRINT(Espurr) OVERWORLD( sPicTable_Espurr, @@ -2282,6 +2312,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_MeowsticMale, .iconSprite = gMonIcon_MeowsticMale, .iconPalIndex = 0, + SHADOW(-2, 11, SHADOW_SIZE_S) FOOTPRINT(Meowstic) OVERWORLD( sPicTable_MeowsticMale, @@ -2343,6 +2374,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_MeowsticFemale, .iconSprite = gMonIcon_MeowsticFemale, .iconPalIndex = 0, + SHADOW(-2, 12, SHADOW_SIZE_S) FOOTPRINT(Meowstic) OVERWORLD( sPicTable_MeowsticFemale, @@ -2407,6 +2439,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Honedge, .iconSprite = gMonIcon_Honedge, .iconPalIndex = 2, + SHADOW(-10, 11, SHADOW_SIZE_S) FOOTPRINT(Honedge) OVERWORLD( sPicTable_Honedge, @@ -2470,6 +2503,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Doublade, .iconSprite = gMonIcon_Doublade, .iconPalIndex = 2, + SHADOW(8, 11, SHADOW_SIZE_M) FOOTPRINT(Doublade) OVERWORLD( sPicTable_Doublade, @@ -2535,6 +2569,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_AegislashShield, .iconSprite = gMonIcon_AegislashShield, .iconPalIndex = 2, + SHADOW(0, 14, SHADOW_SIZE_M) FOOTPRINT(Aegislash) OVERWORLD( sPicTable_AegislashShield, @@ -2604,6 +2639,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_AegislashBlade, .iconSprite = gMonIcon_AegislashBlade, .iconPalIndex = 2, + SHADOW(0, 14, SHADOW_SIZE_M) FOOTPRINT(Aegislash) .levelUpLearnset = sAegislashLevelUpLearnset, .teachableLearnset = sAegislashTeachableLearnset, @@ -2661,6 +2697,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Spritzee, .iconSprite = gMonIcon_Spritzee, .iconPalIndex = 0, + SHADOW(-1, 13, SHADOW_SIZE_S) FOOTPRINT(Spritzee) OVERWORLD( sPicTable_Spritzee, @@ -2724,6 +2761,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Aromatisse, .iconSprite = gMonIcon_Aromatisse, .iconPalIndex = 0, + SHADOW(0, 10, SHADOW_SIZE_M) FOOTPRINT(Aromatisse) OVERWORLD( sPicTable_Aromatisse, @@ -2786,6 +2824,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Swirlix, .iconSprite = gMonIcon_Swirlix, .iconPalIndex = 1, + SHADOW(0, -1, SHADOW_SIZE_S) FOOTPRINT(Swirlix) OVERWORLD( sPicTable_Swirlix, @@ -2849,6 +2888,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Slurpuff, .iconSprite = gMonIcon_Slurpuff, .iconPalIndex = 1, + SHADOW(1, 6, SHADOW_SIZE_M) FOOTPRINT(Slurpuff) OVERWORLD( sPicTable_Slurpuff, @@ -2912,6 +2952,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Inkay, .iconSprite = gMonIcon_Inkay, .iconPalIndex = 0, + SHADOW(-1, 11, SHADOW_SIZE_S) FOOTPRINT(Inkay) OVERWORLD( sPicTable_Inkay, @@ -2974,6 +3015,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Malamar, .iconSprite = gMonIcon_Malamar, .iconPalIndex = 2, + SHADOW(5, 14, SHADOW_SIZE_M) FOOTPRINT(Malamar) OVERWORLD( sPicTable_Malamar, @@ -3036,6 +3078,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Binacle, .iconSprite = gMonIcon_Binacle, .iconPalIndex = 2, + SHADOW(-3, 5, SHADOW_SIZE_M) FOOTPRINT(Binacle) OVERWORLD( sPicTable_Binacle, @@ -3099,6 +3142,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Barbaracle, .iconSprite = gMonIcon_Barbaracle, .iconPalIndex = 2, + SHADOW(4, 14, SHADOW_SIZE_L) FOOTPRINT(Barbaracle) OVERWORLD( sPicTable_Barbaracle, @@ -3161,6 +3205,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Skrelp, .iconSprite = gMonIcon_Skrelp, .iconPalIndex = 2, + SHADOW(3, 5, SHADOW_SIZE_S) FOOTPRINT(Skrelp) OVERWORLD( sPicTable_Skrelp, @@ -3223,6 +3268,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Dragalge, .iconSprite = gMonIcon_Dragalge, .iconPalIndex = 5, + SHADOW(-3, 14, SHADOW_SIZE_M) FOOTPRINT(Dragalge) OVERWORLD( sPicTable_Dragalge, @@ -3286,6 +3332,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Clauncher, .iconSprite = gMonIcon_Clauncher, .iconPalIndex = 0, + SHADOW(4, -6, SHADOW_SIZE_M) FOOTPRINT(Clauncher) OVERWORLD( sPicTable_Clauncher, @@ -3349,6 +3396,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Clawitzer, .iconSprite = gMonIcon_Clawitzer, .iconPalIndex = 0, + SHADOW(6, 1, SHADOW_SIZE_L) FOOTPRINT(Clawitzer) OVERWORLD( sPicTable_Clawitzer, @@ -3411,6 +3459,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Helioptile, .iconSprite = gMonIcon_Helioptile, .iconPalIndex = 2, + SHADOW(-1, 1, SHADOW_SIZE_S) FOOTPRINT(Helioptile) OVERWORLD( sPicTable_Helioptile, @@ -3474,6 +3523,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Heliolisk, .iconSprite = gMonIcon_Heliolisk, .iconPalIndex = 2, + SHADOW(-2, 10, SHADOW_SIZE_M) FOOTPRINT(Heliolisk) OVERWORLD( sPicTable_Heliolisk, @@ -3536,6 +3586,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Tyrunt, .iconSprite = gMonIcon_Tyrunt, .iconPalIndex = 2, + SHADOW(3, 2, SHADOW_SIZE_M) FOOTPRINT(Tyrunt) OVERWORLD( sPicTable_Tyrunt, @@ -3598,6 +3649,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Tyrantrum, .iconSprite = gMonIcon_Tyrantrum, .iconPalIndex = 0, + SHADOW(-2, 14, SHADOW_SIZE_L) FOOTPRINT(Tyrantrum) OVERWORLD( sPicTable_Tyrantrum, @@ -3660,6 +3712,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Amaura, .iconSprite = gMonIcon_Amaura, .iconPalIndex = 0, + SHADOW(0, 8, SHADOW_SIZE_S) FOOTPRINT(Amaura) OVERWORLD( sPicTable_Amaura, @@ -3722,6 +3775,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Aurorus, .iconSprite = gMonIcon_Aurorus, .iconPalIndex = 0, + SHADOW(-6, 14, SHADOW_SIZE_L) FOOTPRINT(Aurorus) OVERWORLD( sPicTable_Aurorus, @@ -3789,6 +3843,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Hawlucha, .iconSprite = gMonIcon_Hawlucha, .iconPalIndex = 0, + SHADOW(3, 6, SHADOW_SIZE_S) FOOTPRINT(Hawlucha) OVERWORLD( sPicTable_Hawlucha, @@ -3852,6 +3907,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Dedenne, .iconSprite = gMonIcon_Dedenne, .iconPalIndex = 0, + SHADOW(-2, 1, SHADOW_SIZE_S) FOOTPRINT(Dedenne) OVERWORLD( sPicTable_Dedenne, @@ -3917,6 +3973,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Carbink, .iconSprite = gMonIcon_Carbink, .iconPalIndex = 2, + SHADOW(-1, 5, SHADOW_SIZE_S) FOOTPRINT(Carbink) OVERWORLD( sPicTable_Carbink, @@ -3980,6 +4037,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Goomy, .iconSprite = gMonIcon_Goomy, .iconPalIndex = 5, + SHADOW(-1, -1, SHADOW_SIZE_S) FOOTPRINT(Goomy) OVERWORLD( sPicTable_Goomy, @@ -4044,6 +4102,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Sliggoo, .iconSprite = gMonIcon_Sliggoo, .iconPalIndex = 5, + SHADOW(1, 6, SHADOW_SIZE_S) FOOTPRINT(Sliggoo) OVERWORLD( sPicTable_Sliggoo, @@ -4107,6 +4166,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Goodra, .iconSprite = gMonIcon_Goodra, .iconPalIndex = 5, + SHADOW(-2, 14, SHADOW_SIZE_M) FOOTPRINT(Goodra) OVERWORLD( sPicTable_Goodra, @@ -4170,6 +4230,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_SliggooHisuian, .iconSprite = gMonIcon_SliggooHisuian, .iconPalIndex = 2, + SHADOW(2, 6, SHADOW_SIZE_M) FOOTPRINT(Sliggoo) OVERWORLD( sPicTable_SliggooHisuian, @@ -4234,6 +4295,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_GoodraHisuian, .iconSprite = gMonIcon_GoodraHisuian, .iconPalIndex = 2, + SHADOW(1, 12, SHADOW_SIZE_M) FOOTPRINT(Goodra) OVERWORLD( sPicTable_GoodraHisuian, @@ -4301,6 +4363,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Klefki, .iconSprite = gMonIcon_Klefki, .iconPalIndex = 0, + SHADOW(-1, 12, SHADOW_SIZE_S) FOOTPRINT(Klefki) OVERWORLD( sPicTable_Klefki, @@ -4365,6 +4428,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Phantump, .iconSprite = gMonIcon_Phantump, .iconPalIndex = 1, + SHADOW(-1, 5, SHADOW_SIZE_S) FOOTPRINT(Phantump) OVERWORLD( sPicTable_Phantump, @@ -4428,6 +4492,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Trevenant, .iconSprite = gMonIcon_Trevenant, .iconPalIndex = 1, + SHADOW(-1, 13, SHADOW_SIZE_M) FOOTPRINT(Trevenant) OVERWORLD( sPicTable_Trevenant, @@ -4490,6 +4555,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Pumpkaboo, .iconSprite = gMonIcon_Pumpkaboo, .iconPalIndex = 2, + SHADOW(0, 1, SHADOW_SIZE_S) FOOTPRINT(Pumpkaboo) OVERWORLD( sPicTable_PumpkabooAverage, @@ -4553,6 +4619,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Pumpkaboo, .iconSprite = gMonIcon_Pumpkaboo, .iconPalIndex = 2, + SHADOW(-1, -1, SHADOW_SIZE_S) FOOTPRINT(Pumpkaboo) .levelUpLearnset = sPumpkabooLevelUpLearnset, .teachableLearnset = sPumpkabooTeachableLearnset, @@ -4608,6 +4675,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Pumpkaboo, .iconSprite = gMonIcon_Pumpkaboo, .iconPalIndex = 2, + SHADOW(0, 2, SHADOW_SIZE_S) FOOTPRINT(Pumpkaboo) .levelUpLearnset = sPumpkabooLevelUpLearnset, .teachableLearnset = sPumpkabooTeachableLearnset, @@ -4665,6 +4733,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Pumpkaboo, .iconSprite = gMonIcon_Pumpkaboo, .iconPalIndex = 2, + SHADOW(1, 4, SHADOW_SIZE_S) FOOTPRINT(Pumpkaboo) .levelUpLearnset = sPumpkabooLevelUpLearnset, .teachableLearnset = sPumpkabooTeachableLearnset, @@ -4721,6 +4790,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Gourgeist, .iconSprite = gMonIcon_Gourgeist, .iconPalIndex = 2, + SHADOW(3, 10, SHADOW_SIZE_M) FOOTPRINT(Gourgeist) OVERWORLD( sPicTable_GourgeistAverage, @@ -4782,6 +4852,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Gourgeist, .iconSprite = gMonIcon_Gourgeist, .iconPalIndex = 2, + SHADOW(4, 9, SHADOW_SIZE_S) FOOTPRINT(Gourgeist) .levelUpLearnset = sGourgeistLevelUpLearnset, .teachableLearnset = sGourgeistTeachableLearnset, @@ -4835,6 +4906,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Gourgeist, .iconSprite = gMonIcon_Gourgeist, .iconPalIndex = 2, + SHADOW(4, 12, SHADOW_SIZE_M) FOOTPRINT(Gourgeist) .levelUpLearnset = sGourgeistLevelUpLearnset, .teachableLearnset = sGourgeistTeachableLearnset, @@ -4890,6 +4962,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Gourgeist, .iconSprite = gMonIcon_Gourgeist, .iconPalIndex = 2, + SHADOW(4, 14, SHADOW_SIZE_M) FOOTPRINT(Gourgeist) .levelUpLearnset = sGourgeistLevelUpLearnset, .teachableLearnset = sGourgeistTeachableLearnset, @@ -4951,6 +5024,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Bergmite, .iconSprite = gMonIcon_Bergmite, .iconPalIndex = 0, + SHADOW(1, -1, SHADOW_SIZE_S) FOOTPRINT(Bergmite) OVERWORLD( sPicTable_Bergmite, @@ -5014,6 +5088,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Avalugg, .iconSprite = gMonIcon_Avalugg, .iconPalIndex = 0, + SHADOW(1, -1, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Avalugg) OVERWORLD( sPicTable_Avalugg, @@ -5075,6 +5150,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_AvaluggHisuian, .iconSprite = gMonIcon_AvaluggHisuian, .iconPalIndex = 5, + SHADOW(2, -2, SHADOW_SIZE_L) FOOTPRINT(Avalugg) OVERWORLD( sPicTable_AvaluggHisuian, @@ -5145,6 +5221,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Noibat, .iconSprite = gMonIcon_Noibat, .iconPalIndex = 2, + SHADOW(2, 11, SHADOW_SIZE_L) FOOTPRINT(Noibat) OVERWORLD( sPicTable_Noibat, @@ -5211,6 +5288,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Noivern, .iconSprite = gMonIcon_Noivern, .iconPalIndex = 2, + SHADOW(5, 10, SHADOW_SIZE_L) FOOTPRINT(Noivern) OVERWORLD( sPicTable_Noivern, @@ -5269,6 +5347,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_XerneasNeutral, .iconSprite = gMonIcon_XerneasNeutral, .iconPalIndex = 0, + SHADOW(3, 14, SHADOW_SIZE_M) FOOTPRINT(Xerneas) OVERWORLD( sPicTable_XerneasNeutral, @@ -5330,6 +5409,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_XerneasActive, .iconSprite = gMonIcon_XerneasActive, .iconPalIndex = 0, + SHADOW(3, 14, SHADOW_SIZE_M) FOOTPRINT(Xerneas) OVERWORLD( sPicTable_XerneasActive, @@ -5398,6 +5478,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Yveltal, .iconSprite = gMonIcon_Yveltal, .iconPalIndex = 0, + SHADOW(0, 16, SHADOW_SIZE_L) FOOTPRINT(Yveltal) OVERWORLD( sPicTable_Yveltal, @@ -5460,6 +5541,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Zygarde50, .iconSprite = gMonIcon_Zygarde50, .iconPalIndex = 1, + SHADOW(0, 13, SHADOW_SIZE_L) FOOTPRINT(Zygarde) OVERWORLD( sPicTable_Zygarde50, @@ -5521,6 +5603,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Zygarde50, .iconSprite = gMonIcon_Zygarde50, .iconPalIndex = 1, + SHADOW(0, 13, SHADOW_SIZE_L) FOOTPRINT(Zygarde) OVERWORLD( sPicTable_Zygarde50, @@ -5582,6 +5665,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Zygarde10, .iconSprite = gMonIcon_Zygarde10, .iconPalIndex = 1, + SHADOW(1, 11, SHADOW_SIZE_L) FOOTPRINT(Zygarde) .isLegendary = TRUE, .isFrontierBanned = TRUE, @@ -5636,6 +5720,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Zygarde10, .iconSprite = gMonIcon_Zygarde10, .iconPalIndex = 1, + SHADOW(1, 11, SHADOW_SIZE_L) FOOTPRINT(Zygarde) .isLegendary = TRUE, .isFrontierBanned = TRUE, @@ -5694,6 +5779,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_ZygardeComplete, .iconSprite = gMonIcon_ZygardeComplete, .iconPalIndex = 1, + SHADOW(-3, 13, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Zygarde) .isLegendary = TRUE, .isFrontierBanned = TRUE, @@ -5754,6 +5840,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Diancie, .iconSprite = gMonIcon_Diancie, .iconPalIndex = 1, + SHADOW(0, 13, SHADOW_SIZE_S) FOOTPRINT(Diancie) OVERWORLD( sPicTable_Diancie, @@ -5821,6 +5908,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_DiancieMega, .iconSprite = gMonIcon_DiancieMega, .iconPalIndex = 0, + SHADOW(0, 12, SHADOW_SIZE_M) FOOTPRINT(Diancie) .isMythical = TRUE, .isMegaEvolution = TRUE, @@ -5883,6 +5971,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_HoopaConfined, .iconSprite = gMonIcon_HoopaConfined, .iconPalIndex = 0, + SHADOW(0, 13, SHADOW_SIZE_S) FOOTPRINT(Hoopa) OVERWORLD( sPicTable_HoopaConfined, @@ -5949,6 +6038,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_HoopaUnbound, .iconSprite = gMonIcon_HoopaUnbound, .iconPalIndex = 0, + SHADOW(1, 14, SHADOW_SIZE_L) FOOTPRINT(Hoopa) OVERWORLD( sPicTable_HoopaUnbound, @@ -6016,6 +6106,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .shinyPalette = gMonShinyPalette_Volcanion, .iconSprite = gMonIcon_Volcanion, .iconPalIndex = 0, + SHADOW(0, 12, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Volcanion) OVERWORLD( sPicTable_Volcanion, diff --git a/src/data/pokemon/species_info/gen_7_families.h b/src/data/pokemon/species_info/gen_7_families.h index 0465def06b..b328c2a716 100644 --- a/src/data/pokemon/species_info/gen_7_families.h +++ b/src/data/pokemon/species_info/gen_7_families.h @@ -51,6 +51,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Rowlet, .iconSprite = gMonIcon_Rowlet, .iconPalIndex = 0, + SHADOW(-1, 1, SHADOW_SIZE_S) FOOTPRINT(Rowlet) OVERWORLD( sPicTable_Rowlet, @@ -114,6 +115,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Dartrix, .iconSprite = gMonIcon_Dartrix, .iconPalIndex = 1, + SHADOW(0, 5, SHADOW_SIZE_S) FOOTPRINT(Dartrix) OVERWORLD( sPicTable_Dartrix, @@ -176,6 +178,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Decidueye, .iconSprite = gMonIcon_Decidueye, .iconPalIndex = 1, + SHADOW(-1, 13, SHADOW_SIZE_S) FOOTPRINT(Decidueye) OVERWORLD( sPicTable_Decidueye, @@ -238,6 +241,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_DecidueyeHisuian, .iconSprite = gMonIcon_DecidueyeHisuian, .iconPalIndex = 0, + SHADOW(-1, 14, SHADOW_SIZE_L) FOOTPRINT(Decidueye) OVERWORLD( sPicTable_DecidueyeHisuian, @@ -303,6 +307,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Litten, .iconSprite = gMonIcon_Litten, .iconPalIndex = 0, + SHADOW(1, 1, SHADOW_SIZE_S) FOOTPRINT(Litten) OVERWORLD( sPicTable_Litten, @@ -365,6 +370,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Torracat, .iconSprite = gMonIcon_Torracat, .iconPalIndex = 0, + SHADOW(5, 7, SHADOW_SIZE_M) FOOTPRINT(Torracat) OVERWORLD( sPicTable_Torracat, @@ -426,6 +432,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Incineroar, .iconSprite = gMonIcon_Incineroar, .iconPalIndex = 0, + SHADOW(4, 14, SHADOW_SIZE_L) FOOTPRINT(Incineroar) OVERWORLD( sPicTable_Incineroar, @@ -488,6 +495,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Popplio, .iconSprite = gMonIcon_Popplio, .iconPalIndex = 0, + SHADOW(0, 1, SHADOW_SIZE_S) FOOTPRINT(Popplio) OVERWORLD( sPicTable_Popplio, @@ -550,6 +558,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Brionne, .iconSprite = gMonIcon_Brionne, .iconPalIndex = 0, + SHADOW(-5, 6, SHADOW_SIZE_M) FOOTPRINT(Brionne) OVERWORLD( sPicTable_Brionne, @@ -611,6 +620,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Primarina, .iconSprite = gMonIcon_Primarina, .iconPalIndex = 0, + SHADOW(-6, 11, SHADOW_SIZE_L) FOOTPRINT(Primarina) OVERWORLD( sPicTable_Primarina, @@ -674,6 +684,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Pikipek, .iconSprite = gMonIcon_Pikipek, .iconPalIndex = 2, + SHADOW(0, 3, SHADOW_SIZE_S) FOOTPRINT(Pikipek) OVERWORLD( sPicTable_Pikipek, @@ -737,6 +748,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Trumbeak, .iconSprite = gMonIcon_Trumbeak, .iconPalIndex = 0, + SHADOW(1, 8, SHADOW_SIZE_S) FOOTPRINT(Trumbeak) OVERWORLD( sPicTable_Trumbeak, @@ -799,6 +811,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Toucannon, .iconSprite = gMonIcon_Toucannon, .iconPalIndex = 0, + SHADOW(9, 12, SHADOW_SIZE_M) FOOTPRINT(Toucannon) OVERWORLD( sPicTable_Toucannon, @@ -862,6 +875,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Yungoos, .iconSprite = gMonIcon_Yungoos, .iconPalIndex = 2, + SHADOW(-9, 1, SHADOW_SIZE_M) FOOTPRINT(Yungoos) OVERWORLD( sPicTable_Yungoos, @@ -921,6 +935,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Gumshoos, .iconSprite = gMonIcon_Gumshoos, .iconPalIndex = 2, + SHADOW(-2, 8, SHADOW_SIZE_M) FOOTPRINT(Gumshoos) OVERWORLD( sPicTable_Gumshoos, @@ -979,6 +994,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Gumshoos, .iconSprite = gMonIcon_Gumshoos, .iconPalIndex = 2, + SHADOW(-2, 8, SHADOW_SIZE_M) FOOTPRINT(Gumshoos) OVERWORLD( sPicTable_Gumshoos, @@ -1044,6 +1060,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Grubbin, .iconSprite = gMonIcon_Grubbin, .iconPalIndex = 0, + SHADOW(0, -4, SHADOW_SIZE_M) FOOTPRINT(Grubbin) OVERWORLD( sPicTable_Grubbin, @@ -1107,6 +1124,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Charjabug, .iconSprite = gMonIcon_Charjabug, .iconPalIndex = 1, + NO_SHADOW FOOTPRINT(Charjabug) OVERWORLD( sPicTable_Charjabug, @@ -1167,6 +1185,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Vikavolt, .iconSprite = gMonIcon_Vikavolt, .iconPalIndex = 0, + SHADOW(-1, 16, SHADOW_SIZE_S) FOOTPRINT(Vikavolt) OVERWORLD( sPicTable_Vikavolt, @@ -1225,6 +1244,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Vikavolt, .iconSprite = gMonIcon_Vikavolt, .iconPalIndex = 0, + SHADOW(-1, 16, SHADOW_SIZE_S) FOOTPRINT(Vikavolt) OVERWORLD( sPicTable_Vikavolt, @@ -1291,6 +1311,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Crabrawler, .iconSprite = gMonIcon_Crabrawler, .iconPalIndex = 2, + SHADOW(7, 6, SHADOW_SIZE_M) FOOTPRINT(Crabrawler) OVERWORLD( sPicTable_Crabrawler, @@ -1355,6 +1376,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Crabominable, .iconSprite = gMonIcon_Crabominable, .iconPalIndex = 2, + SHADOW(1, 14, SHADOW_SIZE_L) FOOTPRINT(Crabominable) OVERWORLD( sPicTable_Crabominable, @@ -1418,6 +1440,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_OricorioBaile, .iconSprite = gMonIcon_OricorioBaile, .iconPalIndex = 0, + SHADOW(-4, 9, SHADOW_SIZE_S) FOOTPRINT(Oricorio) OVERWORLD( sPicTable_OricorioBaile, @@ -1482,6 +1505,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_OricorioPomPom, .iconSprite = gMonIcon_OricorioPomPom, .iconPalIndex = 1, + SHADOW(5, 8, SHADOW_SIZE_S) FOOTPRINT(Oricorio) .levelUpLearnset = sOricorioLevelUpLearnset, .teachableLearnset = sOricorioTeachableLearnset, @@ -1538,6 +1562,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_OricorioPau, .iconSprite = gMonIcon_OricorioPau, .iconPalIndex = 1, + SHADOW(-3, 11, SHADOW_SIZE_S) FOOTPRINT(Oricorio) .levelUpLearnset = sOricorioLevelUpLearnset, .teachableLearnset = sOricorioTeachableLearnset, @@ -1594,6 +1619,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_OricorioSensu, .iconSprite = gMonIcon_OricorioSensu, .iconPalIndex = 0, + SHADOW(7, 10, SHADOW_SIZE_S) FOOTPRINT(Oricorio) .levelUpLearnset = sOricorioLevelUpLearnset, .teachableLearnset = sOricorioTeachableLearnset, @@ -1653,6 +1679,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Cutiefly, .iconSprite = gMonIcon_Cutiefly, .iconPalIndex = 2, + SHADOW(0, 5, SHADOW_SIZE_S) FOOTPRINT(Cutiefly) OVERWORLD( sPicTable_Cutiefly, @@ -1714,6 +1741,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Ribombee, .iconSprite = gMonIcon_Ribombee, .iconPalIndex = 2, + SHADOW(-1, 12, SHADOW_SIZE_S) FOOTPRINT(Ribombee) OVERWORLD( sPicTable_Ribombee, @@ -1773,6 +1801,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Ribombee, .iconSprite = gMonIcon_Ribombee, .iconPalIndex = 2, + SHADOW(-1, 12, SHADOW_SIZE_S) FOOTPRINT(Ribombee) OVERWORLD( sPicTable_Ribombee, @@ -1834,6 +1863,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Rockruff, .iconSprite = gMonIcon_Rockruff, .iconPalIndex = 2, + SHADOW(-2, 2, SHADOW_SIZE_S) FOOTPRINT(Rockruff) OVERWORLD( sPicTable_Rockruff, @@ -1894,6 +1924,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Rockruff, .iconSprite = gMonIcon_Rockruff, .iconPalIndex = 2, + SHADOW(-2, 2, SHADOW_SIZE_S) FOOTPRINT(Rockruff) OVERWORLD( sPicTable_Rockruff, @@ -1957,6 +1988,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_LycanrocMidday, .iconSprite = gMonIcon_LycanrocMidday, .iconPalIndex = 2, + SHADOW(5, 7, SHADOW_SIZE_L) FOOTPRINT(Lycanroc) OVERWORLD( sPicTable_LycanrocMidday, @@ -2018,6 +2050,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_LycanrocMidnight, .iconSprite = gMonIcon_LycanrocMidnight, .iconPalIndex = 0, + SHADOW(5, 13, SHADOW_SIZE_L) FOOTPRINT(Lycanroc) OVERWORLD( sPicTable_LycanrocMidnight, @@ -2079,6 +2112,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_LycanrocDusk, .iconSprite = gMonIcon_LycanrocDusk, .iconPalIndex = 0, + SHADOW(5, 7, SHADOW_SIZE_L) FOOTPRINT(Lycanroc) OVERWORLD( sPicTable_LycanrocDusk, @@ -2143,6 +2177,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_WishiwashiSolo, .iconSprite = gMonIcon_WishiwashiSolo, .iconPalIndex = 2, + SHADOW(-1, 3, SHADOW_SIZE_S) FOOTPRINT(Wishiwashi) OVERWORLD( sPicTable_WishiwashiSolo, @@ -2206,6 +2241,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_WishiwashiSchool, .iconSprite = gMonIcon_WishiwashiSchool, .iconPalIndex = 0, + SHADOW(-4, 7, SHADOW_SIZE_L) FOOTPRINT(Wishiwashi) .levelUpLearnset = sWishiwashiLevelUpLearnset, .teachableLearnset = sWishiwashiTeachableLearnset, @@ -2264,6 +2300,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Mareanie, .iconSprite = gMonIcon_Mareanie, .iconPalIndex = 2, + SHADOW(0, -1, SHADOW_SIZE_M) FOOTPRINT(Mareanie) OVERWORLD( sPicTable_Mareanie, @@ -2327,6 +2364,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Toxapex, .iconSprite = gMonIcon_Toxapex, .iconPalIndex = 0, + SHADOW(0, 6, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Toxapex) OVERWORLD( sPicTable_Toxapex, @@ -2390,6 +2428,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Mudbray, .iconSprite = gMonIcon_Mudbray, .iconPalIndex = 2, + SHADOW(2, 6, SHADOW_SIZE_M) FOOTPRINT(Mudbray) OVERWORLD( sPicTable_Mudbray, @@ -2453,6 +2492,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Mudsdale, .iconSprite = gMonIcon_Mudsdale, .iconPalIndex = 0, + SHADOW(4, 13, SHADOW_SIZE_L) FOOTPRINT(Mudsdale) OVERWORLD( sPicTable_Mudsdale, @@ -2516,6 +2556,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Dewpider, .iconSprite = gMonIcon_Dewpider, .iconPalIndex = 0, + SHADOW(1, 2, SHADOW_SIZE_S) FOOTPRINT(Dewpider) OVERWORLD( sPicTable_Dewpider, @@ -2576,6 +2617,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Araquanid, .iconSprite = gMonIcon_Araquanid, .iconPalIndex = 2, + SHADOW(-6, 9, SHADOW_SIZE_M) FOOTPRINT(Araquanid) OVERWORLD( sPicTable_Araquanid, @@ -2634,6 +2676,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Araquanid, .iconSprite = gMonIcon_Araquanid, .iconPalIndex = 2, + SHADOW(-6, 9, SHADOW_SIZE_S) FOOTPRINT(Araquanid) OVERWORLD( sPicTable_Araquanid, @@ -2700,6 +2743,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Fomantis, .iconSprite = gMonIcon_Fomantis, .iconPalIndex = 1, + SHADOW(0, 3, SHADOW_SIZE_S) FOOTPRINT(Fomantis) OVERWORLD( sPicTable_Fomantis, @@ -2760,6 +2804,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Lurantis, .iconSprite = gMonIcon_Lurantis, .iconPalIndex = 1, + SHADOW(-1, 12, SHADOW_SIZE_S) FOOTPRINT(Lurantis) OVERWORLD( sPicTable_Lurantis, @@ -2818,6 +2863,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Lurantis, .iconSprite = gMonIcon_Lurantis, .iconPalIndex = 1, + SHADOW(-1, 12, SHADOW_SIZE_S) FOOTPRINT(Lurantis) OVERWORLD( sPicTable_Lurantis, @@ -2885,6 +2931,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Morelull, .iconSprite = gMonIcon_Morelull, .iconPalIndex = 0, + SHADOW(-1, 4, SHADOW_SIZE_S) FOOTPRINT(Morelull) OVERWORLD( sPicTable_Morelull, @@ -2949,6 +2996,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Shiinotic, .iconSprite = gMonIcon_Shiinotic, .iconPalIndex = 1, + SHADOW(0, 10, SHADOW_SIZE_S) FOOTPRINT(Shiinotic) OVERWORLD( sPicTable_Shiinotic, @@ -3012,6 +3060,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Salandit, .iconSprite = gMonIcon_Salandit, .iconPalIndex = 2, + SHADOW(3, 1, SHADOW_SIZE_M) FOOTPRINT(Salandit) OVERWORLD( sPicTable_Salandit, @@ -3072,6 +3121,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Salazzle, .iconSprite = gMonIcon_Salazzle, .iconPalIndex = 0, + SHADOW(-4, 9, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Salazzle) OVERWORLD( sPicTable_Salazzle, @@ -3130,6 +3180,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Salazzle, .iconSprite = gMonIcon_Salazzle, .iconPalIndex = 0, + SHADOW(-4, 9, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Salazzle) OVERWORLD( sPicTable_Salazzle, @@ -3195,6 +3246,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Stufful, .iconSprite = gMonIcon_Stufful, .iconPalIndex = 0, + SHADOW(0, 3, SHADOW_SIZE_M) FOOTPRINT(Stufful) OVERWORLD( sPicTable_Stufful, @@ -3257,6 +3309,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Bewear, .iconSprite = gMonIcon_Bewear, .iconPalIndex = 0, + SHADOW(-1, 13, SHADOW_SIZE_M) FOOTPRINT(Bewear) OVERWORLD( sPicTable_Bewear, @@ -3320,6 +3373,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Bounsweet, .iconSprite = gMonIcon_Bounsweet, .iconPalIndex = 1, + SHADOW(-2, -3, SHADOW_SIZE_S) FOOTPRINT(Bounsweet) OVERWORLD( sPicTable_Bounsweet, @@ -3384,6 +3438,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Steenee, .iconSprite = gMonIcon_Steenee, .iconPalIndex = 1, + SHADOW(-2, 7, SHADOW_SIZE_S) FOOTPRINT(Steenee) OVERWORLD( sPicTable_Steenee, @@ -3447,6 +3502,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Tsareena, .iconSprite = gMonIcon_Tsareena, .iconPalIndex = 1, + SHADOW(1, 13, SHADOW_SIZE_M) FOOTPRINT(Tsareena) OVERWORLD( sPicTable_Tsareena, @@ -3512,6 +3568,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Comfey, .iconSprite = gMonIcon_Comfey, .iconPalIndex = 1, + SHADOW(0, 10, SHADOW_SIZE_M) FOOTPRINT(Comfey) OVERWORLD( sPicTable_Comfey, @@ -3575,6 +3632,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Oranguru, .iconSprite = gMonIcon_Oranguru, .iconPalIndex = 0, + SHADOW(-2, 6, SHADOW_SIZE_M) FOOTPRINT(Oranguru) OVERWORLD( sPicTable_Oranguru, @@ -3638,6 +3696,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Passimian, .iconSprite = gMonIcon_Passimian, .iconPalIndex = 1, + SHADOW(-4, 12, SHADOW_SIZE_L) FOOTPRINT(Passimian) OVERWORLD( sPicTable_Passimian, @@ -3701,6 +3760,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Wimpod, .iconSprite = gMonIcon_Wimpod, .iconPalIndex = 2, + SHADOW(-4, -3, SHADOW_SIZE_S) FOOTPRINT(Wimpod) OVERWORLD( sPicTable_Wimpod, @@ -3763,6 +3823,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Golisopod, .iconSprite = gMonIcon_Golisopod, .iconPalIndex = 2, + SHADOW(2, 13, SHADOW_SIZE_L) FOOTPRINT(Golisopod) OVERWORLD( sPicTable_Golisopod, @@ -3826,6 +3887,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Sandygast, .iconSprite = gMonIcon_Sandygast, .iconPalIndex = 1, + NO_SHADOW FOOTPRINT(Sandygast) OVERWORLD( sPicTable_Sandygast, @@ -3889,6 +3951,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Palossand, .iconSprite = gMonIcon_Palossand, .iconPalIndex = 2, + NO_SHADOW FOOTPRINT(Palossand) OVERWORLD( sPicTable_Palossand, @@ -3951,6 +4014,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Pyukumuku, .iconSprite = gMonIcon_Pyukumuku, .iconPalIndex = 0, + SHADOW(-3, -3, SHADOW_SIZE_S) FOOTPRINT(Pyukumuku) OVERWORLD( sPicTable_Pyukumuku, @@ -4014,6 +4078,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_TypeNull, .iconSprite = gMonIcon_TypeNull, .iconPalIndex = 0, + SHADOW(1, 11, SHADOW_SIZE_L) FOOTPRINT(Type_Null) OVERWORLD( sPicTable_TypeNull, @@ -4075,6 +4140,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Silvally##_palette, \ .iconSprite = gMonIcon_Silvally, \ .iconPalIndex = 0, \ + SHADOW(1, 13, SHADOW_SIZE_L) \ FOOTPRINT(Silvally) \ OVERWORLD( \ sPicTable_Silvally, \ @@ -4166,6 +4232,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_MiniorMeteor, \ .iconSprite = gMonIcon_MiniorMeteor, \ .iconPalIndex = 0, \ + SHADOW(0, 14, SHADOW_SIZE_S) \ OVERWORLD( \ sPicTable_MiniorMeteor, \ SIZE_32x32, \ @@ -4202,6 +4269,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_MiniorCore, \ .iconSprite = gMonIcon_MiniorCore##Form, \ .iconPalIndex = iconPal, \ + SHADOW(-2, 12, SHADOW_SIZE_S) \ .formChangeTable = sMinior ##Form##FormChangeTable, \ MINIOR_MISC_INFO(color), \ } @@ -4270,6 +4338,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Komala, .iconSprite = gMonIcon_Komala, .iconPalIndex = 2, + SHADOW(-4, 0, SHADOW_SIZE_S) FOOTPRINT(Komala) OVERWORLD( sPicTable_Komala, @@ -4334,6 +4403,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Turtonator, .iconSprite = gMonIcon_Turtonator, .iconPalIndex = 0, + SHADOW(-3, 12, SHADOW_SIZE_L) FOOTPRINT(Turtonator) OVERWORLD( sPicTable_Turtonator, @@ -4394,6 +4464,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Togedemaru, .iconSprite = gMonIcon_Togedemaru, .iconPalIndex = 2, + SHADOW(-1, 4, SHADOW_SIZE_S) FOOTPRINT(Togedemaru) OVERWORLD( sPicTable_Togedemaru, @@ -4453,6 +4524,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Togedemaru, .iconSprite = gMonIcon_Togedemaru, .iconPalIndex = 2, + SHADOW(-1, 4, SHADOW_SIZE_S) FOOTPRINT(Togedemaru) OVERWORLD( sPicTable_Togedemaru, @@ -4516,6 +4588,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_MimikyuDisguised, .iconSprite = gMonIcon_MimikyuDisguised, .iconPalIndex = 1, + SHADOW(-3, 1, SHADOW_SIZE_S) FOOTPRINT(Mimikyu) OVERWORLD( sPicTable_MimikyuDisguised, @@ -4576,6 +4649,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_MimikyuBusted, .iconSprite = gMonIcon_MimikyuBusted, .iconPalIndex = 1, + SHADOW(-3, 1, SHADOW_SIZE_S) FOOTPRINT(Mimikyu) .levelUpLearnset = sMimikyuLevelUpLearnset, .teachableLearnset = sMimikyuTeachableLearnset, @@ -4628,6 +4702,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_MimikyuDisguised, .iconSprite = gMonIcon_MimikyuDisguised, .iconPalIndex = 1, + SHADOW(-3, 1, SHADOW_SIZE_S) FOOTPRINT(Mimikyu) .isTotem = TRUE, .perfectIVCount = LEGENDARY_PERFECT_IV_COUNT, @@ -4682,6 +4757,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_MimikyuBusted, .iconSprite = gMonIcon_MimikyuBusted, .iconPalIndex = 1, + SHADOW(-3, 1, SHADOW_SIZE_S) FOOTPRINT(Mimikyu) .isTotem = TRUE, .perfectIVCount = LEGENDARY_PERFECT_IV_COUNT, @@ -4742,6 +4818,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Bruxish, .iconSprite = gMonIcon_Bruxish, .iconPalIndex = 0, + SHADOW(0, -1, SHADOW_SIZE_M) FOOTPRINT(Bruxish) OVERWORLD( sPicTable_Bruxish, @@ -4806,6 +4883,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Drampa, .iconSprite = gMonIcon_Drampa, .iconPalIndex = 0, + SHADOW(5, 13, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Drampa) OVERWORLD( sPicTable_Drampa, @@ -4871,6 +4949,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Dhelmise, .iconSprite = gMonIcon_Dhelmise, .iconPalIndex = 1, + SHADOW(-1, 12, SHADOW_SIZE_M) FOOTPRINT(Dhelmise) OVERWORLD( sPicTable_Dhelmise, @@ -4934,6 +5013,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_JangmoO, .iconSprite = gMonIcon_JangmoO, .iconPalIndex = 2, + SHADOW(0, 5, SHADOW_SIZE_S) FOOTPRINT(JangmoO) OVERWORLD( sPicTable_JangmoO, @@ -4997,6 +5077,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_HakamoO, .iconSprite = gMonIcon_HakamoO, .iconPalIndex = 2, + SHADOW(-2, 12, SHADOW_SIZE_M) FOOTPRINT(HakamoO) OVERWORLD( sPicTable_HakamoO, @@ -5056,6 +5137,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_KommoO, .iconSprite = gMonIcon_KommoO, .iconPalIndex = 2, + SHADOW(0, 13, SHADOW_SIZE_L) FOOTPRINT(KommoO) OVERWORLD( sPicTable_KommoO, @@ -5114,6 +5196,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_KommoO, .iconSprite = gMonIcon_KommoO, .iconPalIndex = 2, + SHADOW(0, 13, SHADOW_SIZE_L) FOOTPRINT(KommoO) OVERWORLD( sPicTable_KommoO, @@ -5180,6 +5263,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_TapuKoko, .iconSprite = gMonIcon_TapuKoko, .iconPalIndex = 0, + SHADOW(-1, 19, SHADOW_SIZE_M) FOOTPRINT(TapuKoko) OVERWORLD( sPicTable_TapuKoko, @@ -5245,6 +5329,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_TapuLele, .iconSprite = gMonIcon_TapuLele, .iconPalIndex = 0, + SHADOW(0, 13, SHADOW_SIZE_S) FOOTPRINT(TapuLele) OVERWORLD( sPicTable_TapuLele, @@ -5310,6 +5395,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_TapuBulu, .iconSprite = gMonIcon_TapuBulu, .iconPalIndex = 2, + SHADOW(4, 16, SHADOW_SIZE_M) FOOTPRINT(TapuBulu) OVERWORLD( sPicTable_TapuBulu, @@ -5376,6 +5462,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_TapuFini, .iconSprite = gMonIcon_TapuFini, .iconPalIndex = 0, + SHADOW(1, 15, SHADOW_SIZE_M) FOOTPRINT(TapuFini) OVERWORLD( sPicTable_TapuFini, @@ -5441,6 +5528,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Cosmog, .iconSprite = gMonIcon_Cosmog, .iconPalIndex = 2, + SHADOW(0, 8, SHADOW_SIZE_S) FOOTPRINT(Cosmog) OVERWORLD( sPicTable_Cosmog, @@ -5508,6 +5596,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Cosmoem, .iconSprite = gMonIcon_Cosmoem, .iconPalIndex = 0, + SHADOW(0, 5, SHADOW_SIZE_M) FOOTPRINT(Cosmoem) OVERWORLD( sPicTable_Cosmoem, @@ -5574,6 +5663,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Solgaleo, .iconSprite = gMonIcon_Solgaleo, .iconPalIndex = 0, + SHADOW(-1, 11, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Solgaleo) OVERWORLD( sPicTable_Solgaleo, @@ -5638,6 +5728,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Lunala, .iconSprite = gMonIcon_Lunala, .iconPalIndex = 2, + SHADOW(4, 17, SHADOW_SIZE_L) FOOTPRINT(Lunala) OVERWORLD( sPicTable_Lunala, @@ -5704,6 +5795,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Nihilego, .iconSprite = gMonIcon_Nihilego, .iconPalIndex = 0, + SHADOW(-2, 14, SHADOW_SIZE_S) FOOTPRINT(Nihilego) OVERWORLD( sPicTable_Nihilego, @@ -5769,6 +5861,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Buzzwole, .iconSprite = gMonIcon_Buzzwole, .iconPalIndex = 0, + SHADOW(-2, 12, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Buzzwole) OVERWORLD( sPicTable_Buzzwole, @@ -5833,6 +5926,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Pheromosa, .iconSprite = gMonIcon_Pheromosa, .iconPalIndex = 2, + SHADOW(0, 13, SHADOW_SIZE_S) FOOTPRINT(Pheromosa) OVERWORLD( sPicTable_Pheromosa, @@ -5897,6 +5991,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Xurkitree, .iconSprite = gMonIcon_Xurkitree, .iconPalIndex = 0, + SHADOW(0, 13, SHADOW_SIZE_L) FOOTPRINT(Xurkitree) OVERWORLD( sPicTable_Xurkitree, @@ -5963,6 +6058,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Celesteela, .iconSprite = gMonIcon_Celesteela, .iconPalIndex = 0, + SHADOW(-1, 13, SHADOW_SIZE_M) FOOTPRINT(Celesteela) OVERWORLD( sPicTable_Celesteela, @@ -6028,6 +6124,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Kartana, .iconSprite = gMonIcon_Kartana, .iconPalIndex = 0, + SHADOW(2, 14, SHADOW_SIZE_M) FOOTPRINT(Kartana) OVERWORLD( sPicTable_Kartana, @@ -6092,6 +6189,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Guzzlord, .iconSprite = gMonIcon_Guzzlord, .iconPalIndex = 0, + SHADOW(4, 10, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Guzzlord) OVERWORLD( sPicTable_Guzzlord, @@ -6159,6 +6257,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Necrozma, .iconSprite = gMonIcon_Necrozma, .iconPalIndex = 0, + SHADOW(-1, 15, SHADOW_SIZE_M) FOOTPRINT(Necrozma) OVERWORLD( sPicTable_Necrozma, @@ -6225,6 +6324,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_NecrozmaDuskMane, .iconSprite = gMonIcon_NecrozmaDuskMane, .iconPalIndex = 0, + SHADOW(-3, 11, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Necrozma) OVERWORLD( sPicTable_NecrozmaDuskMane, @@ -6293,6 +6393,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_NecrozmaDawnWings, .iconSprite = gMonIcon_NecrozmaDawnWings, .iconPalIndex = 0, + SHADOW(3, 17, SHADOW_SIZE_L) FOOTPRINT(Necrozma) OVERWORLD( sPicTable_NecrozmaDawnWings, @@ -6364,6 +6465,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_NecrozmaUltra, .iconSprite = gMonIcon_NecrozmaUltra, .iconPalIndex = 2, + SHADOW(-1, 16, SHADOW_SIZE_L) FOOTPRINT(Necrozma) .isLegendary = TRUE, .isUltraBurst = TRUE, @@ -6426,6 +6528,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Magearna, .iconSprite = gMonIcon_Magearna, .iconPalIndex = 0, + SHADOW(-2, 14, SHADOW_SIZE_M) FOOTPRINT(Magearna) OVERWORLD( sPicTable_Magearna, @@ -6489,6 +6592,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_MagearnaOriginalColor, .iconSprite = gMonIcon_MagearnaOriginalColor, .iconPalIndex = 0, + SHADOW(-2, 14, SHADOW_SIZE_M) FOOTPRINT(Magearna) .isMythical = TRUE, .isFrontierBanned = TRUE, @@ -6549,6 +6653,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Marshadow, .iconSprite = gMonIcon_Marshadow, .iconPalIndex = 0, + SHADOW(0, 5, SHADOW_SIZE_S) FOOTPRINT(Marshadow) OVERWORLD( sPicTable_Marshadow, @@ -6614,6 +6719,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Poipole, .iconSprite = gMonIcon_Poipole, .iconPalIndex = 0, + SHADOW(-1, 12, SHADOW_SIZE_S) FOOTPRINT(Poipole) OVERWORLD( sPicTable_Poipole, @@ -6677,6 +6783,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Naganadel, .iconSprite = gMonIcon_Naganadel, .iconPalIndex = 0, + SHADOW(7, 17, SHADOW_SIZE_M) FOOTPRINT(Naganadel) OVERWORLD( sPicTable_Naganadel, @@ -6741,6 +6848,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Stakataka, .iconSprite = gMonIcon_Stakataka, .iconPalIndex = 0, + SHADOW(2, 15, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Stakataka) OVERWORLD( sPicTable_Stakataka, @@ -6805,6 +6913,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Blacephalon, .iconSprite = gMonIcon_Blacephalon, .iconPalIndex = 0, + SHADOW(0, 13, SHADOW_SIZE_M) FOOTPRINT(Blacephalon) OVERWORLD( sPicTable_Blacephalon, @@ -6868,6 +6977,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Zeraora, .iconSprite = gMonIcon_Zeraora, .iconPalIndex = 0, + SHADOW(0, 9, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Zeraora) OVERWORLD( sPicTable_Zeraora, @@ -6932,6 +7042,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Meltan, .iconSprite = gMonIcon_Meltan, .iconPalIndex = 2, + SHADOW(-1, 2, SHADOW_SIZE_S) FOOTPRINT(Meltan) OVERWORLD( sPicTable_Meltan, @@ -6994,6 +7105,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_Melmetal, .iconSprite = gMonIcon_Melmetal, .iconPalIndex = 2, + SHADOW(3, 10, SHADOW_SIZE_L) FOOTPRINT(Melmetal) OVERWORLD( sPicTable_Melmetal, @@ -7060,6 +7172,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .shinyPalette = gMonShinyPalette_MelmetalGigantamax, .iconSprite = gMonIcon_MelmetalGigantamax, .iconPalIndex = 0, + SHADOW(2, 13, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Melmetal) .isMythical = TRUE, .isGigantamax = TRUE, diff --git a/src/data/pokemon/species_info/gen_8_families.h b/src/data/pokemon/species_info/gen_8_families.h index a18f314547..b40b31a25d 100644 --- a/src/data/pokemon/species_info/gen_8_families.h +++ b/src/data/pokemon/species_info/gen_8_families.h @@ -51,6 +51,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Grookey, .iconSprite = gMonIcon_Grookey, .iconPalIndex = 1, + SHADOW(1, 1, SHADOW_SIZE_S) FOOTPRINT(Grookey) OVERWORLD( sPicTable_Grookey, @@ -112,6 +113,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Thwackey, .iconSprite = gMonIcon_Thwackey, .iconPalIndex = 1, + SHADOW(5, 6, SHADOW_SIZE_M) FOOTPRINT(Thwackey) OVERWORLD( sPicTable_Thwackey, @@ -172,6 +174,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Rillaboom, .iconSprite = gMonIcon_Rillaboom, .iconPalIndex = 1, + SHADOW(2, 8, SHADOW_SIZE_L) FOOTPRINT(Rillaboom) OVERWORLD( sPicTable_Rillaboom, @@ -234,6 +237,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_RillaboomGigantamax, .iconSprite = gMonIcon_RillaboomGigantamax, .iconPalIndex = 1, + SHADOW(0, 8, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Rillaboom) .isGigantamax = TRUE, .levelUpLearnset = sRillaboomLevelUpLearnset, @@ -292,6 +296,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Scorbunny, .iconSprite = gMonIcon_Scorbunny, .iconPalIndex = 0, + SHADOW(-1, 6, SHADOW_SIZE_S) FOOTPRINT(Scorbunny) OVERWORLD( sPicTable_Scorbunny, @@ -353,6 +358,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Raboot, .iconSprite = gMonIcon_Raboot, .iconPalIndex = 0, + SHADOW(-4, 5, SHADOW_SIZE_S) FOOTPRINT(Raboot) OVERWORLD( sPicTable_Raboot, @@ -414,6 +420,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Cinderace, .iconSprite = gMonIcon_Cinderace, .iconPalIndex = 0, + SHADOW(0, 14, SHADOW_SIZE_M) FOOTPRINT(Cinderace) OVERWORLD( sPicTable_Cinderace, @@ -477,6 +484,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_CinderaceGigantamax, .iconSprite = gMonIcon_CinderaceGigantamax, .iconPalIndex = 0, + SHADOW(-3, 13, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Cinderace) .isGigantamax = TRUE, .levelUpLearnset = sCinderaceLevelUpLearnset, @@ -536,6 +544,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Sobble, .iconSprite = gMonIcon_Sobble, .iconPalIndex = 2, + SHADOW(-3, 3, SHADOW_SIZE_S) FOOTPRINT(Sobble) OVERWORLD( sPicTable_Sobble, @@ -597,6 +606,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Drizzile, .iconSprite = gMonIcon_Drizzile, .iconPalIndex = 2, + SHADOW(2, 5, SHADOW_SIZE_M) FOOTPRINT(Drizzile) OVERWORLD( sPicTable_Drizzile, @@ -658,6 +668,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Inteleon, .iconSprite = gMonIcon_Inteleon, .iconPalIndex = 0, + SHADOW(-5, 12, SHADOW_SIZE_S) FOOTPRINT(Inteleon) OVERWORLD( sPicTable_Inteleon, @@ -721,6 +732,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_InteleonGigantamax, .iconSprite = gMonIcon_InteleonGigantamax, .iconPalIndex = 0, + SHADOW(-5, 12, SHADOW_SIZE_L) FOOTPRINT(Inteleon) .isGigantamax = TRUE, .levelUpLearnset = sInteleonLevelUpLearnset, @@ -779,6 +791,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Skwovet, .iconSprite = gMonIcon_Skwovet, .iconPalIndex = 2, + SHADOW(-7, 5, SHADOW_SIZE_S) FOOTPRINT(Skwovet) OVERWORLD( sPicTable_Skwovet, @@ -842,6 +855,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Greedent, .iconSprite = gMonIcon_Greedent, .iconPalIndex = 0, + SHADOW(-11, 10, SHADOW_SIZE_M) FOOTPRINT(Greedent) OVERWORLD( sPicTable_Greedent, @@ -904,6 +918,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Rookidee, .iconSprite = gMonIcon_Rookidee, .iconPalIndex = 0, + SHADOW(-1, -3, SHADOW_SIZE_S) FOOTPRINT(Rookidee) OVERWORLD( sPicTable_Rookidee, @@ -967,6 +982,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Corvisquire, .iconSprite = gMonIcon_Corvisquire, .iconPalIndex = 0, + SHADOW(2, 16, SHADOW_SIZE_S) FOOTPRINT(Corvisquire) OVERWORLD( sPicTable_Corvisquire, @@ -1028,6 +1044,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Corviknight, .iconSprite = gMonIcon_Corviknight, .iconPalIndex = 0, + SHADOW(-1, 9, SHADOW_SIZE_L) FOOTPRINT(Corviknight) OVERWORLD( sPicTable_Corviknight, @@ -1091,6 +1108,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_CorviknightGigantamax, .iconSprite = gMonIcon_CorviknightGigantamax, .iconPalIndex = 0, + SHADOW(2, 8, SHADOW_SIZE_L) FOOTPRINT(Corviknight) .isGigantamax = TRUE, .levelUpLearnset = sCorviknightLevelUpLearnset, @@ -1148,6 +1166,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Blipbug, .iconSprite = gMonIcon_Blipbug, .iconPalIndex = 0, + SHADOW(2, 1, SHADOW_SIZE_S) FOOTPRINT(Blipbug) OVERWORLD( sPicTable_Blipbug, @@ -1212,6 +1231,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Dottler, .iconSprite = gMonIcon_Dottler, .iconPalIndex = 2, + SHADOW(-1, 0, SHADOW_SIZE_M) FOOTPRINT(Dottler) OVERWORLD( sPicTable_Dottler, @@ -1275,6 +1295,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Orbeetle, .iconSprite = gMonIcon_Orbeetle, .iconPalIndex = 0, + SHADOW(0, 15, SHADOW_SIZE_M) FOOTPRINT(Orbeetle) OVERWORLD( sPicTable_Orbeetle, @@ -1339,6 +1360,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_OrbeetleGigantamax, .iconSprite = gMonIcon_OrbeetleGigantamax, .iconPalIndex = 0, + SHADOW(0, 12, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Orbeetle) .isGigantamax = TRUE, .levelUpLearnset = sOrbeetleLevelUpLearnset, @@ -1397,6 +1419,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Nickit, .iconSprite = gMonIcon_Nickit, .iconPalIndex = 2, + SHADOW(0, 4, SHADOW_SIZE_M) FOOTPRINT(Nickit) OVERWORLD( sPicTable_Nickit, @@ -1459,6 +1482,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Thievul, .iconSprite = gMonIcon_Thievul, .iconPalIndex = 2, + SHADOW(-9, 7, SHADOW_SIZE_M) FOOTPRINT(Thievul) OVERWORLD( sPicTable_Thievul, @@ -1521,6 +1545,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Gossifleur, .iconSprite = gMonIcon_Gossifleur, .iconPalIndex = 1, + SHADOW(0, 2, SHADOW_SIZE_S) FOOTPRINT(Gossifleur) OVERWORLD( sPicTable_Gossifleur, @@ -1583,6 +1608,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Eldegoss, .iconSprite = gMonIcon_Eldegoss, .iconPalIndex = 1, + SHADOW(-2, 8, SHADOW_SIZE_S) FOOTPRINT(Eldegoss) OVERWORLD( sPicTable_Eldegoss, @@ -1645,6 +1671,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Wooloo, .iconSprite = gMonIcon_Wooloo, .iconPalIndex = 0, + SHADOW(1, 1, SHADOW_SIZE_S) FOOTPRINT(Wooloo) OVERWORLD( sPicTable_Wooloo, @@ -1707,6 +1734,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Dubwool, .iconSprite = gMonIcon_Dubwool, .iconPalIndex = 2, + SHADOW(2, 8, SHADOW_SIZE_M) FOOTPRINT(Dubwool) OVERWORLD( sPicTable_Dubwool, @@ -1768,6 +1796,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Chewtle, .iconSprite = gMonIcon_Chewtle, .iconPalIndex = 0, + SHADOW(3, 1, SHADOW_SIZE_S) FOOTPRINT(Chewtle) OVERWORLD( sPicTable_Chewtle, @@ -1829,6 +1858,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Drednaw, .iconSprite = gMonIcon_Drednaw, .iconPalIndex = 0, + SHADOW(-2, 4, SHADOW_SIZE_L) FOOTPRINT(Drednaw) OVERWORLD( sPicTable_Drednaw, @@ -1892,6 +1922,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_DrednawGigantamax, .iconSprite = gMonIcon_DrednawGigantamax, .iconPalIndex = 0, + SHADOW(2, 12, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Drednaw) .isGigantamax = TRUE, .levelUpLearnset = sDrednawLevelUpLearnset, @@ -1950,6 +1981,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Yamper, .iconSprite = gMonIcon_Yamper, .iconPalIndex = 1, + SHADOW(-1, 2, SHADOW_SIZE_M) FOOTPRINT(Yamper) OVERWORLD( sPicTable_Yamper, @@ -2012,6 +2044,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Boltund, .iconSprite = gMonIcon_Boltund, .iconPalIndex = 1, + SHADOW(0, 7, SHADOW_SIZE_M) FOOTPRINT(Boltund) OVERWORLD( sPicTable_Boltund, @@ -2074,6 +2107,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Rolycoly, .iconSprite = gMonIcon_Rolycoly, .iconPalIndex = 0, + SHADOW(0, -3, SHADOW_SIZE_S) FOOTPRINT(Rolycoly) OVERWORLD( sPicTable_Rolycoly, @@ -2135,6 +2169,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Carkol, .iconSprite = gMonIcon_Carkol, .iconPalIndex = 0, + SHADOW(0, 3, SHADOW_SIZE_M) FOOTPRINT(Carkol) OVERWORLD( sPicTable_Carkol, @@ -2196,6 +2231,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Coalossal, .iconSprite = gMonIcon_Coalossal, .iconPalIndex = 0, + SHADOW(1, 12, SHADOW_SIZE_L) FOOTPRINT(Coalossal) OVERWORLD( sPicTable_Coalossal, @@ -2259,6 +2295,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_CoalossalGigantamax, .iconSprite = gMonIcon_CoalossalGigantamax, .iconPalIndex = 0, + SHADOW(1, 12, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Coalossal) .isGigantamax = TRUE, .levelUpLearnset = sCoalossalLevelUpLearnset, @@ -2317,6 +2354,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Applin, .iconSprite = gMonIcon_Applin, .iconPalIndex = 1, + SHADOW(-1, -3, SHADOW_SIZE_S) FOOTPRINT(Applin) OVERWORLD( sPicTable_Applin, @@ -2382,6 +2420,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Flapple, .iconSprite = gMonIcon_Flapple, .iconPalIndex = 1, + SHADOW(-6, 11, SHADOW_SIZE_S) FOOTPRINT(Flapple) OVERWORLD( sPicTable_Flapple, @@ -2445,6 +2484,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_FlappleGigantamax, .iconSprite = gMonIcon_FlappleGigantamax, .iconPalIndex = 1, + SHADOW(0, 10, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Flapple) .isGigantamax = TRUE, .levelUpLearnset = sFlappleLevelUpLearnset, @@ -2500,6 +2540,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Appletun, .iconSprite = gMonIcon_Appletun, .iconPalIndex = 1, + SHADOW(5, 6, SHADOW_SIZE_L) FOOTPRINT(Appletun) OVERWORLD( sPicTable_Appletun, @@ -2563,6 +2604,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_AppletunGigantamax, .iconSprite = gMonIcon_AppletunGigantamax, .iconPalIndex = 1, + SHADOW(0, 10, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Appletun) .isGigantamax = TRUE, .levelUpLearnset = sAppletunLevelUpLearnset, @@ -2619,6 +2661,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Dipplin, .iconSprite = gMonIcon_Dipplin, .iconPalIndex = 1, + SHADOW(-4, 8, SHADOW_SIZE_S) FOOTPRINT(Dipplin) OVERWORLD( sPicTable_Dipplin, @@ -2680,6 +2723,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Hydrapple, .iconSprite = gMonIcon_Hydrapple, .iconPalIndex = 5, + SHADOW(1, 12, SHADOW_SIZE_L) FOOTPRINT(Hydrapple) OVERWORLD( sPicTable_Hydrapple, @@ -2742,6 +2786,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Silicobra, .iconSprite = gMonIcon_Silicobra, .iconPalIndex = 1, + SHADOW(3, 1, SHADOW_SIZE_M) FOOTPRINT(Silicobra) OVERWORLD( sPicTable_Silicobra, @@ -2804,6 +2849,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Sandaconda, .iconSprite = gMonIcon_Sandaconda, .iconPalIndex = 1, + SHADOW(2, -1, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Sandaconda) OVERWORLD( sPicTable_Sandaconda, @@ -2867,6 +2913,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_SandacondaGigantamax, .iconSprite = gMonIcon_SandacondaGigantamax, .iconPalIndex = 1, + SHADOW(0, 14, SHADOW_SIZE_M) FOOTPRINT(Sandaconda) .isGigantamax = TRUE, .levelUpLearnset = sSandacondaLevelUpLearnset, @@ -2924,6 +2971,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Cramorant, .iconSprite = gMonIcon_Cramorant, .iconPalIndex = 0, + SHADOW(5, 14, SHADOW_SIZE_M) FOOTPRINT(Cramorant) OVERWORLD( sPicTable_Cramorant, @@ -2987,6 +3035,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_CramorantGulping, .iconSprite = gMonIcon_CramorantGulping, .iconPalIndex = 0, + SHADOW(5, 14, SHADOW_SIZE_M) FOOTPRINT(Cramorant) .levelUpLearnset = sCramorantLevelUpLearnset, .teachableLearnset = sCramorantTeachableLearnset, @@ -3042,6 +3091,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_CramorantGorging, .iconSprite = gMonIcon_CramorantGorging, .iconPalIndex = 0, + SHADOW(5, 14, SHADOW_SIZE_M) FOOTPRINT(Cramorant) .levelUpLearnset = sCramorantLevelUpLearnset, .teachableLearnset = sCramorantTeachableLearnset, @@ -3099,6 +3149,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Arrokuda, .iconSprite = gMonIcon_Arrokuda, .iconPalIndex = 2, + SHADOW(-1, -5, SHADOW_SIZE_S) FOOTPRINT(Arrokuda) OVERWORLD( sPicTable_Arrokuda, @@ -3161,6 +3212,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Barraskewda, .iconSprite = gMonIcon_Barraskewda, .iconPalIndex = 2, + SHADOW(4, 5, SHADOW_SIZE_M) FOOTPRINT(Barraskewda) OVERWORLD( sPicTable_Barraskewda, @@ -3223,6 +3275,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Toxel, .iconSprite = gMonIcon_Toxel, .iconPalIndex = 2, + SHADOW(-2, 1, SHADOW_SIZE_M) FOOTPRINT(Toxel) OVERWORLD( sPicTable_Toxel, @@ -3286,6 +3339,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_ToxtricityAmped, .iconSprite = gMonIcon_ToxtricityAmped, .iconPalIndex = 2, + SHADOW(-6, 13, SHADOW_SIZE_M) FOOTPRINT(Toxtricity) OVERWORLD( sPicTable_ToxtricityAmped, @@ -3345,6 +3399,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_ToxtricityGigantamax, .iconSprite = gMonIcon_ToxtricityGigantamax, .iconPalIndex = 0, + SHADOW(1, 10, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Toxtricity) .isGigantamax = TRUE, .levelUpLearnset = sToxtricityAmpedLevelUpLearnset, @@ -3400,6 +3455,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_ToxtricityLowKey, .iconSprite = gMonIcon_ToxtricityLowKey, .iconPalIndex = 2, + SHADOW(1, 12, SHADOW_SIZE_M) FOOTPRINT(Toxtricity) OVERWORLD( sPicTable_ToxtricityLowKey, @@ -3459,6 +3515,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_ToxtricityGigantamax, .iconSprite = gMonIcon_ToxtricityGigantamax, .iconPalIndex = 0, + SHADOW(1, 10, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Toxtricity) OVERWORLD( sPicTable_ToxtricityLowKey, @@ -3524,6 +3581,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Sizzlipede, .iconSprite = gMonIcon_Sizzlipede, .iconPalIndex = 0, + SHADOW(6, -4, SHADOW_SIZE_S) FOOTPRINT(Sizzlipede) OVERWORLD( sPicTable_Sizzlipede, @@ -3586,6 +3644,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Centiskorch, .iconSprite = gMonIcon_Centiskorch, .iconPalIndex = 0, + SHADOW(-3, 7, SHADOW_SIZE_M) FOOTPRINT(Centiskorch) OVERWORLD( sPicTable_Centiskorch, @@ -3649,6 +3708,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_CentiskorchGigantamax, .iconSprite = gMonIcon_CentiskorchGigantamax, .iconPalIndex = 0, + SHADOW(6, 9, SHADOW_SIZE_L) FOOTPRINT(Centiskorch) .isGigantamax = TRUE, .levelUpLearnset = sCentiskorchLevelUpLearnset, @@ -3707,6 +3767,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Clobbopus, .iconSprite = gMonIcon_Clobbopus, .iconPalIndex = 0, + SHADOW(1, -2, SHADOW_SIZE_S) FOOTPRINT(Clobbopus) OVERWORLD( sPicTable_Clobbopus, @@ -3768,6 +3829,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Grapploct, .iconSprite = gMonIcon_Grapploct, .iconPalIndex = 2, + SHADOW(4, 9, SHADOW_SIZE_M) FOOTPRINT(Grapploct) OVERWORLD( sPicTable_Grapploct, @@ -3830,6 +3892,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Sinistea, .iconSprite = gMonIcon_Sinistea, .iconPalIndex = 2, + SHADOW(3, 3, SHADOW_SIZE_S) FOOTPRINT(Sinistea) OVERWORLD( sPicTable_Sinistea, @@ -3893,6 +3956,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Sinistea, .iconSprite = gMonIcon_Sinistea, .iconPalIndex = 2, + SHADOW(3, 4, SHADOW_SIZE_S) FOOTPRINT(Sinistea) OVERWORLD( sPicTable_Sinistea, @@ -3955,6 +4019,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Polteageist, .iconSprite = gMonIcon_Polteageist, .iconPalIndex = 2, + SHADOW(0, 12, SHADOW_SIZE_S) FOOTPRINT(Polteageist) OVERWORLD( sPicTable_Polteageist, @@ -4017,6 +4082,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Polteageist, .iconSprite = gMonIcon_Polteageist, .iconPalIndex = 2, + SHADOW(0, 11, SHADOW_SIZE_S) FOOTPRINT(Polteageist) OVERWORLD( sPicTable_Polteageist, @@ -4080,6 +4146,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Hatenna, .iconSprite = gMonIcon_Hatenna, .iconPalIndex = 0, + SHADOW(0, 1, SHADOW_SIZE_M) FOOTPRINT(Hatenna) OVERWORLD( sPicTable_Hatenna, @@ -4141,6 +4208,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Hattrem, .iconSprite = gMonIcon_Hattrem, .iconPalIndex = 0, + SHADOW(0, 5, SHADOW_SIZE_M) FOOTPRINT(Hattrem) OVERWORLD( sPicTable_Hattrem, @@ -4201,6 +4269,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Hatterene, .iconSprite = gMonIcon_Hatterene, .iconPalIndex = 0, + SHADOW(6, 13, SHADOW_SIZE_S) FOOTPRINT(Hatterene) OVERWORLD( sPicTable_Hatterene, @@ -4264,6 +4333,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_HattereneGigantamax, .iconSprite = gMonIcon_HattereneGigantamax, .iconPalIndex = 0, + SHADOW(-3, 13, SHADOW_SIZE_S) FOOTPRINT(Hatterene) .isGigantamax = TRUE, .levelUpLearnset = sHattereneLevelUpLearnset, @@ -4322,6 +4392,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Impidimp, .iconSprite = gMonIcon_Impidimp, .iconPalIndex = 0, + SHADOW(0, 2, SHADOW_SIZE_S) FOOTPRINT(Impidimp) OVERWORLD( sPicTable_Impidimp, @@ -4383,6 +4454,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Morgrem, .iconSprite = gMonIcon_Morgrem, .iconPalIndex = 0, + SHADOW(0, 7, SHADOW_SIZE_M) FOOTPRINT(Morgrem) OVERWORLD( sPicTable_Morgrem, @@ -4444,6 +4516,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Grimmsnarl, .iconSprite = gMonIcon_Grimmsnarl, .iconPalIndex = 0, + SHADOW(1, 11, SHADOW_SIZE_L) FOOTPRINT(Grimmsnarl) OVERWORLD( sPicTable_Grimmsnarl, @@ -4507,6 +4580,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_GrimmsnarlGigantamax, .iconSprite = gMonIcon_GrimmsnarlGigantamax, .iconPalIndex = 0, + SHADOW(0, 14, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Grimmsnarl) .isGigantamax = TRUE, .levelUpLearnset = sGrimmsnarlLevelUpLearnset, @@ -4565,6 +4639,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Milcery, .iconSprite = gMonIcon_Milcery, .iconPalIndex = 1, + SHADOW(0, 6, SHADOW_SIZE_S) FOOTPRINT(Milcery) OVERWORLD( sPicTable_Milcery, @@ -4634,6 +4709,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Alcremie ##sweet, \ .iconSprite = gMonIcon_AlcremieStrawberryVanillaCream, /*AlcremieStrawberry##cream##*/ \ .iconPalIndex = 1, \ + SHADOW(0, 5, SHADOW_SIZE_S) \ FOOTPRINT(Alcremie) \ OVERWORLD( \ sPicTable_AlcremieStrawberry, /*Alcremie ##sweet*/ \ @@ -4744,6 +4820,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_AlcremieGigantamax, .iconSprite = gMonIcon_AlcremieGigantamax, .iconPalIndex = 1, + SHADOW(0, 10, SHADOW_SIZE_L) FOOTPRINT(Alcremie) .isGigantamax = TRUE, .levelUpLearnset = sAlcremieLevelUpLearnset, @@ -4801,6 +4878,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Falinks, .iconSprite = gMonIcon_Falinks, .iconPalIndex = 0, + SHADOW(-7, 5, SHADOW_SIZE_S) FOOTPRINT(Falinks) OVERWORLD( sPicTable_Falinks, @@ -4862,6 +4940,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Pincurchin, .iconSprite = gMonIcon_Pincurchin, .iconPalIndex = 2, + SHADOW(-1, -4, SHADOW_SIZE_S) FOOTPRINT(Pincurchin) OVERWORLD( sPicTable_Pincurchin, @@ -4926,6 +5005,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Snom, .iconSprite = gMonIcon_Snom, .iconPalIndex = 0, + SHADOW(-2, -7, SHADOW_SIZE_S) FOOTPRINT(Snom) OVERWORLD( sPicTable_Snom, @@ -4989,6 +5069,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Frosmoth, .iconSprite = gMonIcon_Frosmoth, .iconPalIndex = 0, + SHADOW(-7, 13, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Frosmoth) OVERWORLD( sPicTable_Frosmoth, @@ -5051,6 +5132,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Stonjourner, .iconSprite = gMonIcon_Stonjourner, .iconPalIndex = 2, + SHADOW(0, 10, SHADOW_SIZE_L) FOOTPRINT(Stonjourner) OVERWORLD( sPicTable_Stonjourner, @@ -5114,6 +5196,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_EiscueIceFace, .iconSprite = gMonIcon_EiscueIceFace, .iconPalIndex = 0, + SHADOW(-1, 13, SHADOW_SIZE_S) FOOTPRINT(Eiscue) OVERWORLD( sPicTable_EiscueIceFace, @@ -5177,6 +5260,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_EiscueNoiceFace, .iconSprite = gMonIcon_EiscueNoiceFace, .iconPalIndex = 0, + SHADOW(-1, 13, SHADOW_SIZE_S) FOOTPRINT(Eiscue) .levelUpLearnset = sEiscueLevelUpLearnset, .teachableLearnset = sEiscueTeachableLearnset, @@ -5234,6 +5318,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_IndeedeeMale, .iconSprite = gMonIcon_IndeedeeMale, .iconPalIndex = 2, + SHADOW(2, 4, SHADOW_SIZE_S) FOOTPRINT(Indeedee) OVERWORLD( sPicTable_IndeedeeMale, @@ -5295,6 +5380,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_IndeedeeFemale, .iconSprite = gMonIcon_IndeedeeFemale, .iconPalIndex = 2, + SHADOW(2, 4, SHADOW_SIZE_S) FOOTPRINT(Indeedee) OVERWORLD( sPicTable_IndeedeeFemale, @@ -5359,6 +5445,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_MorpekoFullBelly, .iconSprite = gMonIcon_MorpekoFullBelly, .iconPalIndex = 2, + SHADOW(0, 0, SHADOW_SIZE_S) FOOTPRINT(Morpeko) OVERWORLD( sPicTable_MorpekoFullBelly, @@ -5422,6 +5509,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_MorpekoHangry, .iconSprite = gMonIcon_MorpekoHangry, .iconPalIndex = 2, + SHADOW(0, 0, SHADOW_SIZE_S) FOOTPRINT(Morpeko) .levelUpLearnset = sMorpekoLevelUpLearnset, .teachableLearnset = sMorpekoTeachableLearnset, @@ -5480,6 +5568,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Cufant, .iconSprite = gMonIcon_Cufant, .iconPalIndex = 0, + SHADOW(5, 2, SHADOW_SIZE_M) FOOTPRINT(Cufant) OVERWORLD( sPicTable_Cufant, @@ -5542,6 +5631,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Copperajah, .iconSprite = gMonIcon_Copperajah, .iconPalIndex = 0, + SHADOW(6, 7, SHADOW_SIZE_L) FOOTPRINT(Copperajah) OVERWORLD( sPicTable_Copperajah, @@ -5606,6 +5696,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_CopperajahGigantamax, .iconSprite = gMonIcon_CopperajahGigantamax, .iconPalIndex = 0, + SHADOW(0, 11, SHADOW_SIZE_L) FOOTPRINT(Copperajah) .isGigantamax = TRUE, .levelUpLearnset = sCopperajahLevelUpLearnset, @@ -5664,6 +5755,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Dracozolt, .iconSprite = gMonIcon_Dracozolt, .iconPalIndex = 1, + SHADOW(-4, 10, SHADOW_SIZE_L) FOOTPRINT(Dracozolt) OVERWORLD( sPicTable_Dracozolt, @@ -5725,6 +5817,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Arctozolt, .iconSprite = gMonIcon_Arctozolt, .iconPalIndex = 0, + SHADOW(-2, 11, SHADOW_SIZE_M) FOOTPRINT(Arctozolt) OVERWORLD( sPicTable_Arctozolt, @@ -5787,6 +5880,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Dracovish, .iconSprite = gMonIcon_Dracovish, .iconPalIndex = 0, + SHADOW(2, 11, SHADOW_SIZE_M) FOOTPRINT(Dracovish) OVERWORLD( sPicTable_Dracovish, @@ -5849,6 +5943,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Arctovish, .iconSprite = gMonIcon_Arctovish, .iconPalIndex = 0, + SHADOW(0, 11, SHADOW_SIZE_L) FOOTPRINT(Arctovish) OVERWORLD( sPicTable_Arctovish, @@ -5910,6 +6005,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Duraludon, .iconSprite = gMonIcon_Duraludon, .iconPalIndex = 0, + SHADOW(2, 11, SHADOW_SIZE_L) FOOTPRINT(Duraludon) OVERWORLD( sPicTable_Duraludon, @@ -5975,6 +6071,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_DuraludonGigantamax, .iconSprite = gMonIcon_DuraludonGigantamax, .iconPalIndex = 0, + SHADOW(3, 12, SHADOW_SIZE_L) FOOTPRINT(Duraludon) .isGigantamax = TRUE, .levelUpLearnset = sDuraludonLevelUpLearnset, @@ -6033,6 +6130,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Archaludon, .iconSprite = gMonIcon_Archaludon, .iconPalIndex = 0, + SHADOW(4, 14, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Archaludon) OVERWORLD( sPicTable_Archaludon, @@ -6097,6 +6195,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Dreepy, .iconSprite = gMonIcon_Dreepy, .iconPalIndex = 0, + SHADOW(0, 2, SHADOW_SIZE_S) FOOTPRINT(Dreepy) OVERWORLD( sPicTable_Dreepy, @@ -6159,6 +6258,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Drakloak, .iconSprite = gMonIcon_Drakloak, .iconPalIndex = 0, + SHADOW(0, 9, SHADOW_SIZE_M) FOOTPRINT(Drakloak) OVERWORLD( sPicTable_Drakloak, @@ -6221,6 +6321,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Dragapult, .iconSprite = gMonIcon_Dragapult, .iconPalIndex = 0, + SHADOW(0, 12, SHADOW_SIZE_M) FOOTPRINT(Dragapult) OVERWORLD( sPicTable_Dragapult, @@ -6282,6 +6383,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_ZacianHeroOfManyBattles, .iconSprite = gMonIcon_ZacianHeroOfManyBattles, .iconPalIndex = 2, + SHADOW(-1, 9, SHADOW_SIZE_L) FOOTPRINT(Zacian) OVERWORLD( sPicTable_ZacianHeroOfManyBattles, @@ -6347,6 +6449,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_ZacianCrownedSword, .iconSprite = gMonIcon_ZacianCrownedSword, .iconPalIndex = 2, + SHADOW(-3, 12, SHADOW_SIZE_L) FOOTPRINT(Zacian) OVERWORLD( sPicTable_ZacianCrownedSword, @@ -6414,6 +6517,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_ZamazentaHeroOfManyBattles, .iconSprite = gMonIcon_ZamazentaHeroOfManyBattles, .iconPalIndex = 2, + SHADOW(-1, 12, SHADOW_SIZE_L) FOOTPRINT(Zamazenta) OVERWORLD( sPicTable_ZamazentaHeroOfManyBattles, @@ -6479,6 +6583,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_ZamazentaCrownedShield, .iconSprite = gMonIcon_ZamazentaCrownedShield, .iconPalIndex = 2, + SHADOW(0, 12, SHADOW_SIZE_L) FOOTPRINT(Zamazenta) OVERWORLD( sPicTable_ZamazentaCrownedShield, @@ -6547,6 +6652,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Eternatus, .iconSprite = gMonIcon_Eternatus, .iconPalIndex = 0, + SHADOW(0, 14, SHADOW_SIZE_L) FOOTPRINT(Eternatus) OVERWORLD( sPicTable_Eternatus, @@ -6612,6 +6718,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_EternatusEternamax, .iconSprite = gMonIcon_EternatusEternamax, .iconPalIndex = 0, + SHADOW(-3, 20, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Eternatus) .isLegendary = TRUE, .isFrontierBanned = TRUE, @@ -6669,6 +6776,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Kubfu, .iconSprite = gMonIcon_Kubfu, .iconPalIndex = 1, + SHADOW(-2, 5, SHADOW_SIZE_S) FOOTPRINT(Kubfu) OVERWORLD( sPicTable_Kubfu, @@ -6735,6 +6843,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_UrshifuSingleStrikeStyle, .iconSprite = gMonIcon_Urshifu, .iconPalIndex = 2, + SHADOW(0, 14, SHADOW_SIZE_L) FOOTPRINT(Urshifu) OVERWORLD( sPicTable_Urshifu, @@ -6800,6 +6909,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_UrshifuSingleStrikeStyleGigantamax, .iconSprite = gMonIcon_UrshifuSingleStrikeStyleGigantamax, .iconPalIndex = 0, + SHADOW(1, 13, SHADOW_SIZE_L) FOOTPRINT(Urshifu) .isLegendary = TRUE, .isGigantamax = TRUE, @@ -6857,6 +6967,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_UrshifuRapidStrikeStyle, .iconSprite = gMonIcon_Urshifu, .iconPalIndex = 2, + SHADOW(4, 14, SHADOW_SIZE_M) FOOTPRINT(Urshifu) OVERWORLD( sPicTable_Urshifu, @@ -6922,6 +7033,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_UrshifuRapidStrikeStyleGigantamax, .iconSprite = gMonIcon_UrshifuRapidStrikeStyleGigantamax, .iconPalIndex = 0, + SHADOW(2, 13, SHADOW_SIZE_M) FOOTPRINT(Urshifu) .isLegendary = TRUE, .isGigantamax = TRUE, @@ -6982,6 +7094,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Zarude, .iconSprite = gMonIcon_Zarude, .iconPalIndex = 1, + SHADOW(5, 11, SHADOW_SIZE_L) FOOTPRINT(Zarude) OVERWORLD( sPicTable_Zarude, @@ -7045,6 +7158,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_ZarudeDada, .iconSprite = gMonIcon_ZarudeDada, .iconPalIndex = 1, + SHADOW(5, 11, SHADOW_SIZE_L) FOOTPRINT(Zarude) .isMythical = TRUE, .isFrontierBanned = TRUE, @@ -7104,6 +7218,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Regieleki, .iconSprite = gMonIcon_Regieleki, .iconPalIndex = 0, + SHADOW(-3, 14, SHADOW_SIZE_S) FOOTPRINT(Regieleki) OVERWORLD( sPicTable_Regieleki, @@ -7169,6 +7284,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Regidrago, .iconSprite = gMonIcon_Regidrago, .iconPalIndex = 0, + SHADOW(0, 13, SHADOW_SIZE_M) FOOTPRINT(Regidrago) OVERWORLD( sPicTable_Regidrago, @@ -7232,6 +7348,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Glastrier, .iconSprite = gMonIcon_Glastrier, .iconPalIndex = 0, + SHADOW(-5, 11, SHADOW_SIZE_L) FOOTPRINT(Glastrier) OVERWORLD( sPicTable_Glastrier, @@ -7296,6 +7413,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Spectrier, .iconSprite = gMonIcon_Spectrier, .iconPalIndex = 0, + SHADOW(-6, 12, SHADOW_SIZE_L) FOOTPRINT(Spectrier) OVERWORLD( sPicTable_Spectrier, @@ -7360,6 +7478,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_Calyrex, .iconSprite = gMonIcon_Calyrex, .iconPalIndex = 0, + SHADOW(-1, 12, SHADOW_SIZE_S) FOOTPRINT(Calyrex) OVERWORLD( sPicTable_Calyrex, @@ -7425,6 +7544,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_CalyrexIceRider, .iconSprite = gMonIcon_CalyrexIceRider, .iconPalIndex = 0, + SHADOW(-5, 11, SHADOW_SIZE_L) FOOTPRINT(Calyrex) OVERWORLD( sPicTable_CalyrexIceRider, @@ -7490,6 +7610,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_CalyrexShadowRider, .iconSprite = gMonIcon_CalyrexShadowRider, .iconPalIndex = 0, + SHADOW(-5, 12, SHADOW_SIZE_L) FOOTPRINT(Calyrex) OVERWORLD( sPicTable_CalyrexShadowRider, @@ -7559,6 +7680,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_EnamorusIncarnate, .iconSprite = gMonIcon_EnamorusIncarnate, .iconPalIndex = 1, + SHADOW(0, 17, SHADOW_SIZE_M) FOOTPRINT(Enamorus) OVERWORLD( sPicTable_EnamorusIncarnate, @@ -7622,6 +7744,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .shinyPalette = gMonShinyPalette_EnamorusTherian, .iconSprite = gMonIcon_EnamorusTherian, .iconPalIndex = 1, + SHADOW(2, 8, SHADOW_SIZE_L) FOOTPRINT(Enamorus) OVERWORLD( sPicTable_EnamorusTherian, diff --git a/src/data/pokemon/species_info/gen_9_families.h b/src/data/pokemon/species_info/gen_9_families.h index 08614606f7..922e57784b 100644 --- a/src/data/pokemon/species_info/gen_9_families.h +++ b/src/data/pokemon/species_info/gen_9_families.h @@ -51,6 +51,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Sprigatito, .iconSprite = gMonIcon_Sprigatito, .iconPalIndex = 1, + SHADOW(-2, 5, SHADOW_SIZE_S) FOOTPRINT(Sprigatito) OVERWORLD( sPicTable_Sprigatito, @@ -113,6 +114,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Floragato, .iconSprite = gMonIcon_Floragato, .iconPalIndex = 1, + SHADOW(-3, 11, SHADOW_SIZE_M) FOOTPRINT(Floragato) OVERWORLD( sPicTable_Floragato, @@ -174,6 +176,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Meowscarada, .iconSprite = gMonIcon_Meowscarada, .iconPalIndex = 1, + SHADOW(-3, 14, SHADOW_SIZE_S) FOOTPRINT(Meowscarada) OVERWORLD( sPicTable_Meowscarada, @@ -236,6 +239,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Fuecoco, .iconSprite = gMonIcon_Fuecoco, .iconPalIndex = 2, + SHADOW(-3, 5, SHADOW_SIZE_S) FOOTPRINT(Fuecoco) OVERWORLD( sPicTable_Fuecoco, @@ -298,6 +302,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Crocalor, .iconSprite = gMonIcon_Crocalor, .iconPalIndex = 0, + SHADOW(2, 8, SHADOW_SIZE_M) FOOTPRINT(Crocalor) OVERWORLD( sPicTable_Crocalor, @@ -359,6 +364,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Skeledirge, .iconSprite = gMonIcon_Skeledirge, .iconPalIndex = 0, + SHADOW(6, 7, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Skeledirge) OVERWORLD( sPicTable_Skeledirge, @@ -421,6 +427,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Quaxly, .iconSprite = gMonIcon_Quaxly, .iconPalIndex = 0, + SHADOW(0, 5, SHADOW_SIZE_S) FOOTPRINT(Quaxly) OVERWORLD( sPicTable_Quaxly, @@ -483,6 +490,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Quaxwell, .iconSprite = gMonIcon_Quaxwell, .iconPalIndex = 0, + SHADOW(1, 10, SHADOW_SIZE_S) FOOTPRINT(Quaxwell) OVERWORLD( sPicTable_Quaxwell, @@ -544,6 +552,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Quaquaval, .iconSprite = gMonIcon_Quaquaval, .iconPalIndex = 0, + SHADOW(-7, 13, SHADOW_SIZE_M) FOOTPRINT(Quaquaval) OVERWORLD( sPicTable_Quaquaval, @@ -606,6 +615,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Lechonk, .iconSprite = gMonIcon_Lechonk, .iconPalIndex = 1, + SHADOW(0, 1, SHADOW_SIZE_S) FOOTPRINT(Lechonk) OVERWORLD( sPicTable_Lechonk, @@ -668,6 +678,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_OinkologneMale, .iconSprite = gMonIcon_OinkologneMale, .iconPalIndex = 1, + SHADOW(-2, 6, SHADOW_SIZE_M) FOOTPRINT(Oinkologne) OVERWORLD( sPicTable_OinkologneMale, @@ -729,6 +740,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_OinkologneFemale, .iconSprite = gMonIcon_OinkologneFemale, .iconPalIndex = 0, + SHADOW(3, 7, SHADOW_SIZE_M) FOOTPRINT(Oinkologne) OVERWORLD( sPicTable_OinkologneFemale, @@ -792,6 +804,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Tarountula, .iconSprite = gMonIcon_Tarountula, .iconPalIndex = 1, + SHADOW(-1, 2, SHADOW_SIZE_M) FOOTPRINT(Tarountula) OVERWORLD( sPicTable_Tarountula, @@ -854,6 +867,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Spidops, .iconSprite = gMonIcon_Spidops, .iconPalIndex = 1, + SHADOW(6, 8, SHADOW_SIZE_L) FOOTPRINT(Spidops) OVERWORLD( sPicTable_Spidops, @@ -916,6 +930,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Nymble, .iconSprite = gMonIcon_Nymble, .iconPalIndex = 0, + SHADOW(1, 3, SHADOW_SIZE_M) FOOTPRINT(Nymble) OVERWORLD( sPicTable_Nymble, @@ -978,6 +993,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Lokix, .iconSprite = gMonIcon_Lokix, .iconPalIndex = 0, + SHADOW(0, 11, SHADOW_SIZE_M) FOOTPRINT(Lokix) OVERWORLD( sPicTable_Lokix, @@ -1040,6 +1056,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Pawmi, .iconSprite = gMonIcon_Pawmi, .iconPalIndex = 0, + SHADOW(1, 4, SHADOW_SIZE_M) FOOTPRINT(Pawmi) OVERWORLD( sPicTable_Pawmi, @@ -1102,6 +1119,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Pawmo, .iconSprite = gMonIcon_Pawmo, .iconPalIndex = 0, + SHADOW(-3, 10, SHADOW_SIZE_S) FOOTPRINT(Pawmo) OVERWORLD( sPicTable_Pawmo, @@ -1163,6 +1181,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Pawmot, .iconSprite = gMonIcon_Pawmot, .iconPalIndex = 0, + SHADOW(-1, 11, SHADOW_SIZE_M) FOOTPRINT(Pawmot) OVERWORLD( sPicTable_Pawmot, @@ -1225,6 +1244,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Tandemaus, .iconSprite = gMonIcon_Tandemaus, .iconPalIndex = 1, + SHADOW(0, -1, SHADOW_SIZE_M) FOOTPRINT(Tandemaus) OVERWORLD( sPicTable_Tandemaus, @@ -1288,6 +1308,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Maushold, .iconSprite = gMonIcon_MausholdFamilyOfThree, .iconPalIndex = 1, + SHADOW(4, -1, SHADOW_SIZE_L) FOOTPRINT(MausholdFamilyOfThree) OVERWORLD( sPicTable_MausholdFamilyOfThree, @@ -1348,6 +1369,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Maushold, .iconSprite = gMonIcon_MausholdFamilyOfFour, .iconPalIndex = 1, + SHADOW(0, -1, SHADOW_SIZE_L) FOOTPRINT(MausholdFamilyOfFour) OVERWORLD( sPicTable_MausholdFamilyOfFour, @@ -1411,6 +1433,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Fidough, .iconSprite = gMonIcon_Fidough, .iconPalIndex = 1, + SHADOW(4, 0, SHADOW_SIZE_S) FOOTPRINT(Fidough) OVERWORLD( sPicTable_Fidough, @@ -1473,6 +1496,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Dachsbun, .iconSprite = gMonIcon_Dachsbun, .iconPalIndex = 0, + SHADOW(-1, 7, SHADOW_SIZE_L) FOOTPRINT(Dachsbun) OVERWORLD( sPicTable_Dachsbun, @@ -1535,6 +1559,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Smoliv, .iconSprite = gMonIcon_Smoliv, .iconPalIndex = 1, + SHADOW(-1, -2, SHADOW_SIZE_S) FOOTPRINT(Smoliv) OVERWORLD( sPicTable_Smoliv, @@ -1597,6 +1622,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Dolliv, .iconSprite = gMonIcon_Dolliv, .iconPalIndex = 1, + SHADOW(1, 9, SHADOW_SIZE_M) FOOTPRINT(Dolliv) OVERWORLD( sPicTable_Dolliv, @@ -1658,6 +1684,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Arboliva, .iconSprite = gMonIcon_Arboliva, .iconPalIndex = 1, + SHADOW(1, 13, SHADOW_SIZE_L) FOOTPRINT(Arboliva) OVERWORLD( sPicTable_Arboliva, @@ -1720,6 +1747,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_SquawkabillyGreenPlumage, .iconSprite = gMonIcon_SquawkabillyGreenPlumage, .iconPalIndex = 1, + SHADOW(-6, 9, SHADOW_SIZE_M) FOOTPRINT(Squawkabilly) OVERWORLD( sPicTable_SquawkabillyGreenPlumage, @@ -1782,6 +1810,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_SquawkabillyBluePlumage, .iconSprite = gMonIcon_SquawkabillyBluePlumage, .iconPalIndex = 0, + SHADOW(-6, 9, SHADOW_SIZE_M) FOOTPRINT(Squawkabilly) OVERWORLD( sPicTable_SquawkabillyBluePlumage, @@ -1844,6 +1873,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_SquawkabillyYellowPlumage, .iconSprite = gMonIcon_SquawkabillyYellowPlumage, .iconPalIndex = 1, + SHADOW(-6, 9, SHADOW_SIZE_M) FOOTPRINT(Squawkabilly) OVERWORLD( sPicTable_SquawkabillyYellowPlumage, @@ -1906,6 +1936,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_SquawkabillyWhitePlumage, .iconSprite = gMonIcon_SquawkabillyWhitePlumage, .iconPalIndex = 0, + SHADOW(-6, 9, SHADOW_SIZE_M) FOOTPRINT(Squawkabilly) OVERWORLD( sPicTable_SquawkabillyWhitePlumage, @@ -1970,6 +2001,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Nacli, .iconSprite = gMonIcon_Nacli, .iconPalIndex = 2, + SHADOW(-1, 5, SHADOW_SIZE_S) FOOTPRINT(Nacli) OVERWORLD( sPicTable_Nacli, @@ -2032,6 +2064,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Naclstack, .iconSprite = gMonIcon_Naclstack, .iconPalIndex = 2, + SHADOW(0, 5, SHADOW_SIZE_L) FOOTPRINT(Naclstack) OVERWORLD( sPicTable_Naclstack, @@ -2093,6 +2126,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Garganacl, .iconSprite = gMonIcon_Garganacl, .iconPalIndex = 2, + SHADOW(0, 13, SHADOW_SIZE_L) FOOTPRINT(Garganacl) OVERWORLD( sPicTable_Garganacl, @@ -2155,6 +2189,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Charcadet, .iconSprite = gMonIcon_Charcadet, .iconPalIndex = 0, + SHADOW(-1, 5, SHADOW_SIZE_S) FOOTPRINT(Charcadet) OVERWORLD( sPicTable_Charcadet, @@ -2218,6 +2253,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Armarouge, .iconSprite = gMonIcon_Armarouge, .iconPalIndex = 0, + SHADOW(0, 14, SHADOW_SIZE_L) FOOTPRINT(Armarouge) OVERWORLD( sPicTable_Armarouge, @@ -2278,6 +2314,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Ceruledge, .iconSprite = gMonIcon_Ceruledge, .iconPalIndex = 2, + SHADOW(9, 14, SHADOW_SIZE_L) FOOTPRINT(Ceruledge) OVERWORLD( sPicTable_Ceruledge, @@ -2341,6 +2378,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Tadbulb, .iconSprite = gMonIcon_Tadbulb, .iconPalIndex = 0, + SHADOW(0, 19, SHADOW_SIZE_S) FOOTPRINT(Tadbulb) OVERWORLD( sPicTable_Tadbulb, @@ -2403,6 +2441,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Bellibolt, .iconSprite = gMonIcon_Bellibolt, .iconPalIndex = 0, + SHADOW(0, 7, SHADOW_SIZE_M) FOOTPRINT(Bellibolt) OVERWORLD( sPicTable_Bellibolt, @@ -2465,6 +2504,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Wattrel, .iconSprite = gMonIcon_Wattrel, .iconPalIndex = 0, + SHADOW(-3, 0, SHADOW_SIZE_S) FOOTPRINT(Wattrel) OVERWORLD( sPicTable_Wattrel, @@ -2527,6 +2567,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Kilowattrel, .iconSprite = gMonIcon_Kilowattrel, .iconPalIndex = 0, + SHADOW(-6, 6, SHADOW_SIZE_M) FOOTPRINT(Kilowattrel) OVERWORLD( sPicTable_Kilowattrel, @@ -2589,6 +2630,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Maschiff, .iconSprite = gMonIcon_Maschiff, .iconPalIndex = 0, + SHADOW(2, 5, SHADOW_SIZE_L) FOOTPRINT(Maschiff) OVERWORLD( sPicTable_Maschiff, @@ -2651,6 +2693,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Mabosstiff, .iconSprite = gMonIcon_Mabosstiff, .iconPalIndex = 0, + SHADOW(1, 5, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Mabosstiff) OVERWORLD( sPicTable_Mabosstiff, @@ -2713,6 +2756,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Shroodle, .iconSprite = gMonIcon_Shroodle, .iconPalIndex = 0, + SHADOW(0, -6, SHADOW_SIZE_S) FOOTPRINT(Shroodle) OVERWORLD( sPicTable_Shroodle, @@ -2775,6 +2819,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Grafaiai, .iconSprite = gMonIcon_Grafaiai, .iconPalIndex = 0, + SHADOW(-2, 5, SHADOW_SIZE_S) FOOTPRINT(Grafaiai) OVERWORLD( sPicTable_Grafaiai, @@ -2837,6 +2882,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Bramblin, .iconSprite = gMonIcon_Bramblin, .iconPalIndex = 1, + SHADOW(2, 0, SHADOW_SIZE_S) FOOTPRINT(Bramblin) OVERWORLD( sPicTable_Bramblin, @@ -2899,6 +2945,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Brambleghast, .iconSprite = gMonIcon_Brambleghast, .iconPalIndex = 2, + SHADOW(0, 6, SHADOW_SIZE_M) FOOTPRINT(Brambleghast) OVERWORLD( sPicTable_Brambleghast, @@ -2963,6 +3010,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Toedscool, .iconSprite = gMonIcon_Toedscool, .iconPalIndex = 0, + SHADOW(-2, 10, SHADOW_SIZE_M) FOOTPRINT(Toedscool) OVERWORLD( sPicTable_Toedscool, @@ -3027,6 +3075,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Toedscruel, .iconSprite = gMonIcon_Toedscruel, .iconPalIndex = 0, + SHADOW(2, 8, SHADOW_SIZE_L) FOOTPRINT(Toedscruel) OVERWORLD( sPicTable_Toedscruel, @@ -3089,6 +3138,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Klawf, .iconSprite = gMonIcon_Klawf, .iconPalIndex = 0, + SHADOW(0, 0, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Klawf) OVERWORLD( sPicTable_Klawf, @@ -3152,6 +3202,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Capsakid, .iconSprite = gMonIcon_Capsakid, .iconPalIndex = 1, + SHADOW(2, 0, SHADOW_SIZE_S) FOOTPRINT(Capsakid) OVERWORLD( sPicTable_Capsakid, @@ -3214,6 +3265,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Scovillain, .iconSprite = gMonIcon_Scovillain, .iconPalIndex = 1, + SHADOW(6, 11, SHADOW_SIZE_M) FOOTPRINT(Scovillain) OVERWORLD( sPicTable_Scovillain, @@ -3277,6 +3329,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Rellor, .iconSprite = gMonIcon_Rellor, .iconPalIndex = 0, + SHADOW(4, -3, SHADOW_SIZE_L) FOOTPRINT(Rellor) OVERWORLD( sPicTable_Rellor, @@ -3339,6 +3392,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Rabsca, .iconSprite = gMonIcon_Rabsca, .iconPalIndex = 0, + SHADOW(-2, 14, SHADOW_SIZE_M) FOOTPRINT(Rabsca) OVERWORLD( sPicTable_Rabsca, @@ -3401,6 +3455,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Flittle, .iconSprite = gMonIcon_Flittle, .iconPalIndex = 1, + SHADOW(-2, 2, SHADOW_SIZE_S) FOOTPRINT(Flittle) OVERWORLD( sPicTable_Flittle, @@ -3463,6 +3518,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Espathra, .iconSprite = gMonIcon_Espathra, .iconPalIndex = 0, + SHADOW(-5, 10, SHADOW_SIZE_M) FOOTPRINT(Espathra) OVERWORLD( sPicTable_Espathra, @@ -3525,6 +3581,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Tinkatink, .iconSprite = gMonIcon_Tinkatink, .iconPalIndex = 1, + SHADOW(-3, 1, SHADOW_SIZE_S) FOOTPRINT(Tinkatink) OVERWORLD( sPicTable_Tinkatink, @@ -3588,6 +3645,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Tinkatuff, .iconSprite = gMonIcon_Tinkatuff, .iconPalIndex = 1, + SHADOW(-4, 5, SHADOW_SIZE_L) FOOTPRINT(Tinkatuff) OVERWORLD( sPicTable_Tinkatuff, @@ -3650,6 +3708,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Tinkaton, .iconSprite = gMonIcon_Tinkaton, .iconPalIndex = 1, + SHADOW(-5, 15, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Tinkaton) OVERWORLD( sPicTable_Tinkaton, @@ -3712,6 +3771,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Wiglett, .iconSprite = gMonIcon_Wiglett, .iconPalIndex = 0, + NO_SHADOW FOOTPRINT(Wiglett) OVERWORLD( sPicTable_Wiglett, @@ -3773,6 +3833,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Wugtrio, .iconSprite = gMonIcon_Wugtrio, .iconPalIndex = 0, + NO_SHADOW FOOTPRINT(Wugtrio) OVERWORLD( sPicTable_Wugtrio, @@ -3836,6 +3897,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Bombirdier, .iconSprite = gMonIcon_Bombirdier, .iconPalIndex = 0, + SHADOW(1, 18, SHADOW_SIZE_M) FOOTPRINT(Bombirdier) OVERWORLD( sPicTable_Bombirdier, @@ -3898,6 +3960,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Finizen, .iconSprite = gMonIcon_Finizen, .iconPalIndex = 0, + SHADOW(0, 7, SHADOW_SIZE_S) FOOTPRINT(Finizen) OVERWORLD( sPicTable_Finizen, @@ -3960,6 +4023,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_PalafinZero, .iconSprite = gMonIcon_PalafinZero, .iconPalIndex = 0, + SHADOW(0, 7, SHADOW_SIZE_S) FOOTPRINT(Palafin) OVERWORLD( sPicTable_PalafinZero, @@ -4022,6 +4086,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_PalafinHero, .iconSprite = gMonIcon_PalafinHero, .iconPalIndex = 0, + SHADOW(1, 13, SHADOW_SIZE_M) FOOTPRINT(Palafin) OVERWORLD( sPicTable_PalafinHero, @@ -4086,6 +4151,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Varoom, .iconSprite = gMonIcon_Varoom, .iconPalIndex = 2, + SHADOW(0, 0, SHADOW_SIZE_M) FOOTPRINT(Varoom) OVERWORLD( sPicTable_Varoom, @@ -4148,6 +4214,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Revavroom, .iconSprite = gMonIcon_Revavroom, .iconPalIndex = 0, + SHADOW(0, 7, SHADOW_SIZE_L) FOOTPRINT(Revavroom) OVERWORLD( sPicTable_Revavroom, @@ -4210,6 +4277,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Cyclizar, .iconSprite = gMonIcon_Cyclizar, .iconPalIndex = 1, + SHADOW(-1, 9, SHADOW_SIZE_M) FOOTPRINT(Cyclizar) OVERWORLD( sPicTable_Cyclizar, @@ -4273,6 +4341,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Orthworm, .iconSprite = gMonIcon_Orthworm, .iconPalIndex = 0, + SHADOW(6, 10, SHADOW_SIZE_L) FOOTPRINT(Orthworm) OVERWORLD( sPicTable_Orthworm, @@ -4337,6 +4406,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Glimmet, .iconSprite = gMonIcon_Glimmet, .iconPalIndex = 0, + SHADOW(-2, 6, SHADOW_SIZE_S) FOOTPRINT(Glimmet) OVERWORLD( sPicTable_Glimmet, @@ -4400,6 +4470,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Glimmora, .iconSprite = gMonIcon_Glimmora, .iconPalIndex = 0, + SHADOW(-3, 17, SHADOW_SIZE_M) FOOTPRINT(Glimmora) OVERWORLD( sPicTable_Glimmora, @@ -4462,6 +4533,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Greavard, .iconSprite = gMonIcon_Greavard, .iconPalIndex = 0, + SHADOW(3, 2, SHADOW_SIZE_M) FOOTPRINT(Greavard) OVERWORLD( sPicTable_Greavard, @@ -4524,6 +4596,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Houndstone, .iconSprite = gMonIcon_Houndstone, .iconPalIndex = 2, + SHADOW(4, 6, SHADOW_SIZE_L) FOOTPRINT(Houndstone) OVERWORLD( sPicTable_Houndstone, @@ -4586,6 +4659,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Flamigo, .iconSprite = gMonIcon_Flamigo, .iconPalIndex = 1, + SHADOW(0, 12, SHADOW_SIZE_S) FOOTPRINT(Flamigo) OVERWORLD( sPicTable_Flamigo, @@ -4649,6 +4723,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Cetoddle, .iconSprite = gMonIcon_Cetoddle, .iconPalIndex = 0, + SHADOW(2, 0, SHADOW_SIZE_M) FOOTPRINT(Cetoddle) OVERWORLD( sPicTable_Cetoddle, @@ -4711,6 +4786,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Cetitan, .iconSprite = gMonIcon_Cetitan, .iconPalIndex = 0, + SHADOW(-1, 10, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Cetitan) OVERWORLD( sPicTable_Cetitan, @@ -4774,6 +4850,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Veluza, .iconSprite = gMonIcon_Veluza, .iconPalIndex = 1, + SHADOW(0, 5, SHADOW_SIZE_M) FOOTPRINT(Veluza) OVERWORLD( sPicTable_Veluza, @@ -4838,6 +4915,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Dondozo, .iconSprite = gMonIcon_Dondozo, .iconPalIndex = 0, + SHADOW(-1, 8, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Dondozo) OVERWORLD( sPicTable_Dondozo, @@ -4901,6 +4979,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_TatsugiriCurly, .iconSprite = gMonIcon_TatsugiriCurly, .iconPalIndex = 0, + SHADOW(-2, -1, SHADOW_SIZE_S) FOOTPRINT(Tatsugiri) OVERWORLD( sPicTable_TatsugiriCurly, @@ -4962,6 +5041,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_TatsugiriDroopy, .iconSprite = gMonIcon_TatsugiriDroopy, .iconPalIndex = 0, + SHADOW(-2, -1, SHADOW_SIZE_S) FOOTPRINT(Tatsugiri) OVERWORLD( sPicTable_TatsugiriDroopy, @@ -5023,6 +5103,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_TatsugiriStretchy, .iconSprite = gMonIcon_TatsugiriStretchy, .iconPalIndex = 0, + SHADOW(-2, -1, SHADOW_SIZE_S) FOOTPRINT(Tatsugiri) OVERWORLD( sPicTable_TatsugiriStretchy, @@ -5088,6 +5169,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_GreatTusk, .iconSprite = gMonIcon_GreatTusk, .iconPalIndex = 0, + SHADOW(3, 6, SHADOW_SIZE_L) FOOTPRINT(GreatTusk) OVERWORLD( sPicTable_GreatTusk, @@ -5152,6 +5234,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_ScreamTail, .iconSprite = gMonIcon_ScreamTail, .iconPalIndex = 0, + SHADOW(0, 3, SHADOW_SIZE_L) FOOTPRINT(ScreamTail) OVERWORLD( sPicTable_ScreamTail, @@ -5216,6 +5299,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_BruteBonnet, .iconSprite = gMonIcon_BruteBonnet, .iconPalIndex = 1, + SHADOW(2, 7, SHADOW_SIZE_L) FOOTPRINT(BruteBonnet) OVERWORLD( sPicTable_BruteBonnet, @@ -5283,6 +5367,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_FlutterMane, .iconSprite = gMonIcon_FlutterMane, .iconPalIndex = 2, + SHADOW(-2, 20, SHADOW_SIZE_S) FOOTPRINT(FlutterMane) OVERWORLD( sPicTable_FlutterMane, @@ -5346,6 +5431,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_SlitherWing, .iconSprite = gMonIcon_SlitherWing, .iconPalIndex = 1, + SHADOW(-5, 13, SHADOW_SIZE_M) FOOTPRINT(SlitherWing) OVERWORLD( sPicTable_SlitherWing, @@ -5410,6 +5496,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_SandyShocks, .iconSprite = gMonIcon_SandyShocks, .iconPalIndex = 0, + SHADOW(2, 13, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(SandyShocks) OVERWORLD( sPicTable_SandyShocks, @@ -5474,6 +5561,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_IronTreads, .iconSprite = gMonIcon_IronTreads, .iconPalIndex = 1, + SHADOW(4, 3, SHADOW_SIZE_L) FOOTPRINT(IronTreads) OVERWORLD( sPicTable_IronTreads, @@ -5538,6 +5626,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_IronBundle, .iconSprite = gMonIcon_IronBundle, .iconPalIndex = 0, + SHADOW(-1, 6, SHADOW_SIZE_M) FOOTPRINT(IronBundle) OVERWORLD( sPicTable_IronBundle, @@ -5602,6 +5691,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_IronHands, .iconSprite = gMonIcon_IronHands, .iconPalIndex = 0, + SHADOW(-2, 8, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(IronHands) OVERWORLD( sPicTable_IronHands, @@ -5667,6 +5757,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_IronJugulis, .iconSprite = gMonIcon_IronJugulis, .iconPalIndex = 0, + SHADOW(0, 15, SHADOW_SIZE_M) FOOTPRINT(IronJugulis) OVERWORLD( sPicTable_IronJugulis, @@ -5732,6 +5823,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_IronMoth, .iconSprite = gMonIcon_IronMoth, .iconPalIndex = 3, + SHADOW(-4, 14, SHADOW_SIZE_M) FOOTPRINT(IronMoth) OVERWORLD( sPicTable_IronMoth, @@ -5796,6 +5888,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_IronThorns, .iconSprite = gMonIcon_IronThorns, .iconPalIndex = 1, + SHADOW(-9, 12, SHADOW_SIZE_L) FOOTPRINT(IronThorns) OVERWORLD( sPicTable_IronThorns, @@ -5859,6 +5952,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Frigibax, .iconSprite = gMonIcon_Frigibax, .iconPalIndex = 0, + SHADOW(0, 7, SHADOW_SIZE_S) FOOTPRINT(Frigibax) OVERWORLD( sPicTable_Frigibax, @@ -5921,6 +6015,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Arctibax, .iconSprite = gMonIcon_Arctibax, .iconPalIndex = 0, + SHADOW(4, 8, SHADOW_SIZE_M) FOOTPRINT(Arctibax) OVERWORLD( sPicTable_Arctibax, @@ -5982,6 +6077,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Baxcalibur, .iconSprite = gMonIcon_Baxcalibur, .iconPalIndex = 0, + SHADOW(5, 12, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Baxcalibur) OVERWORLD( sPicTable_Baxcalibur, @@ -6044,6 +6140,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_GimmighoulChest, .iconSprite = gMonIcon_GimmighoulChest, .iconPalIndex = 0, + SHADOW(0, 7, SHADOW_SIZE_M) FOOTPRINT(GimmighoulChest) OVERWORLD( sPicTable_GimmighoulChest, @@ -6106,6 +6203,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_GimmighoulRoaming, .iconSprite = gMonIcon_GimmighoulRoaming, .iconPalIndex = 0, + SHADOW(-1, -4, SHADOW_SIZE_S) FOOTPRINT(GimmighoulRoaming) .levelUpLearnset = sGimmighoulLevelUpLearnset, .teachableLearnset = sGimmighoulTeachableLearnset, @@ -6160,6 +6258,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Gholdengo, .iconSprite = gMonIcon_Gholdengo, .iconPalIndex = 0, + SHADOW(3, 13, SHADOW_SIZE_M) FOOTPRINT(Gholdengo) OVERWORLD( sPicTable_Gholdengo, @@ -6222,6 +6321,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_WoChien, .iconSprite = gMonIcon_WoChien, .iconPalIndex = 1, + SHADOW(0, 11, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(WoChien) OVERWORLD( sPicTable_WoChien, @@ -6286,6 +6386,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_ChienPao, .iconSprite = gMonIcon_ChienPao, .iconPalIndex = 0, + SHADOW(-4, 8, SHADOW_SIZE_L) FOOTPRINT(ChienPao) OVERWORLD( sPicTable_ChienPao, @@ -6350,6 +6451,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_TingLu, .iconSprite = gMonIcon_TingLu, .iconPalIndex = 0, + SHADOW(12, 13, SHADOW_SIZE_L) FOOTPRINT(TingLu) OVERWORLD( sPicTable_TingLu, @@ -6415,6 +6517,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_ChiYu, .iconSprite = gMonIcon_ChiYu, .iconPalIndex = 0, + SHADOW(0, 16, SHADOW_SIZE_S) FOOTPRINT(ChiYu) OVERWORLD( sPicTable_ChiYu, @@ -6481,6 +6584,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_RoaringMoon, .iconSprite = gMonIcon_RoaringMoon, .iconPalIndex = 0, + SHADOW(3, 9, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(RoaringMoon) OVERWORLD( sPicTable_RoaringMoon, @@ -6544,6 +6648,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_IronValiant, .iconSprite = gMonIcon_IronValiant, .iconPalIndex = 1, + SHADOW(2, 14, SHADOW_SIZE_L) FOOTPRINT(IronValiant) OVERWORLD( sPicTable_IronValiant, @@ -6607,6 +6712,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Koraidon, .iconSprite = gMonIcon_Koraidon, .iconPalIndex = 0, + SHADOW(-3, 13, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(Koraidon) OVERWORLD( sPicTable_Koraidon, @@ -6672,6 +6778,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Miraidon, .iconSprite = gMonIcon_Miraidon, .iconPalIndex = 2, + SHADOW(10, 14, SHADOW_SIZE_L) FOOTPRINT(Miraidon) OVERWORLD( sPicTable_Miraidon, @@ -6737,6 +6844,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_WalkingWake, .iconSprite = gMonIcon_WalkingWake, .iconPalIndex = 2, + SHADOW(2, 13, SHADOW_SIZE_L) FOOTPRINT(WalkingWake) OVERWORLD( sPicTable_WalkingWake, @@ -6800,6 +6908,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_IronLeaves, .iconSprite = gMonIcon_IronLeaves, .iconPalIndex = 1, + SHADOW(2, 11, SHADOW_SIZE_M) FOOTPRINT(IronLeaves) OVERWORLD( sPicTable_IronLeaves, @@ -6864,6 +6973,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Poltchageist, .iconSprite = gMonIcon_Poltchageist, .iconPalIndex = 1, + SHADOW(-1, 14, SHADOW_SIZE_S) FOOTPRINT(Poltchageist) OVERWORLD( sPicTable_Poltchageist, @@ -6925,6 +7035,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Poltchageist, .iconSprite = gMonIcon_Poltchageist, .iconPalIndex = 1, + SHADOW(-1, 14, SHADOW_SIZE_S) FOOTPRINT(Poltchageist) OVERWORLD( sPicTable_Poltchageist, @@ -6987,6 +7098,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Sinistcha, .iconSprite = gMonIcon_Sinistcha, .iconPalIndex = 1, + SHADOW(0, 11, SHADOW_SIZE_M) FOOTPRINT(Sinistcha) OVERWORLD( sPicTable_Sinistcha, @@ -7047,6 +7159,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Sinistcha, .iconSprite = gMonIcon_Sinistcha, .iconPalIndex = 1, + SHADOW(0, 11, SHADOW_SIZE_M) FOOTPRINT(Sinistcha) OVERWORLD( sPicTable_Sinistcha, @@ -7109,6 +7222,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Okidogi, .iconSprite = gMonIcon_Okidogi, .iconPalIndex = 1, + SHADOW(-1, 11, SHADOW_SIZE_L) FOOTPRINT(Okidogi) OVERWORLD( sPicTable_Okidogi, @@ -7173,6 +7287,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Munkidori, .iconSprite = gMonIcon_Munkidori, .iconPalIndex = 0, + SHADOW(1, 8, SHADOW_SIZE_S) FOOTPRINT(Munkidori) OVERWORLD( sPicTable_Munkidori, @@ -7237,6 +7352,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Fezandipiti, .iconSprite = gMonIcon_Fezandipiti, .iconPalIndex = 0, + SHADOW(-3, 10, SHADOW_SIZE_M) FOOTPRINT(Fezandipiti) OVERWORLD( sPicTable_Fezandipiti, @@ -7298,6 +7414,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Ogerpon##Form1##Form2, \ .iconSprite = gMonIcon_Ogerpon##Form1##Mask, \ .iconPalIndex = iconpalette, \ + SHADOW(7, 13, SHADOW_SIZE_L) \ FOOTPRINT(Ogerpon) \ OVERWORLD( \ sPicTable_Ogerpon##Form1##Form2, \ @@ -7313,7 +7430,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .formChangeTable = sOgerponFormChangeTable, \ .isLegendary = TRUE, \ .isTeraForm = isTeraform, \ - .perfectIVCount = LEGENDARY_PERFECT_IV_COUNT, \ + .perfectIVCount = LEGENDARY_PERFECT_IV_COUNT, \ } [SPECIES_OGERPON_TEAL_MASK] = OGERPON_SPECIES_INFO(Teal, Mask, TYPE_GRASS, ABILITY_DEFIANT, BODY_COLOR_GREEN, 1, FALSE), @@ -7378,6 +7495,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_GougingFire, .iconSprite = gMonIcon_GougingFire, .iconPalIndex = 5, + SHADOW(-1, 6, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(GougingFire) OVERWORLD( sPicTable_GougingFire, @@ -7442,6 +7560,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_RagingBolt, .iconSprite = gMonIcon_RagingBolt, .iconPalIndex = 2, + SHADOW(4, 14, SHADOW_SIZE_L) FOOTPRINT(RagingBolt) OVERWORLD( sPicTable_RagingBolt, @@ -7505,6 +7624,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_IronBoulder, .iconSprite = gMonIcon_IronBoulder, .iconPalIndex = 5, + SHADOW(4, 7, SHADOW_SIZE_XL_BATTLE_ONLY) FOOTPRINT(IronBoulder) OVERWORLD( sPicTable_IronBoulder, @@ -7569,6 +7689,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_IronCrown, .iconSprite = gMonIcon_IronCrown, .iconPalIndex = 3, + SHADOW(0, 14, SHADOW_SIZE_L) FOOTPRINT(IronCrown) OVERWORLD( sPicTable_IronCrown, @@ -7634,6 +7755,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_TerapagosNormal, .iconSprite = gMonIcon_TerapagosNormal, .iconPalIndex = 0, + SHADOW(3, 13, SHADOW_SIZE_L) FOOTPRINT(TerapagosNormal) OVERWORLD( sPicTable_TerapagosNormal, @@ -7702,6 +7824,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_TerapagosTerastal, .iconSprite = gMonIcon_TerapagosTerastal, .iconPalIndex = 0, + SHADOW(-4, 4, SHADOW_SIZE_L) FOOTPRINT(TerapagosTerastal) OVERWORLD( sPicTable_TerapagosTerastal, @@ -7768,6 +7891,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_TerapagosStellar, .iconSprite = gMonIcon_TerapagosStellar, .iconPalIndex = 0, + SHADOW(0, 12, SHADOW_SIZE_L) FOOTPRINT(TerapagosStellar) .isLegendary = TRUE, .isTeraForm = TRUE, @@ -7828,6 +7952,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .shinyPalette = gMonShinyPalette_Pecharunt, .iconSprite = gMonIcon_Pecharunt, .iconPalIndex = 0, + SHADOW(2, 1, SHADOW_SIZE_L) FOOTPRINT(Pecharunt) OVERWORLD( sPicTable_Pecharunt, diff --git a/src/graphics.c b/src/graphics.c index 724b4791cb..703c32331f 100644 --- a/src/graphics.c +++ b/src/graphics.c @@ -1387,6 +1387,7 @@ const u32 gBattleAnimSpritePal_Protect[] = INCBIN_U32("graphics/battle_anims/spr const u32 gBattleAnimBackgroundImageMuddyWater_Pal[] = INCBIN_U32("graphics/battle_anims/backgrounds/water_muddy.gbapal.lz"); const u32 gEnemyMonShadow_Gfx[] = INCBIN_U32("graphics/battle_interface/enemy_mon_shadow.4bpp.lz"); +const u32 gEnemyMonShadowsSized_Gfx[] = INCBIN_U32("graphics/battle_interface/enemy_mon_shadows_sized.4bpp.lz"); const u32 gBattleInterface_BallStatusBarGfx[] = INCBIN_U32("graphics/battle_interface/ball_status_bar.4bpp.lz"); diff --git a/src/pokemon_sprite_visualizer.c b/src/pokemon_sprite_visualizer.c index a0b7ddabc2..fea6324129 100644 --- a/src/pokemon_sprite_visualizer.c +++ b/src/pokemon_sprite_visualizer.c @@ -4,8 +4,6 @@ #include "battle_anim.h" #include "battle_gfx_sfx_util.h" #include "bg.h" -#include "constants/rgb.h" -#include "constants/songs.h" #include "data.h" #include "decompress.h" #include "event_object_movement.h" @@ -38,11 +36,15 @@ #include "text_window.h" #include "trainer_pokemon_sprites.h" +#include "constants/global.h" #include "constants/items.h" #include "constants/event_objects.h" +#include "constants/rgb.h" +#include "constants/songs.h" extern const struct BattleBackground sBattleTerrainTable[]; extern const struct CompressedSpriteSheet gSpriteSheet_EnemyShadow; +extern const struct CompressedSpriteSheet gSpriteSheet_EnemyShadowsSized; extern const struct SpriteTemplate gSpriteTemplate_EnemyShadow; extern const struct SpritePalette sSpritePalettes_HealthBoxHealthBar[2]; extern const struct UCoords8 sBattlerCoords[][MAX_BATTLERS_COUNT] ; @@ -396,6 +398,13 @@ const u8 gBattleBackgroundTerrainNames[][26] = [BATTLE_TERRAIN_BUILDING] = _("NORMAL - BUILDING "), [BATTLE_TERRAIN_PLAIN] = _("NORMAL - PLAIN "), }; +const u8 sShadowSizeLabels[][4] = +{ + [SHADOW_SIZE_S] = _(" S"), + [SHADOW_SIZE_M] = _(" M"), + [SHADOW_SIZE_L] = _(" L"), + [SHADOW_SIZE_XL_BATTLE_ONLY] = _(" XL"), +}; //Function declarations static void PrintDigitChars(struct PokemonSpriteVisualizer *data); static void SetUpModifyArrows(struct PokemonSpriteVisualizer *data); @@ -426,17 +435,27 @@ static void PrintInstructionsOnWindow(struct PokemonSpriteVisualizer *data) { u8 fontId = 0; u8 x = 2; - u8 textInstructions[] = _("{START_BUTTON} Shiny\n{B_BUTTON} Exit {A_BUTTON} Submenu 1$"); - u8 textInstructionsGender[] = _("{START_BUTTON} Shiny {SELECT_BUTTON} Gender\n{B_BUTTON} Exit {A_BUTTON} Submenu 1$"); - u8 textInstructionsSubmenuOne[] = _("{START_BUTTON} Shiny\n{B_BUTTON} Back {A_BUTTON} Submenu 2$"); - u8 textInstructionsSubmenuOneGender[] = _("{START_BUTTON} Shiny {SELECT_BUTTON} Gender\n{B_BUTTON} Back {A_BUTTON} Submenu 2$"); + u8 textInstructions[] = _("{START_BUTTON} Shiny\n{B_BUTTON} Exit {A_BUTTON} Anims and BG$"); + u8 textInstructionsGender[] = _("{START_BUTTON} Shiny {SELECT_BUTTON} Gender\n{B_BUTTON} Exit {A_BUTTON} Anims and BG$"); + u8 textInstructionsSubmenuOne[] = _("{START_BUTTON} Shiny\n{B_BUTTON} Back {A_BUTTON} Sprite Coords$"); + u8 textInstructionsSubmenuOneGender[] = _("{START_BUTTON} Shiny {SELECT_BUTTON} Gender\n{B_BUTTON} Back {A_BUTTON} Sprite Coords$"); +#if B_ENEMY_MON_SHADOW_STYLE >= GEN_4 + u8 textInstructionsSubmenuTwo[] = _("{START_BUTTON} Shiny\n{B_BUTTON} Back {A_BUTTON} Shadow Coords$"); + u8 textInstructionsSubmenuTwoGender[] = _("{START_BUTTON} Shiny {SELECT_BUTTON} Gender\n{B_BUTTON} Back {A_BUTTON} Shadow Coords$"); + u8 textInstructionsSubmenuThree[] = _("{START_BUTTON} Shiny\n{B_BUTTON} Back"); + u8 textInstructionsSubmenuThreeGender[] = _("{START_BUTTON} Shiny {SELECT_BUTTON} Gender\n{B_BUTTON} Back$"); +#else u8 textInstructionsSubmenuTwo[] = _("{START_BUTTON} Shiny\n{B_BUTTON} Back$"); u8 textInstructionsSubmenuTwoGender[] = _("{START_BUTTON} Shiny {SELECT_BUTTON} Gender\n{B_BUTTON} Back$"); + u8 textInstructionsSubmenuThree[] = _("$"); + u8 textInstructionsSubmenuThreeGender[] = _("$"); +#endif u8 textBottom[] = _("BACK:\nFRONT:\nBG:$"); u8 textBottomForms[] = _("BACK:\nFRONT:\nBG:\nFORMS:$"); u8 textBottomSubmenuTwo[] = _("B coords:\nF coords:\nF elev:"); + u8 textBottomSubmenuThree[] = _("X coords:\nY coords:\nSize:"); u16 species = data->modifyArrows.currValue; u8 textL[] = _("{L_BUTTON}"); @@ -465,11 +484,18 @@ static void PrintInstructionsOnWindow(struct PokemonSpriteVisualizer *data) else AddTextPrinterParameterized(WIN_INSTRUCTIONS, fontId, textInstructionsSubmenuTwo, x, 0, 0, NULL); } + else if (data->currentSubmenu == 3) + { + if (SpeciesHasGenderDifferences(species)) + AddTextPrinterParameterized(WIN_INSTRUCTIONS, fontId, textInstructionsSubmenuThreeGender, x, 0, 0, NULL); + else + AddTextPrinterParameterized(WIN_INSTRUCTIONS, fontId, textInstructionsSubmenuThree, x, 0, 0, NULL); + } CopyWindowToVram(WIN_INSTRUCTIONS, COPYWIN_FULL); //Bottom left text FillWindowPixelBuffer(WIN_BOTTOM_LEFT, PIXEL_FILL(0)); - if (data->currentSubmenu != 2) + if (data->currentSubmenu < 2) { AddTextPrinterParameterized(WIN_BOTTOM_LEFT, fontId, textL, 30, 0, 0, NULL); AddTextPrinterParameterized(WIN_BOTTOM_LEFT, fontId, textR, 30, 12, 0, NULL); @@ -478,8 +504,10 @@ static void PrintInstructionsOnWindow(struct PokemonSpriteVisualizer *data) else AddTextPrinterParameterized(WIN_BOTTOM_LEFT, fontId, textBottom, 0, 0, 0, NULL); } - else + else if (data->currentSubmenu == 2) AddTextPrinterParameterized(WIN_BOTTOM_LEFT, fontId, textBottomSubmenuTwo, 0, 0, 0, NULL); + else if (data->currentSubmenu == 3) + AddTextPrinterParameterized(WIN_BOTTOM_LEFT, fontId, textBottomSubmenuThree, 0, 0, 0, NULL); } static void VBlankCB(void) @@ -588,6 +616,7 @@ static void SetArrowInvisibility(struct PokemonSpriteVisualizer *data) gSprites[data->yPosModifyArrows.arrowSpriteId[0]].invisible = TRUE; break; case 2: + case 3: gSprites[data->modifyArrows.arrowSpriteId[0]].invisible = TRUE; gSprites[data->modifyArrows.arrowSpriteId[1]].invisible = TRUE; gSprites[data->optionArrows.arrowSpriteId[0]].invisible = TRUE; @@ -735,6 +764,20 @@ static void ResetOffsetSpriteValues(struct PokemonSpriteVisualizer *data) data->offsetsSpriteValues.offset_front_elevation = 0; } +static void ResetShadowSettings(struct PokemonSpriteVisualizer *data, u16 species) +{ + if (B_ENEMY_MON_SHADOW_STYLE <= GEN_3) + return; + + data->shadowSettings.definedX = gSpeciesInfo[species].enemyShadowXOffset; + data->shadowSettings.definedY = gSpeciesInfo[species].enemyShadowYOffset; + data->shadowSettings.definedSize = gSpeciesInfo[species].enemyShadowSize; + + data->shadowSettings.overrideX = data->shadowSettings.definedX; + data->shadowSettings.overrideY = data->shadowSettings.definedY; + data->shadowSettings.overrideSize = data->shadowSettings.definedSize; +} + static u8 GetBattlerSpriteFinal_YCustom(u16 species, s8 offset_picCoords, s8 offset_elevation) { u16 offset; @@ -758,18 +801,39 @@ static u8 GetBattlerSpriteFinal_YCustom(u16 species, s8 offset_picCoords, s8 off static void UpdateShadowSpriteInvisible(struct PokemonSpriteVisualizer *data) { + if (B_ENEMY_MON_SHADOW_STYLE >= GEN_4) + return; + if (data->constSpriteValues.frontElevation + data->offsetsSpriteValues.offset_front_elevation == 0) - gSprites[data->frontShadowSpriteId].invisible = TRUE; + gSprites[data->frontShadowSpriteIdPrimary].invisible = TRUE; else - gSprites[data->frontShadowSpriteId].invisible = FALSE; + gSprites[data->frontShadowSpriteIdPrimary].invisible = FALSE; } +#define tFrontSpriteId data[0] +#define tSpriteSide data[1] +#define tShadowXOffset data[2] +#define tShadowYOffset data[3] + +#define SPRITE_SIDE_LEFT 0 +#define SPRITE_SIDE_RIGHT 1 + + static void SpriteCB_EnemyShadowCustom(struct Sprite *shadowSprite) { - u8 frontSpriteId = shadowSprite->data[0]; + u8 frontSpriteId = shadowSprite->tFrontSpriteId; struct Sprite *battlerSprite = &gSprites[frontSpriteId]; - shadowSprite->x = battlerSprite->x; + s8 xOffset = 0, yOffset = 0; + if (B_ENEMY_MON_SHADOW_STYLE >= GEN_4) + { + xOffset = shadowSprite->tShadowXOffset + (shadowSprite->tSpriteSide == SPRITE_SIDE_LEFT ? -16 : 16); + yOffset = shadowSprite->tShadowYOffset + 16; + + shadowSprite->y = battlerSprite->y + yOffset; + } + + shadowSprite->x = battlerSprite->x + xOffset; shadowSprite->x2 = battlerSprite->x2; } @@ -801,25 +865,60 @@ static void SpriteCB_Follower(struct Sprite *sprite) sprite->animDelayCounter--; } } - static void LoadAndCreateEnemyShadowSpriteCustom(struct PokemonSpriteVisualizer *data, u16 species) { - u8 x, y; bool8 invisible = FALSE; species = SanitizeSpeciesId(species); - if (gSpeciesInfo[species].enemyMonElevation == 0) - invisible = TRUE; - LoadCompressedSpriteSheet(&gSpriteSheet_EnemyShadow); - LoadSpritePalette(&sSpritePalettes_HealthBoxHealthBar[0]); - x = sBattlerCoords[0][1].x; - y = sBattlerCoords[0][1].y; - data->frontShadowSpriteId = CreateSprite(&gSpriteTemplate_EnemyShadow, x, y + 29, 0xC8); - gSprites[data->frontShadowSpriteId].data[0] = data->frontspriteId; + if (B_ENEMY_MON_SHADOW_STYLE >= GEN_4) + { + invisible = gSpeciesInfo[species].suppressEnemyShadow; - gSprites[data->frontShadowSpriteId].callback = SpriteCB_EnemyShadowCustom; - gSprites[data->frontShadowSpriteId].oam.priority = 0; - gSprites[data->frontShadowSpriteId].invisible = invisible; + LoadCompressedSpriteSheet(&gSpriteSheet_EnemyShadowsSized); + LoadSpritePalette(&sSpritePalettes_HealthBoxHealthBar[0]); + u8 x = sBattlerCoords[0][1].x; + u8 y = sBattlerCoords[0][1].y; + s8 xOffset = data->shadowSettings.overrideX; + s8 yOffset = data->shadowSettings.overrideY; + u8 size = data->shadowSettings.overrideSize; + + data->frontShadowSpriteIdPrimary = CreateSprite(&gSpriteTemplate_EnemyShadow, x, y, 0xC8); + gSprites[data->frontShadowSpriteIdPrimary].tFrontSpriteId = data->frontspriteId; + gSprites[data->frontShadowSpriteIdPrimary].tSpriteSide = SPRITE_SIDE_LEFT; + gSprites[data->frontShadowSpriteIdPrimary].tShadowXOffset = (u8)xOffset; + gSprites[data->frontShadowSpriteIdPrimary].tShadowYOffset = (u8)yOffset; + gSprites[data->frontShadowSpriteIdPrimary].callback = SpriteCB_EnemyShadowCustom; + gSprites[data->frontShadowSpriteIdPrimary].oam.priority = 0; + gSprites[data->frontShadowSpriteIdPrimary].oam.tileNum += 8 * size; + gSprites[data->frontShadowSpriteIdPrimary].invisible = invisible; + + data->frontShadowSpriteIdSecondary = CreateSprite(&gSpriteTemplate_EnemyShadow, x, y, 0xC8); + gSprites[data->frontShadowSpriteIdSecondary].tFrontSpriteId = data->frontspriteId; + gSprites[data->frontShadowSpriteIdSecondary].tSpriteSide = SPRITE_SIDE_RIGHT; + gSprites[data->frontShadowSpriteIdSecondary].tShadowXOffset = (u8)xOffset; + gSprites[data->frontShadowSpriteIdSecondary].tShadowYOffset = (u8)yOffset; + gSprites[data->frontShadowSpriteIdSecondary].callback = SpriteCB_EnemyShadowCustom; + gSprites[data->frontShadowSpriteIdSecondary].oam.priority = 0; + gSprites[data->frontShadowSpriteIdSecondary].oam.tileNum += (8 * size) + 4; + gSprites[data->frontShadowSpriteIdSecondary].invisible = invisible; + } + else + { + if (gSpeciesInfo[species].enemyMonElevation == 0) + invisible = TRUE; + + LoadCompressedSpriteSheet(&gSpriteSheet_EnemyShadow); + LoadSpritePalette(&sSpritePalettes_HealthBoxHealthBar[0]); + u8 x = sBattlerCoords[0][1].x; + u8 y = sBattlerCoords[0][1].y; + + data->frontShadowSpriteIdPrimary = CreateSprite(&gSpriteTemplate_EnemyShadow, x, y + 29, 0xC8); + gSprites[data->frontShadowSpriteIdPrimary].data[0] = data->frontspriteId; + + gSprites[data->frontShadowSpriteIdPrimary].callback = SpriteCB_EnemyShadowCustom; + gSprites[data->frontShadowSpriteIdPrimary].oam.priority = 0; + gSprites[data->frontShadowSpriteIdPrimary].invisible = invisible; + } } //Battle background functions @@ -1044,6 +1143,55 @@ static void UpdateYPosOffsetText(struct PokemonSpriteVisualizer *data) AddTextPrinterParameterized(WIN_BOTTOM_RIGHT, fontId, text, x_new_val, y, 0, NULL); } +#define ABS(val) (val < 0 ? val * -1 : val) +#define ITOA_SIGNED(buf, val) \ +{ \ + buf[0] = val < 0 ? CHAR_HYPHEN : CHAR_SPACER; \ + ConvertIntToDecimalStringN(&text[1], ABS(val), STR_CONV_MODE_LEFT_ALIGN, 2); \ +} + +static void UpdateShadowSettingsText(struct PokemonSpriteVisualizer *data) +{ + if (B_ENEMY_MON_SHADOW_STYLE <= GEN_3) + return; + + u8 text[16]; + u8 fontId = 0; + u8 textConst[] = _("const val:"); + u8 textNew[] = _("new val:"); + u8 x_const_val = 50; + u8 x_new_text = 70; + u8 x_new_val = 110; + u8 y = 0; + + FillWindowPixelBuffer(WIN_BOTTOM_RIGHT, PIXEL_FILL(0)); + + // X offset + y = 0; + AddTextPrinterParameterized(WIN_BOTTOM_RIGHT, fontId, textConst, 0, y, 0, NULL); + ITOA_SIGNED(text, data->shadowSettings.definedX); + AddTextPrinterParameterized(WIN_BOTTOM_RIGHT, fontId, text, x_const_val, y, 0, NULL); + AddTextPrinterParameterized(WIN_BOTTOM_RIGHT, fontId, textNew, x_new_text, y, 0, NULL); + ITOA_SIGNED(text, data->shadowSettings.overrideX); + AddTextPrinterParameterized(WIN_BOTTOM_RIGHT, fontId, text, x_new_val, y, 0, NULL); + + // Y offset + y = 12; + AddTextPrinterParameterized(WIN_BOTTOM_RIGHT, fontId, textConst, 0, y, 0, NULL); + ITOA_SIGNED(text, data->shadowSettings.definedY); + AddTextPrinterParameterized(WIN_BOTTOM_RIGHT, fontId, text, x_const_val, y, 0, NULL); + AddTextPrinterParameterized(WIN_BOTTOM_RIGHT, fontId, textNew, x_new_text, y, 0, NULL); + ITOA_SIGNED(text, data->shadowSettings.overrideY); + AddTextPrinterParameterized(WIN_BOTTOM_RIGHT, fontId, text, x_new_val, y, 0, NULL); + + // Shadow Size + y = 24; + AddTextPrinterParameterized(WIN_BOTTOM_RIGHT, fontId, textConst, 0, y, 0, NULL); + AddTextPrinterParameterized(WIN_BOTTOM_RIGHT, fontId, sShadowSizeLabels[data->shadowSettings.definedSize], x_const_val, y, 0, NULL); + AddTextPrinterParameterized(WIN_BOTTOM_RIGHT, fontId, textNew, x_new_text, y, 0, NULL); + AddTextPrinterParameterized(WIN_BOTTOM_RIGHT, fontId, sShadowSizeLabels[data->shadowSettings.overrideSize], x_new_val, y, 0, NULL); +} + static void ResetPokemonSpriteVisualizerWindows(void) { u8 i; @@ -1334,6 +1482,7 @@ static void UpdateSubmenuOneOptionValue(u8 taskId, bool8 increment) data->animIdFront = gSpeciesInfo[modArrows->currValue].frontAnimId; UpdateMonAnimNames(taskId); ResetOffsetSpriteValues(data); + ResetShadowSettings(data, modArrows->currValue); UpdateBattlerValue(data); ReloadPokemonSprites(data); @@ -1421,6 +1570,79 @@ static void UpdateSubmenuTwoOptionValue(u8 taskId, bool8 increment) UpdateYPosOffsetText(data); } +static void UpdateShadowSettingsValue(u8 taskId, bool8 increment) +{ + if (B_ENEMY_MON_SHADOW_STYLE <= GEN_3) + return; + + struct PokemonSpriteVisualizer *data = GetStructPtr(taskId); + u8 option = data->submenuYpos[2]; + s8 *offset; + s16 *leftTarget, *rightTarget; + if (option == 0) + { + offset = &data->shadowSettings.overrideX; + leftTarget = &gSprites[data->frontShadowSpriteIdPrimary].tShadowXOffset; + rightTarget = &gSprites[data->frontShadowSpriteIdSecondary].tShadowXOffset; + } + else + { + offset = &data->shadowSettings.overrideY; + leftTarget = &gSprites[data->frontShadowSpriteIdPrimary].tShadowYOffset; + rightTarget = &gSprites[data->frontShadowSpriteIdSecondary].tShadowYOffset; + } + + *offset = *offset + (increment ? 1 : -1); + if (*offset > 20) + *offset = -20; + else if (*offset < -20) + *offset = 20; + UpdateShadowSettingsText(data); + + *leftTarget = (s16)*offset; + *rightTarget = (s16)*offset; +} + +static void UpdateShadowSizeValue(u8 taskId, bool8 increment) +{ + if (B_ENEMY_MON_SHADOW_STYLE <= GEN_3) + return; + + struct PokemonSpriteVisualizer *data = GetStructPtr(taskId); + s8 update; + + if (increment) + { + if (data->shadowSettings.overrideSize == SHADOW_SIZE_XL_BATTLE_ONLY) + { + update = -data->shadowSettings.overrideSize; + data->shadowSettings.overrideSize = SHADOW_SIZE_S; + } + else + { + update = 1; + data->shadowSettings.overrideSize += 1; + } + } + else + { + if (data->shadowSettings.overrideSize == SHADOW_SIZE_S) + { + update = SHADOW_SIZE_XL_BATTLE_ONLY; + data->shadowSettings.overrideSize = update; + } + else + { + update = -1; + data->shadowSettings.overrideSize -= 1; + } + } + + UpdateShadowSettingsText(data); + gSprites[data->frontShadowSpriteIdPrimary].oam.tileNum += (8 * update); + gSprites[data->frontShadowSpriteIdSecondary].oam.tileNum += (8 * update); +} + #define READ_PTR_FROM_TASK(taskId, dataId) \ (void *)( \ ((u16)(gTasks[taskId].data[dataId]) | \ @@ -1517,6 +1739,7 @@ static void HandleInput_PokemonSpriteVisualizer(u8 taskId) data->isFemale = FALSE; PrintDigitChars(data); UpdateBattlerValue(data); + ResetShadowSettings(data, data->currentmonId); ReloadPokemonSprites(data); data->animIdBack = GetSpeciesBackAnimSet(data->currentmonId) + 1; data->animIdFront = gSpeciesInfo[data->currentmonId].frontAnimId; @@ -1533,6 +1756,7 @@ static void HandleInput_PokemonSpriteVisualizer(u8 taskId) data->isFemale = FALSE; PrintDigitChars(data); UpdateBattlerValue(data); + ResetShadowSettings(data, data->currentmonId); ReloadPokemonSprites(data); data->animIdBack = GetSpeciesBackAnimSet(data->currentmonId) + 1; data->animIdFront = gSpeciesInfo[data->currentmonId].frontAnimId; @@ -1571,6 +1795,8 @@ static void HandleInput_PokemonSpriteVisualizer(u8 taskId) SetArrowInvisibility(data); SetConstSpriteValues(data); UpdateYPosOffsetText(data); + + gSprites[data->followerspriteId].invisible = TRUE; } else if (JOY_NEW(B_BUTTON)) { @@ -1621,13 +1847,22 @@ static void HandleInput_PokemonSpriteVisualizer(u8 taskId) } else if (data->currentSubmenu == 2) //Submenu 2 { - if (JOY_NEW(B_BUTTON)) + if (JOY_NEW(A_BUTTON) && B_ENEMY_MON_SHADOW_STYLE >= GEN_4) + { + data->currentSubmenu = 3; + PrintInstructionsOnWindow(data); + SetArrowInvisibility(data); + UpdateShadowSettingsText(data); + } + else if (JOY_NEW(B_BUTTON)) { data->currentSubmenu = 1; SetArrowInvisibility(data); PrintInstructionsOnWindow(data); UpdateMonAnimNames(taskId); + + gSprites[data->followerspriteId].invisible = FALSE; } else if (JOY_NEW(DPAD_DOWN)) { @@ -1657,6 +1892,50 @@ static void HandleInput_PokemonSpriteVisualizer(u8 taskId) UpdateSubmenuTwoOptionValue(taskId, TRUE); } } + else if (data->currentSubmenu == 3) // Submenu 3 + { + if (JOY_NEW(B_BUTTON)) + { + data->currentSubmenu = 2; + PrintInstructionsOnWindow(data); + SetArrowInvisibility(data); + SetConstSpriteValues(data); + UpdateYPosOffsetText(data); + } + else if (JOY_NEW(DPAD_DOWN)) + { + data->submenuYpos[2] += 1; + if (data->submenuYpos[2] >= 3) + data->submenuYpos[2] = 0; + + data->yPosModifyArrows.currentDigit = data->submenuYpos[2]; + gSprites[data->yPosModifyArrows.arrowSpriteId[0]].y = OPTIONS_ARROW_Y + data->yPosModifyArrows.currentDigit * 12; + } + else if (JOY_NEW(DPAD_UP)) + { + if (data->submenuYpos[2] == 0) + data->submenuYpos[2] = 2; + else + data->submenuYpos[2] -= 1; + + data->yPosModifyArrows.currentDigit = data->submenuYpos[2]; + gSprites[data->yPosModifyArrows.arrowSpriteId[0]].y = OPTIONS_ARROW_Y + data->yPosModifyArrows.currentDigit * 12; + } + else if (JOY_NEW(DPAD_LEFT)) + { + if (data->submenuYpos[2] < 2) + UpdateShadowSettingsValue(taskId, FALSE); + else + UpdateShadowSizeValue(taskId, FALSE); + } + else if (JOY_NEW(DPAD_RIGHT)) + { + if (data->submenuYpos[2] < 2) + UpdateShadowSettingsValue(taskId, TRUE); + else + UpdateShadowSizeValue(taskId, TRUE); + } + } } #undef sDelay #undef sAnimId @@ -1674,6 +1953,10 @@ static void ReloadPokemonSprites(struct PokemonSpriteVisualizer *data) DestroySprite(&gSprites[data->iconspriteId]); DestroySprite(&gSprites[data->followerspriteId]); + DestroySprite(&gSprites[data->frontShadowSpriteIdPrimary]); + if (B_ENEMY_MON_SHADOW_STYLE >= GEN_4) + DestroySprite(&gSprites[data->frontShadowSpriteIdSecondary]); + FreeMonSpritesGfx(); ResetSpriteData(); ResetPaletteFade(); From 3aa46c3ca061c9031b1fbcb4bef0f5296dd89858 Mon Sep 17 00:00:00 2001 From: Pawkkie <61265402+Pawkkie@users.noreply.github.com> Date: Tue, 10 Sep 2024 17:52:49 -0400 Subject: [PATCH 30/37] Fix stat id check (#5366) --- src/battle_ai_util.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/battle_ai_util.c b/src/battle_ai_util.c index 06735d6015..d50410186f 100644 --- a/src/battle_ai_util.c +++ b/src/battle_ai_util.c @@ -863,7 +863,7 @@ static bool32 AI_IsMoveEffectInPlus(u32 battlerAtk, u32 battlerDef, u32 move, s3 case MOVE_EFFECT_SP_DEF_MINUS_2: case MOVE_EFFECT_ACC_MINUS_2: case MOVE_EFFECT_EVS_MINUS_2: - if (ShouldLowerStat(battlerDef, abilityDef, STAT_ATK + (gMovesInfo[move].additionalEffects[i].moveEffect - MOVE_EFFECT_ATK_MINUS_1)) && noOfHitsToKo != 1) + if (ShouldLowerStat(battlerDef, abilityDef, STAT_ATK + (gMovesInfo[move].additionalEffects[i].moveEffect - MOVE_EFFECT_ATK_MINUS_2)) && noOfHitsToKo != 1) return TRUE; break; } From c57d149003929c71f7b44c27841c432ad39018ac Mon Sep 17 00:00:00 2001 From: hedara90 <90hedara@gmail.com> Date: Tue, 10 Sep 2024 23:53:55 +0200 Subject: [PATCH 31/37] Fixes with Pledge combos and absorption abilities (#5364) * Fixes with Pledge combos and absorption moves * Fixed incorrect merge * Removed superflous if statement --------- Co-authored-by: Hedara --- src/battle_util.c | 4 + test/battle/move_effect/pledge.c | 213 +++++++++++++++++++++++++++++++ 2 files changed, 217 insertions(+) diff --git a/src/battle_util.c b/src/battle_util.c index f6c577a31c..b2cf51ba0c 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -5313,6 +5313,7 @@ u32 AbilityBattleEffects(u32 caseID, u32 battler, u32 ability, u32 special, u32 } if (caseID == ABILITYEFFECT_WOULD_ABSORB) { + gBattleStruct->pledgeMove = FALSE; if (effect && gLastUsedAbility != 0xFFFF) RecordAbilityBattle(battler, gLastUsedAbility); @@ -5320,6 +5321,7 @@ u32 AbilityBattleEffects(u32 caseID, u32 battler, u32 ability, u32 special, u32 } else if (effect == 1) // Drain Hp ability. { + gBattleStruct->pledgeMove = FALSE; if (BATTLER_MAX_HP(battler) || (B_HEAL_BLOCKING >= GEN_5 && gStatuses3[battler] & STATUS3_HEAL_BLOCK)) { if ((gProtectStructs[gBattlerAttacker].notFirstStrike)) @@ -5342,6 +5344,7 @@ u32 AbilityBattleEffects(u32 caseID, u32 battler, u32 ability, u32 special, u32 } else if (effect == 2) // Boost Stat ability; { + gBattleStruct->pledgeMove = FALSE; if (!CompareStat(battler, statId, MAX_STAT_STAGE, CMP_LESS_THAN)) { if ((gProtectStructs[gBattlerAttacker].notFirstStrike)) @@ -5363,6 +5366,7 @@ u32 AbilityBattleEffects(u32 caseID, u32 battler, u32 ability, u32 special, u32 } else if (effect == 3) { + gBattleStruct->pledgeMove = FALSE; if (!(gBattleResources->flags->flags[battler] & RESOURCE_FLAG_FLASH_FIRE)) { gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_FLASH_FIRE_BOOST; diff --git a/test/battle/move_effect/pledge.c b/test/battle/move_effect/pledge.c index 2220b74186..d2cc16aa47 100644 --- a/test/battle/move_effect/pledge.c +++ b/test/battle/move_effect/pledge.c @@ -836,3 +836,216 @@ DOUBLE_BATTLE_TEST("Pledge move combo doesn't trigger on opponent's Pledge move HP_BAR(opponentLeft); } } + +DOUBLE_BATTLE_TEST("Pledge move combo doesn't trigger on opponent's Pledge move - Electrify") +{ + GIVEN { + ASSUME(gMovesInfo[MOVE_ELECTRIFY].effect == EFFECT_ELECTRIFY); + PLAYER(SPECIES_MAROWAK) { Ability(ABILITY_LIGHTNING_ROD); } + PLAYER(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WYNAUT); + } WHEN { + TURN { MOVE(playerRight, MOVE_ELECTRIFY, target: opponentRight); + MOVE(opponentLeft, MOVE_GRASS_PLEDGE, target: playerLeft); + MOVE(opponentRight, MOVE_FIRE_PLEDGE, target: playerLeft); + MOVE(playerLeft, MOVE_WATER_PLEDGE, target: opponentRight); } + } SCENE { + NONE_OF { + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, opponentLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerLeft); + } + ANIMATION(ANIM_TYPE_MOVE, MOVE_WATER_PLEDGE, playerLeft); + HP_BAR(opponentRight); + } +} + +DOUBLE_BATTLE_TEST("Pledge move combo doesn't trigger on opponent's Pledge move - Storm Drain") +{ + GIVEN { + PLAYER(SPECIES_GASTRODON) { Ability(ABILITY_STORM_DRAIN); } + PLAYER(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WYNAUT); + } WHEN { + TURN { MOVE(opponentLeft, MOVE_FIRE_PLEDGE, target: playerLeft); + MOVE(opponentRight, MOVE_WATER_PLEDGE, target: playerLeft); + MOVE(playerLeft, MOVE_GRASS_PLEDGE, target: opponentRight); } + } SCENE { + NONE_OF { + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, opponentLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_WATER_PLEDGE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_WATER_PLEDGE, playerLeft); + } + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, playerLeft); + HP_BAR(opponentRight); + } +} + +DOUBLE_BATTLE_TEST("Pledge move combo doesn't trigger on opponent's Pledge move - Sap Sipper") +{ + GIVEN { + PLAYER(SPECIES_GOODRA) { Ability(ABILITY_SAP_SIPPER); } + PLAYER(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WYNAUT); + } WHEN { + TURN { MOVE(opponentLeft, MOVE_WATER_PLEDGE, target: playerLeft); + MOVE(opponentRight, MOVE_GRASS_PLEDGE, target: playerLeft); + MOVE(playerLeft, MOVE_FIRE_PLEDGE, target: opponentRight); } + } SCENE { + NONE_OF { + ANIMATION(ANIM_TYPE_MOVE, MOVE_WATER_PLEDGE, opponentLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_WATER_PLEDGE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, playerLeft); + } + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerLeft); + HP_BAR(opponentRight); + } +} + +DOUBLE_BATTLE_TEST("Pledge move combo doesn't trigger on opponent's Pledge move - Dry Skin") +{ + GIVEN { + PLAYER(SPECIES_PARASECT) { Ability(ABILITY_DRY_SKIN); } + PLAYER(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WYNAUT); + } WHEN { + TURN { MOVE(opponentLeft, MOVE_FIRE_PLEDGE, target: playerLeft); + MOVE(opponentRight, MOVE_WATER_PLEDGE, target: playerLeft); + MOVE(playerLeft, MOVE_GRASS_PLEDGE, target: opponentRight); } + } SCENE { + NONE_OF { + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, opponentLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_WATER_PLEDGE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_WATER_PLEDGE, playerLeft); + } + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, playerLeft); + HP_BAR(opponentRight); + } +} + +DOUBLE_BATTLE_TEST("Pledge move combo doesn't trigger on opponent's Pledge move - Flash Fire") +{ + GIVEN { + PLAYER(SPECIES_HEATRAN) { Ability(ABILITY_FLASH_FIRE); } + PLAYER(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WYNAUT); + } WHEN { + TURN { MOVE(opponentLeft, MOVE_GRASS_PLEDGE, target: playerLeft); + MOVE(opponentRight, MOVE_FIRE_PLEDGE, target: playerLeft); + MOVE(playerLeft, MOVE_WATER_PLEDGE, target: opponentRight); } + } SCENE { + NONE_OF { + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, opponentLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerLeft); + } + ANIMATION(ANIM_TYPE_MOVE, MOVE_WATER_PLEDGE, playerLeft); + HP_BAR(opponentRight); + } +} + +DOUBLE_BATTLE_TEST("Pledge move combo doesn't trigger on opponent's Pledge move - Motor Drive") +{ + GIVEN { + ASSUME(gMovesInfo[MOVE_ELECTRIFY].effect == EFFECT_ELECTRIFY); + PLAYER(SPECIES_ELECTIVIRE) { Ability(ABILITY_MOTOR_DRIVE); } + PLAYER(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WYNAUT); + } WHEN { + TURN { MOVE(playerRight, MOVE_ELECTRIFY, target: opponentRight); + MOVE(opponentLeft, MOVE_WATER_PLEDGE, target: playerLeft); + MOVE(opponentRight, MOVE_GRASS_PLEDGE, target: playerLeft); + MOVE(playerLeft, MOVE_FIRE_PLEDGE, target: opponentRight); } + } SCENE { + NONE_OF { + ANIMATION(ANIM_TYPE_MOVE, MOVE_WATER_PLEDGE, opponentLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_WATER_PLEDGE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, playerLeft); + } + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerLeft); + HP_BAR(opponentRight); + } +} + +DOUBLE_BATTLE_TEST("Pledge move combo doesn't trigger on opponent's Pledge move - Volt Absorb") +{ + GIVEN { + ASSUME(gMovesInfo[MOVE_ELECTRIFY].effect == EFFECT_ELECTRIFY); + PLAYER(SPECIES_JOLTEON) { Ability(ABILITY_VOLT_ABSORB); } + PLAYER(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WYNAUT); + } WHEN { + TURN { MOVE(playerRight, MOVE_ELECTRIFY, target: opponentRight); + MOVE(opponentLeft, MOVE_WATER_PLEDGE, target: playerLeft); + MOVE(opponentRight, MOVE_GRASS_PLEDGE, target: playerLeft); + MOVE(playerLeft, MOVE_GRASS_PLEDGE, target: opponentRight); } + } SCENE { + NONE_OF { + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, opponentLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerLeft); + } + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, playerLeft); + HP_BAR(opponentRight); + } +} + +DOUBLE_BATTLE_TEST("Pledge move combo doesn't trigger on opponent's Pledge move - Water Absorb") +{ + GIVEN { + PLAYER(SPECIES_VAPOREON) { Ability(ABILITY_WATER_ABSORB); } + PLAYER(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WYNAUT); + } WHEN { + TURN { MOVE(opponentLeft, MOVE_FIRE_PLEDGE, target: playerLeft); + MOVE(opponentRight, MOVE_WATER_PLEDGE, target: playerLeft); + MOVE(playerLeft, MOVE_GRASS_PLEDGE, target: opponentRight); } + } SCENE { + NONE_OF { + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, opponentLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_WATER_PLEDGE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_WATER_PLEDGE, playerLeft); + } + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, playerLeft); + HP_BAR(opponentRight); + } +} + +DOUBLE_BATTLE_TEST("Pledge move combo doesn't trigger on opponent's Pledge move - Well Baked Body") +{ + GIVEN { + PLAYER(SPECIES_DACHSBUN) { Ability(ABILITY_WELL_BAKED_BODY); } + PLAYER(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WYNAUT); + } WHEN { + TURN { MOVE(opponentLeft, MOVE_GRASS_PLEDGE, target: playerLeft); + MOVE(opponentRight, MOVE_FIRE_PLEDGE, target: playerLeft); + MOVE(playerLeft, MOVE_WATER_PLEDGE, target: opponentRight); } + } SCENE { + NONE_OF { + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, opponentLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_GRASS_PLEDGE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FIRE_PLEDGE, playerLeft); + } + ANIMATION(ANIM_TYPE_MOVE, MOVE_WATER_PLEDGE, playerLeft); + HP_BAR(opponentRight); + } +} From 047289a63939541ed99edaea9d02dbc24bd3c8e8 Mon Sep 17 00:00:00 2001 From: Pawkkie <61265402+Pawkkie@users.noreply.github.com> Date: Tue, 10 Sep 2024 18:00:29 -0400 Subject: [PATCH 32/37] Improve AI's Skill Swap handling in double battles (#5360) * Improve AI contrary * Update src/battle_ai_util.c Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com> * Fix additionalEffects loop * moves[i] to aiMove * Update src/battle_ai_util.c Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com> --------- Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com> --- include/battle_ai_util.h | 2 ++ src/battle_ai_main.c | 19 +++++++++--- src/battle_ai_util.c | 48 +++++++++++++++++++++++++++++ test/battle/ai/ai_check_viability.c | 15 +++++++++ 4 files changed, 80 insertions(+), 4 deletions(-) diff --git a/include/battle_ai_util.h b/include/battle_ai_util.h index 3146bb94fd..5fecdd5f47 100644 --- a/include/battle_ai_util.h +++ b/include/battle_ai_util.h @@ -114,6 +114,7 @@ bool32 HasMoveEffectANDArg(u32 battlerId, u32 effect, u32 argument); bool32 HasMoveWithAdditionalEffect(u32 battlerId, u32 moveEffect); bool32 HasMoveWithCriticalHitChance(u32 battlerId); bool32 HasMoveWithMoveEffectExcept(u32 battlerId, u32 moveEffect, u32 exception); +bool32 HasMoveThatLowersOwnStats(u32 battlerId); bool32 HasMoveWithLowAccuracy(u32 battlerAtk, u32 battlerDef, u32 accCheck, bool32 ignoreStatus, u32 atkAbility, u32 defAbility, u32 atkHoldEffect, u32 defHoldEffect); bool32 HasAnyKnownMove(u32 battlerId); bool32 IsAromaVeilProtectedMove(u32 move); @@ -138,6 +139,7 @@ bool32 ShouldFakeOut(u32 battlerAtk, u32 battlerDef, u32 move); bool32 HasThawingMove(u32 battler); bool32 IsStatRaisingEffect(u32 effect); bool32 IsStatLoweringEffect(u32 effect); +bool32 IsSelfStatLoweringEffect(u32 effect); bool32 IsAttackBoostMoveEffect(u32 effect); bool32 IsUngroundingEffect(u32 effect); bool32 IsSemiInvulnerable(u32 battlerDef, u32 move); diff --git a/src/battle_ai_main.c b/src/battle_ai_main.c index b71e6799e0..af6557e967 100644 --- a/src/battle_ai_main.c +++ b/src/battle_ai_main.c @@ -3049,15 +3049,26 @@ static s32 AI_DoubleBattle(u32 battlerAtk, u32 battlerDef, u32 move, s32 score) case EFFECT_SKILL_SWAP: if (aiData->abilities[battlerAtk] != aiData->abilities[BATTLE_PARTNER(battlerAtk)] && !attackerHasBadAbility) { + // Partner abilities if (aiData->abilities[BATTLE_PARTNER(battlerAtk)] == ABILITY_TRUANT) { - RETURN_SCORE_PLUS(10); + ADJUST_SCORE(10); } - else if (aiData->abilities[battlerAtk] == ABILITY_COMPOUND_EYES - && HasMoveWithLowAccuracy(battlerAtkPartner, FOE(battlerAtkPartner), 90, TRUE, atkPartnerAbility, aiData->abilities[FOE(battlerAtkPartner)], atkPartnerHoldEffect, aiData->holdEffects[FOE(battlerAtkPartner)])) + else if (aiData->abilities[BATTLE_PARTNER(battlerAtk)] == ABILITY_INTIMIDATE) { - RETURN_SCORE_PLUS(3); + ADJUST_SCORE(DECENT_EFFECT); } + // Active mon abilities + if (aiData->abilities[battlerAtk] == ABILITY_COMPOUND_EYES + && HasMoveWithLowAccuracy(battlerAtkPartner, FOE(battlerAtkPartner), 90, TRUE, atkPartnerAbility, aiData->abilities[FOE(battlerAtkPartner)], atkPartnerHoldEffect, aiData->holdEffects[FOE(battlerAtkPartner)])) + { + ADJUST_SCORE(GOOD_EFFECT); + } + else if (aiData->abilities[battlerAtk] == ABILITY_CONTRARY && HasMoveThatLowersOwnStats(battlerAtkPartner)) + { + ADJUST_SCORE(GOOD_EFFECT); + } + return score; } break; case EFFECT_ROLE_PLAY: diff --git a/src/battle_ai_util.c b/src/battle_ai_util.c index b2e18db740..1ac43fb737 100644 --- a/src/battle_ai_util.c +++ b/src/battle_ai_util.c @@ -2089,6 +2089,26 @@ bool32 HasAnyKnownMove(u32 battlerId) return FALSE; } +bool32 HasMoveThatLowersOwnStats(u32 battlerId) +{ + s32 i, j; + u32 aiMove; + u16 *moves = GetMovesArray(battlerId); + for (i = 0; i < MAX_MON_MOVES; i++) + { + aiMove = moves[i]; + if (aiMove != MOVE_NONE && aiMove != MOVE_UNAVAILABLE) + { + for (j = 0; j < gMovesInfo[aiMove].numAdditionalEffects; j++) + { + if (IsSelfStatLoweringEffect(gMovesInfo[aiMove].additionalEffects[j].moveEffect) && gMovesInfo[aiMove].additionalEffects[j].self) + return TRUE; + } + } + } + return FALSE; +} + bool32 HasMoveWithLowAccuracy(u32 battlerAtk, u32 battlerDef, u32 accCheck, bool32 ignoreStatus, u32 atkAbility, u32 defAbility, u32 atkHoldEffect, u32 defHoldEffect) { s32 i; @@ -2294,6 +2314,34 @@ bool32 IsStatLoweringEffect(u32 effect) } } +bool32 IsSelfStatLoweringEffect(u32 effect) +{ + // Self stat lowering moves like Overheart, Superpower etc. + switch (effect) + { + case MOVE_EFFECT_ATK_MINUS_1: + case MOVE_EFFECT_DEF_MINUS_1: + case MOVE_EFFECT_SPD_MINUS_1: + case MOVE_EFFECT_SP_ATK_MINUS_1: + case MOVE_EFFECT_SP_DEF_MINUS_1: + case MOVE_EFFECT_EVS_MINUS_1: + case MOVE_EFFECT_ACC_MINUS_1: + case MOVE_EFFECT_ATK_MINUS_2: + case MOVE_EFFECT_DEF_MINUS_2: + case MOVE_EFFECT_SPD_MINUS_2: + case MOVE_EFFECT_SP_ATK_MINUS_2: + case MOVE_EFFECT_SP_DEF_MINUS_2: + case MOVE_EFFECT_EVS_MINUS_2: + case MOVE_EFFECT_ACC_MINUS_2: + case MOVE_EFFECT_V_CREATE: + case MOVE_EFFECT_ATK_DEF_DOWN: + case MOVE_EFFECT_DEF_SPDEF_DOWN: + return TRUE; + default: + return FALSE; + } +} + bool32 HasDamagingMove(u32 battlerId) { u32 i; diff --git a/test/battle/ai/ai_check_viability.c b/test/battle/ai/ai_check_viability.c index fa921e8674..039d8ca331 100644 --- a/test/battle/ai/ai_check_viability.c +++ b/test/battle/ai/ai_check_viability.c @@ -239,3 +239,18 @@ AI_SINGLE_BATTLE_TEST("AI chooses moves that cure inactive party members") TURN { EXPECT_MOVE(opponent, MOVE_HEAL_BELL); } } } + +AI_DOUBLE_BATTLE_TEST("AI prioritizes Skill Swapping Contrary to allied mons that would benefit from it") +{ + GIVEN { + ASSUME(gMovesInfo[MOVE_SKILL_SWAP].effect == EFFECT_SKILL_SWAP); + ASSUME(gMovesInfo[MOVE_OVERHEAT].additionalEffects[0].moveEffect == MOVE_EFFECT_SP_ATK_MINUS_2); + AI_FLAGS(AI_FLAG_CHECK_BAD_MOVE | AI_FLAG_TRY_TO_FAINT | AI_FLAG_CHECK_VIABILITY | AI_FLAG_DOUBLE_BATTLE); + PLAYER(SPECIES_WOBBUFFET) { Speed(3); } + PLAYER(SPECIES_WOBBUFFET) { Speed(3); } + OPPONENT(SPECIES_SPINDA) { Ability(ABILITY_CONTRARY); Speed(5); Moves(MOVE_SKILL_SWAP, MOVE_ENCORE, MOVE_FAKE_TEARS, MOVE_SWAGGER); } + OPPONENT(SPECIES_ARCANINE) { Ability(ABILITY_INTIMIDATE); Speed(4); Moves (MOVE_OVERHEAT); } + } WHEN { + TURN { EXPECT_MOVE(opponentLeft, MOVE_SKILL_SWAP, target:opponentRight); EXPECT_MOVE(opponentRight, MOVE_OVERHEAT); } + } +} From cdf781f7262cb5b4c456aaa159adfe4f72f3b205 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Wed, 11 Sep 2024 06:18:58 -0300 Subject: [PATCH 33/37] Fixed Toxic Thread stat increase (#5369) --- data/battle_scripts_1.s | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index c24dacb5c4..e042201d94 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -1838,7 +1838,7 @@ BattleScript_HitSwitchTargetForceRandomSwitchFailed: goto BattleScript_MoveEnd BattleScript_EffectToxicThread:: - setstatchanger STAT_SPEED, 2, TRUE + setstatchanger STAT_SPEED, 1, TRUE attackcanceler jumpifsubstituteblocks BattleScript_FailedFromAtkString jumpifstat BS_TARGET, CMP_NOT_EQUAL, STAT_SPEED, MIN_STAT_STAGE, BattleScript_ToxicThreadWorks From e13f399a67a2af1b6843dcbcf57282ed526e48fb Mon Sep 17 00:00:00 2001 From: Pawkkie <61265402+Pawkkie@users.noreply.github.com> Date: Thu, 12 Sep 2024 04:13:08 -0400 Subject: [PATCH 34/37] Switch AI hitsToKO considers one shot prevention (#5371) * One shot prevention effects * I'm bad at brackets --- src/battle_ai_switch_items.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/battle_ai_switch_items.c b/src/battle_ai_switch_items.c index b087cf3939..2fb8417ad9 100644 --- a/src/battle_ai_switch_items.c +++ b/src/battle_ai_switch_items.c @@ -1609,7 +1609,7 @@ static u32 GetSwitchinHitsToKO(s32 damageTaken, u32 battler) u16 maxHP = AI_DATA->switchinCandidate.battleMon.maxHP, item = AI_DATA->switchinCandidate.battleMon.item, heldItemEffect = ItemId_GetHoldEffect(item); u8 weatherDuration = gWishFutureKnock.weatherDuration, holdEffectParam = ItemId_GetHoldEffectParam(item); u32 opposingBattler = GetBattlerAtPosition(BATTLE_OPPOSITE(GetBattlerPosition(battler))); - u32 opposingAbility = gBattleMons[opposingBattler].ability; + u32 opposingAbility = gBattleMons[opposingBattler].ability, ability = AI_DATA->switchinCandidate.battleMon.ability; bool32 usedSingleUseHealingItem = FALSE; s32 currentHP = startingHP; @@ -1631,6 +1631,10 @@ static u32 GetSwitchinHitsToKO(s32 damageTaken, u32 battler) // Take attack damage for the turn currentHP = currentHP - damageTaken; + // One shot prevention effects + if (damageTaken >= maxHP && currentHP == maxHP && (heldItemEffect == HOLD_EFFECT_FOCUS_SASH || (B_STURDY >= GEN_5 && ability == ABILITY_STURDY))) + currentHP = 1; + // If mon is still alive, apply weather impact first, as it might KO the mon before it can heal with its item (order is weather -> item -> status) if (currentHP != 0) currentHP = currentHP - weatherImpact; From 2f4dc1996ca5afdc9a8581b47a81b8aed510c3a8 Mon Sep 17 00:00:00 2001 From: Alex <93446519+AlexOn1ine@users.noreply.github.com> Date: Thu, 12 Sep 2024 15:05:29 +0200 Subject: [PATCH 35/37] Some Strings were switched (#5374) --- src/pokemon_storage_system.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 54fee9e77a..ef0c644c7d 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -8054,15 +8054,15 @@ static const u8 *const sMenuTexts[] = [MENU_CANCEL] = COMPOUND_STRING("CANCEL"), [MENU_STORE] = COMPOUND_STRING("STORE"), [MENU_WITHDRAW] = COMPOUND_STRING("WITHDRAW"), - [MENU_MOVE] = COMPOUND_STRING("SHIFT"), - [MENU_SHIFT] = COMPOUND_STRING("MOVE"), + [MENU_MOVE] = COMPOUND_STRING("MOVE"), + [MENU_SHIFT] = COMPOUND_STRING("SHIFT"), [MENU_PLACE] = COMPOUND_STRING("PLACE"), [MENU_SUMMARY] = COMPOUND_STRING("SUMMARY"), [MENU_RELEASE] = COMPOUND_STRING("RELEASE"), [MENU_MARK] = COMPOUND_STRING("MARK"), - [MENU_JUMP] = COMPOUND_STRING("NAME"), - [MENU_WALLPAPER] = COMPOUND_STRING("JUMP"), - [MENU_NAME] = COMPOUND_STRING("WALLPAPER"), + [MENU_JUMP] = COMPOUND_STRING("JUMP"), + [MENU_WALLPAPER] = COMPOUND_STRING("WALLPAPER"), + [MENU_NAME] = COMPOUND_STRING("NAME"), [MENU_TAKE] = COMPOUND_STRING("TAKE"), [MENU_GIVE] = gPCText_Give, [MENU_GIVE_2] = gPCText_Give, From c804e605d83bcf1a4a931f177ffa445c111773ed Mon Sep 17 00:00:00 2001 From: Alex <93446519+AlexOn1ine@users.noreply.github.com> Date: Thu, 12 Sep 2024 17:40:17 +0200 Subject: [PATCH 36/37] Adds CanEndureHit AI function (#5373) * Adds CanEndureHit AI function * use ai data * missed a function --- src/battle_ai_util.c | 34 +++++++++++++++++++++++++++++++--- 1 file changed, 31 insertions(+), 3 deletions(-) diff --git a/src/battle_ai_util.c b/src/battle_ai_util.c index 5fabe7c134..3f08ace393 100644 --- a/src/battle_ai_util.c +++ b/src/battle_ai_util.c @@ -1113,6 +1113,26 @@ s32 AI_WhoStrikesFirst(u32 battlerAI, u32 battler, u32 moveConsidered) return AI_IS_SLOWER; } +static bool32 CanEndureHit(u32 battler, u32 battlerTarget, u32 move) +{ + if (!BATTLER_MAX_HP(battlerTarget) || gMovesInfo[move].effect == EFFECT_MULTI_HIT) + return FALSE; + if (gMovesInfo[move].strikeCount > 1 && !(gMovesInfo[move].effect == EFFECT_DRAGON_DARTS && IsValidDoubleBattle(battlerTarget))) + return FALSE; + if (AI_DATA->holdEffects[battlerTarget] == HOLD_EFFECT_FOCUS_SASH) + return TRUE; + + if (!DoesBattlerIgnoreAbilityChecks(AI_DATA->abilities[battler], move)) + { + if (B_STURDY >= GEN_5 && AI_DATA->abilities[battlerTarget] == ABILITY_STURDY) + return TRUE; + if (gBattleMons[battlerTarget].species == SPECIES_MIMIKYU_DISGUISED) + return TRUE; + } + + return FALSE; +} + // Check if target has means to faint ai mon. bool32 CanTargetFaintAi(u32 battlerDef, u32 battlerAtk) { @@ -1123,7 +1143,8 @@ bool32 CanTargetFaintAi(u32 battlerDef, u32 battlerAtk) for (i = 0; i < MAX_MON_MOVES; i++) { if (moves[i] != MOVE_NONE && moves[i] != MOVE_UNAVAILABLE && !(unusable & (1u << i)) - && AI_DATA->simulatedDmg[battlerDef][battlerAtk][i].expected >= gBattleMons[battlerAtk].hp) + && AI_DATA->simulatedDmg[battlerDef][battlerAtk][i].expected >= gBattleMons[battlerAtk].hp + && !CanEndureHit(battlerDef, battlerAtk, moves[i])) { return TRUE; } @@ -1210,7 +1231,13 @@ bool32 CanAIFaintTarget(u32 battlerAtk, u32 battlerDef, u32 numHits) dmg *= numHits; if (gBattleMons[battlerDef].hp <= dmg) - return TRUE; + { + if (numHits > 1) + return TRUE; + + if (!CanEndureHit(battlerAtk, battlerDef, moves[i])) + return TRUE; + } } } @@ -1922,13 +1949,14 @@ bool32 ShouldLowerEvasion(u32 battlerAtk, u32 battlerDef, u32 defAbility) bool32 CanIndexMoveFaintTarget(u32 battlerAtk, u32 battlerDef, u32 index, u32 numHits) { s32 dmg; + u16 *moves = gBattleMons[battlerAtk].moves; if (numHits) dmg = AI_DATA->simulatedDmg[battlerAtk][battlerDef][index].expected * numHits; else dmg = AI_DATA->simulatedDmg[battlerAtk][battlerDef][index].minimum; - if (gBattleMons[battlerDef].hp <= dmg) + if (gBattleMons[battlerDef].hp <= dmg && !CanEndureHit(battlerAtk, battlerDef, moves[index])) return TRUE; return FALSE; } From 9bdc9e5dab3bbe0dc5a1d73d2f74a704ae965f79 Mon Sep 17 00:00:00 2001 From: Pawkkie <61265402+Pawkkie@users.noreply.github.com> Date: Thu, 12 Sep 2024 13:49:29 -0400 Subject: [PATCH 37/37] Disguise KO prevention consideration (#5375) --- src/battle_ai_switch_items.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/battle_ai_switch_items.c b/src/battle_ai_switch_items.c index 2fb8417ad9..c33878465a 100644 --- a/src/battle_ai_switch_items.c +++ b/src/battle_ai_switch_items.c @@ -1610,7 +1610,7 @@ static u32 GetSwitchinHitsToKO(s32 damageTaken, u32 battler) u8 weatherDuration = gWishFutureKnock.weatherDuration, holdEffectParam = ItemId_GetHoldEffectParam(item); u32 opposingBattler = GetBattlerAtPosition(BATTLE_OPPOSITE(GetBattlerPosition(battler))); u32 opposingAbility = gBattleMons[opposingBattler].ability, ability = AI_DATA->switchinCandidate.battleMon.ability; - bool32 usedSingleUseHealingItem = FALSE; + bool32 usedSingleUseHealingItem = FALSE, opponentCanBreakMold = IsMoldBreakerTypeAbility(opposingBattler, opposingAbility); s32 currentHP = startingHP; // No damage being dealt @@ -1632,7 +1632,7 @@ static u32 GetSwitchinHitsToKO(s32 damageTaken, u32 battler) currentHP = currentHP - damageTaken; // One shot prevention effects - if (damageTaken >= maxHP && currentHP == maxHP && (heldItemEffect == HOLD_EFFECT_FOCUS_SASH || (B_STURDY >= GEN_5 && ability == ABILITY_STURDY))) + if (damageTaken >= maxHP && currentHP == maxHP && (heldItemEffect == HOLD_EFFECT_FOCUS_SASH || (!opponentCanBreakMold && B_STURDY >= GEN_5 && ability == ABILITY_STURDY))) currentHP = 1; // If mon is still alive, apply weather impact first, as it might KO the mon before it can heal with its item (order is weather -> item -> status) @@ -1697,6 +1697,10 @@ static u32 GetSwitchinHitsToKO(s32 damageTaken, u32 battler) hitsToKO++; } + // Disguise will always add an extra hit to KO + if (opponentCanBreakMold && AI_DATA->switchinCandidate.battleMon.species == SPECIES_MIMIKYU_DISGUISED) + hitsToKO++; + // If mon had a hypothetical status from TSpikes, clear it if (AI_DATA->switchinCandidate.hypotheticalStatus == TRUE) {