diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index b6386bd74a..386eec22fa 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -928,19 +928,10 @@ BattleScript_BothCanNoLongerEscape:: return BattleScript_EffectHyperspaceFury:: - jumpifspecies BS_ATTACKER, SPECIES_HOOPA_UNBOUND, BattleScript_EffectHyperspaceFuryUnbound + jumpifspecies BS_ATTACKER, SPECIES_HOOPA_UNBOUND, BattleScript_EffectHit jumpifspecies BS_ATTACKER, SPECIES_HOOPA_CONFINED, BattleScript_ButHoopaCantUseIt goto BattleScript_PokemonCantUseTheMove -BattleScript_EffectHyperspaceFuryUnbound:: - attackcanceler - accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE - attackstring - pause B_WAIT_TIME_LONG - ppreduce - seteffectprimary MOVE_EFFECT_FEINT - goto BattleScript_HitFromCritCalc - BattleScript_ButHoopaCantUseIt: printstring STRINGID_BUTHOOPACANTUSEIT waitmessage B_WAIT_TIME_LONG diff --git a/graphics/pokemon/absol/mega/front.png b/graphics/pokemon/absol/mega/front.png index e7656154da..bc89ac2de0 100644 Binary files a/graphics/pokemon/absol/mega/front.png and b/graphics/pokemon/absol/mega/front.png differ diff --git a/graphics/pokemon/aerodactyl/mega/front.png b/graphics/pokemon/aerodactyl/mega/front.png index 86d51181f0..c581404a89 100644 Binary files a/graphics/pokemon/aerodactyl/mega/front.png and b/graphics/pokemon/aerodactyl/mega/front.png differ diff --git a/graphics/pokemon/archen/overworld.png b/graphics/pokemon/archen/overworld.png index e25f19ba7f..6dce497d6d 100644 Binary files a/graphics/pokemon/archen/overworld.png and b/graphics/pokemon/archen/overworld.png differ diff --git a/graphics/pokemon/archeops/overworld.png b/graphics/pokemon/archeops/overworld.png index 8a8a23a4ed..6d8faa6597 100644 Binary files a/graphics/pokemon/archeops/overworld.png and b/graphics/pokemon/archeops/overworld.png differ diff --git a/graphics/pokemon/basculin/blue_striped/overworld.png b/graphics/pokemon/basculin/blue_striped/overworld.png index b8f0a34583..b900662eaf 100644 Binary files a/graphics/pokemon/basculin/blue_striped/overworld.png and b/graphics/pokemon/basculin/blue_striped/overworld.png differ diff --git a/graphics/pokemon/blitzle/overworld.png b/graphics/pokemon/blitzle/overworld.png index 09a594f17b..67c7ae568e 100644 Binary files a/graphics/pokemon/blitzle/overworld.png and b/graphics/pokemon/blitzle/overworld.png differ diff --git a/graphics/pokemon/blitzle/overworld_normal.pal b/graphics/pokemon/blitzle/overworld_normal.pal index cd08b136eb..1dfabc67aa 100644 --- a/graphics/pokemon/blitzle/overworld_normal.pal +++ b/graphics/pokemon/blitzle/overworld_normal.pal @@ -10,7 +10,7 @@ JASC-PAL 0 0 0 200 200 200 0 168 216 -0 0 0 +248 224 88 0 0 0 0 0 0 0 0 0 diff --git a/graphics/pokemon/blitzle/overworld_shiny.pal b/graphics/pokemon/blitzle/overworld_shiny.pal index 422cd57da4..56c8507e85 100644 --- a/graphics/pokemon/blitzle/overworld_shiny.pal +++ b/graphics/pokemon/blitzle/overworld_shiny.pal @@ -10,7 +10,7 @@ JASC-PAL 0 0 0 200 200 200 24 232 104 -0 0 0 +248 224 88 0 0 0 0 0 0 0 0 0 diff --git a/graphics/pokemon/bombirdier/front.png b/graphics/pokemon/bombirdier/front.png index 97159715f2..b8aa83644b 100644 Binary files a/graphics/pokemon/bombirdier/front.png and b/graphics/pokemon/bombirdier/front.png differ diff --git a/graphics/pokemon/crustle/overworld_normal.pal b/graphics/pokemon/crustle/overworld_normal.pal index fe051f639a..8d988e808a 100644 --- a/graphics/pokemon/crustle/overworld_normal.pal +++ b/graphics/pokemon/crustle/overworld_normal.pal @@ -8,10 +8,10 @@ JASC-PAL 128 96 64 224 192 64 192 128 0 -229 229 247 96 32 0 -224 128 64 +229 229 247 192 96 64 +224 128 64 0 0 0 0 0 0 0 0 0 diff --git a/graphics/pokemon/crustle/overworld_shiny.pal b/graphics/pokemon/crustle/overworld_shiny.pal index 3104d02aba..c1030a0ad3 100644 --- a/graphics/pokemon/crustle/overworld_shiny.pal +++ b/graphics/pokemon/crustle/overworld_shiny.pal @@ -8,10 +8,10 @@ JASC-PAL 96 88 80 176 192 72 48 40 24 -229 229 247 48 40 24 -136 152 72 -96 104 48 +229 229 247 +137 153 67 +179 206 83 0 0 0 0 0 0 0 0 0 diff --git a/graphics/pokemon/diancie/mega/back.png b/graphics/pokemon/diancie/mega/back.png index cb9a177a0d..3816c40d78 100644 Binary files a/graphics/pokemon/diancie/mega/back.png and b/graphics/pokemon/diancie/mega/back.png differ diff --git a/graphics/pokemon/diancie/mega/front.png b/graphics/pokemon/diancie/mega/front.png index ef48adeebd..73f34c79c9 100644 Binary files a/graphics/pokemon/diancie/mega/front.png and b/graphics/pokemon/diancie/mega/front.png differ diff --git a/graphics/pokemon/diancie/mega/normal.pal b/graphics/pokemon/diancie/mega/normal.pal index 0d9dd14457..d7bca64866 100644 --- a/graphics/pokemon/diancie/mega/normal.pal +++ b/graphics/pokemon/diancie/mega/normal.pal @@ -2,18 +2,18 @@ JASC-PAL 0100 16 152 208 160 -144 80 120 -16 16 16 -216 96 160 -248 200 216 -248 248 248 -232 160 176 -72 64 104 -168 160 208 -120 112 152 -224 40 72 -240 208 104 -224 216 224 -192 208 208 -112 136 136 -248 248 248 +89 80 89 +115 115 115 +166 58 112 +217 85 69 +255 229 102 +128 115 128 +217 87 152 +179 161 179 +242 242 242 +242 145 178 +24 24 24 +255 204 217 +227 219 224 +191 191 191 +255 249 251 diff --git a/graphics/pokemon/diancie/mega/shiny.pal b/graphics/pokemon/diancie/mega/shiny.pal index f221fb1d59..d69f1886bc 100644 --- a/graphics/pokemon/diancie/mega/shiny.pal +++ b/graphics/pokemon/diancie/mega/shiny.pal @@ -2,18 +2,18 @@ JASC-PAL 0100 16 152 208 160 -144 80 120 -16 16 16 -216 96 160 -248 200 216 -248 248 248 -232 160 176 -48 48 48 -136 136 136 -88 88 88 -224 40 72 -240 208 104 -224 216 224 -168 48 104 -112 40 72 -224 112 160 +62 60 64 +140 45 99 +166 58 112 +230 85 121 +255 229 102 +99 90 99 +217 87 152 +140 125 140 +254 92 155 +242 145 178 +24 24 24 +255 204 217 +194 174 189 +194 72 133 +232 220 228 diff --git a/graphics/pokemon/dwebble/overworld.png b/graphics/pokemon/dwebble/overworld.png index fe33f3a71b..41e57f9a16 100644 Binary files a/graphics/pokemon/dwebble/overworld.png and b/graphics/pokemon/dwebble/overworld.png differ diff --git a/graphics/pokemon/escavalier/overworld.png b/graphics/pokemon/escavalier/overworld.png index 340131a534..deb3cb0738 100644 Binary files a/graphics/pokemon/escavalier/overworld.png and b/graphics/pokemon/escavalier/overworld.png differ diff --git a/graphics/pokemon/excadrill/overworld_shiny.pal b/graphics/pokemon/excadrill/overworld_shiny.pal index 4879340ef8..49918df388 100644 --- a/graphics/pokemon/excadrill/overworld_shiny.pal +++ b/graphics/pokemon/excadrill/overworld_shiny.pal @@ -8,7 +8,7 @@ JASC-PAL 176 64 96 152 152 192 75 81 113 -78 140 154 +60 91 97 78 140 154 5 5 5 201 206 220 diff --git a/graphics/pokemon/garganacl/back.png b/graphics/pokemon/garganacl/back.png index d8590c6ce0..09b120f72f 100644 Binary files a/graphics/pokemon/garganacl/back.png and b/graphics/pokemon/garganacl/back.png differ diff --git a/graphics/pokemon/garganacl/front.png b/graphics/pokemon/garganacl/front.png index 416f535b35..d983a91346 100644 Binary files a/graphics/pokemon/garganacl/front.png and b/graphics/pokemon/garganacl/front.png differ diff --git a/graphics/pokemon/garganacl/normal.pal b/graphics/pokemon/garganacl/normal.pal index 2acd11e3b9..da3c63de41 100644 --- a/graphics/pokemon/garganacl/normal.pal +++ b/graphics/pokemon/garganacl/normal.pal @@ -1,19 +1,19 @@ JASC-PAL 0100 16 -153 211 165 -179 179 179 -217 217 217 -242 242 242 -138 138 138 -77 50 38 -148 104 90 +156 213 164 +123 123 123 +197 180 189 +255 255 255 +82 82 82 +148 98 90 +139 115 98 +197 148 123 +8 8 8 +65 49 41 +98 82 74 +238 139 24 +246 230 24 +90 74 57 +230 213 205 0 0 0 -102 61 44 -195 146 123 -245 147 45 -251 242 54 -46 43 40 -93 86 80 -220 191 179 -145 131 122 diff --git a/graphics/pokemon/garganacl/shiny.pal b/graphics/pokemon/garganacl/shiny.pal index 0b0979dd27..ea99f676a1 100644 --- a/graphics/pokemon/garganacl/shiny.pal +++ b/graphics/pokemon/garganacl/shiny.pal @@ -1,19 +1,19 @@ JASC-PAL 0100 16 -153 211 165 -161 104 55 -214 153 99 -237 173 116 -128 81 41 -77 50 38 -148 104 90 +156 213 164 +123 98 65 +189 148 106 +230 172 139 +90 57 49 +148 98 90 +139 115 98 +197 148 123 +8 8 8 +65 49 41 +98 82 74 +238 139 24 +246 230 24 +90 74 57 +230 213 205 0 0 0 -102 61 44 -195 146 123 -245 147 45 -251 242 54 -46 43 40 -93 86 80 -220 191 179 -145 131 122 diff --git a/graphics/pokemon/kilowattrel/back.png b/graphics/pokemon/kilowattrel/back.png index 26eb440b6a..d72494af1c 100755 Binary files a/graphics/pokemon/kilowattrel/back.png and b/graphics/pokemon/kilowattrel/back.png differ diff --git a/graphics/pokemon/kilowattrel/front.png b/graphics/pokemon/kilowattrel/front.png index 3a8e971644..fdb1a38e48 100755 Binary files a/graphics/pokemon/kilowattrel/front.png and b/graphics/pokemon/kilowattrel/front.png differ diff --git a/graphics/pokemon/kilowattrel/shiny.pal b/graphics/pokemon/kilowattrel/shiny.pal index a9ad2ba3a8..ab148371be 100755 --- a/graphics/pokemon/kilowattrel/shiny.pal +++ b/graphics/pokemon/kilowattrel/shiny.pal @@ -8,7 +8,7 @@ JASC-PAL 248 204 48 192 144 40 248 252 248 -212 95 60 +131 27 27 16 16 16 96 248 208 128 128 128 @@ -16,4 +16,4 @@ JASC-PAL 212 95 60 120 92 32 72 88 96 -48 56 72 +90 91 92 diff --git a/graphics/pokemon/krokorok/overworld.png b/graphics/pokemon/krokorok/overworld.png index 8f1b68615c..47e57ccd5e 100644 Binary files a/graphics/pokemon/krokorok/overworld.png and b/graphics/pokemon/krokorok/overworld.png differ diff --git a/graphics/pokemon/krookodile/overworld.png b/graphics/pokemon/krookodile/overworld.png index 9bac013544..d905625c55 100644 Binary files a/graphics/pokemon/krookodile/overworld.png and b/graphics/pokemon/krookodile/overworld.png differ diff --git a/graphics/pokemon/krookodile/overworld_normal.pal b/graphics/pokemon/krookodile/overworld_normal.pal index 04d2244669..e416936398 100644 --- a/graphics/pokemon/krookodile/overworld_normal.pal +++ b/graphics/pokemon/krookodile/overworld_normal.pal @@ -10,8 +10,8 @@ JASC-PAL 25 25 33 99 99 99 236 236 246 -99 99 99 -185 172 189 +35 35 35 +152 142 156 38 37 38 129 138 129 182 191 199 diff --git a/graphics/pokemon/krookodile/overworld_shiny.pal b/graphics/pokemon/krookodile/overworld_shiny.pal index 070a0a4e5d..c89ebe28de 100644 --- a/graphics/pokemon/krookodile/overworld_shiny.pal +++ b/graphics/pokemon/krookodile/overworld_shiny.pal @@ -8,10 +8,10 @@ JASC-PAL 168 136 88 0 0 0 224 200 88 -99 99 99 +48 48 48 236 236 246 168 144 64 -185 172 189 +122 94 0 38 37 38 129 138 129 182 191 199 diff --git a/graphics/pokemon/landorus/anim_front.png b/graphics/pokemon/landorus/anim_front.png index 762c5cd2e7..08808382b9 100644 Binary files a/graphics/pokemon/landorus/anim_front.png and b/graphics/pokemon/landorus/anim_front.png differ diff --git a/graphics/pokemon/landorus/back.png b/graphics/pokemon/landorus/back.png index f70121ac4f..9df361e4b6 100644 Binary files a/graphics/pokemon/landorus/back.png and b/graphics/pokemon/landorus/back.png differ diff --git a/graphics/pokemon/landorus/normal.pal b/graphics/pokemon/landorus/normal.pal index bbacdca837..36dd9dbac0 100644 --- a/graphics/pokemon/landorus/normal.pal +++ b/graphics/pokemon/landorus/normal.pal @@ -10,10 +10,10 @@ JASC-PAL 184 72 80 160 88 56 240 120 64 -51 51 34 +96 48 16 248 200 96 -51 51 51 +72 40 24 96 64 48 119 51 85 128 128 128 -0 0 0 +128 96 72 diff --git a/graphics/pokemon/landorus/shiny.pal b/graphics/pokemon/landorus/shiny.pal index 25f3ac5c93..c76bc2922b 100644 --- a/graphics/pokemon/landorus/shiny.pal +++ b/graphics/pokemon/landorus/shiny.pal @@ -1,19 +1,19 @@ JASC-PAL 0100 16 -152 208 160 -88 112 88 -16 16 16 -248 248 248 -152 176 160 -88 64 40 -240 96 8 -160 96 16 -248 160 40 -80 48 24 -248 192 0 -56 32 16 -72 48 32 -120 72 40 -128 128 128 -0 0 0 +153 204 153 +90 115 90 +17 17 17 +255 255 255 +164 189 164 +115 65 57 +238 98 8 +180 115 24 +255 164 41 +82 49 24 +255 197 0 +41 24 16 +74 49 32 +172 82 32 +90 115 90 +106 65 41 diff --git a/graphics/pokemon/latias/mega/front.png b/graphics/pokemon/latias/mega/front.png index bb51350564..491f02fa4b 100644 Binary files a/graphics/pokemon/latias/mega/front.png and b/graphics/pokemon/latias/mega/front.png differ diff --git a/graphics/pokemon/latios/mega/front.png b/graphics/pokemon/latios/mega/front.png index cc20e9d1cb..ebca8034d8 100644 Binary files a/graphics/pokemon/latios/mega/front.png and b/graphics/pokemon/latios/mega/front.png differ diff --git a/graphics/pokemon/lillipup/overworld_shiny.pal b/graphics/pokemon/lillipup/overworld_shiny.pal index 63bbc81935..ffdd1a31f2 100644 --- a/graphics/pokemon/lillipup/overworld_shiny.pal +++ b/graphics/pokemon/lillipup/overworld_shiny.pal @@ -2,11 +2,11 @@ JASC-PAL 0100 16 152 208 160 -104 72 16 -96 72 24 +97 62 1 +171 105 39 184 128 72 -232 176 88 0 0 0 +224 169 81 240 216 152 88 88 88 232 232 248 diff --git a/graphics/pokemon/magearna/back.png b/graphics/pokemon/magearna/back.png index 17568f8bb2..2e3a77c512 100644 Binary files a/graphics/pokemon/magearna/back.png and b/graphics/pokemon/magearna/back.png differ diff --git a/graphics/pokemon/magearna/shiny.pal b/graphics/pokemon/magearna/shiny.pal index cb523c62f3..a8573fe8e9 100644 --- a/graphics/pokemon/magearna/shiny.pal +++ b/graphics/pokemon/magearna/shiny.pal @@ -2,18 +2,18 @@ JASC-PAL 0100 16 153 211 165 -175 92 10 -252 238 137 -219 168 62 -218 192 200 -183 132 149 -119 83 89 +103 114 114 +234 236 236 +158 166 166 +209 216 216 +162 176 176 +110 130 130 16 16 16 -115 128 128 -248 248 248 -185 185 185 +94 100 100 +191 194 194 +140 147 147 252 154 188 248 82 111 12 168 201 -54 237 227 +221 233 229 67 63 61 diff --git a/graphics/pokemon/medicham/mega/back.png b/graphics/pokemon/medicham/mega/back.png index 692470be7a..336d79ce1c 100644 Binary files a/graphics/pokemon/medicham/mega/back.png and b/graphics/pokemon/medicham/mega/back.png differ diff --git a/graphics/pokemon/medicham/mega/front.png b/graphics/pokemon/medicham/mega/front.png index d375b55d42..9438f9d0df 100644 Binary files a/graphics/pokemon/medicham/mega/front.png and b/graphics/pokemon/medicham/mega/front.png differ diff --git a/graphics/pokemon/medicham/mega/normal.pal b/graphics/pokemon/medicham/mega/normal.pal index f7b8a8fd4e..2b0f86482e 100644 --- a/graphics/pokemon/medicham/mega/normal.pal +++ b/graphics/pokemon/medicham/mega/normal.pal @@ -1,19 +1,19 @@ JASC-PAL 0100 16 -152 208 160 -176 72 88 -88 64 72 -136 128 136 -200 88 112 -224 112 136 -248 248 248 -208 200 200 -168 160 168 -16 16 16 -232 184 88 -160 112 40 -240 216 128 -64 160 184 -224 224 224 -16 72 88 +153 211 165 +23 75 93 +82 65 74 +164 115 41 +131 65 74 +180 74 90 +238 189 90 +230 115 139 +67 163 189 +139 131 139 +172 164 172 +17 17 17 +246 222 131 +197 197 197 +222 222 222 +250 250 250 diff --git a/graphics/pokemon/medicham/mega/shiny.pal b/graphics/pokemon/medicham/mega/shiny.pal index 2a07de3b1d..09fef3a592 100644 --- a/graphics/pokemon/medicham/mega/shiny.pal +++ b/graphics/pokemon/medicham/mega/shiny.pal @@ -1,19 +1,19 @@ JASC-PAL 0100 16 -152 208 160 -16 72 88 -16 16 16 -136 128 136 -32 120 200 -80 160 224 -232 224 200 -232 224 200 -216 168 128 -16 16 16 -160 112 40 -160 112 40 -240 216 128 -64 160 184 -232 224 200 -16 72 88 +153 211 165 +0 122 112 +148 82 32 +163 153 24 +57 98 172 +90 131 205 +229 226 36 +156 180 255 +0 193 190 +180 123 65 +205 156 98 +17 17 17 +255 249 140 +230 189 131 +255 230 164 +250 250 250 diff --git a/graphics/pokemon/naclstack/back.png b/graphics/pokemon/naclstack/back.png index 34d80185e7..6d0238f3f4 100644 Binary files a/graphics/pokemon/naclstack/back.png and b/graphics/pokemon/naclstack/back.png differ diff --git a/graphics/pokemon/naclstack/front.png b/graphics/pokemon/naclstack/front.png index 4055c46cf3..646b29881c 100644 Binary files a/graphics/pokemon/naclstack/front.png and b/graphics/pokemon/naclstack/front.png differ diff --git a/graphics/pokemon/naclstack/normal.pal b/graphics/pokemon/naclstack/normal.pal index 2fd0dd7abd..19fea0383f 100644 --- a/graphics/pokemon/naclstack/normal.pal +++ b/graphics/pokemon/naclstack/normal.pal @@ -1,17 +1,19 @@ JASC-PAL 0100 -14 -153 211 165 -113 113 113 +16 +156 213 164 +148 98 90 +98 82 74 +123 123 123 +197 148 123 +230 213 205 +197 180 189 255 255 255 -180 180 180 -18 18 18 -198 135 110 -135 86 81 -246 195 158 -87 44 39 -107 65 60 -255 160 0 -255 255 0 -66 22 28 -194 103 16 +82 82 82 +65 49 41 +139 115 98 +8 8 8 +238 139 24 +246 230 24 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/naclstack/shiny.pal b/graphics/pokemon/naclstack/shiny.pal index a8f14a01b0..94d60d4731 100644 --- a/graphics/pokemon/naclstack/shiny.pal +++ b/graphics/pokemon/naclstack/shiny.pal @@ -1,17 +1,19 @@ JASC-PAL 0100 -14 -153 211 165 -164 70 47 -235 145 61 -211 94 44 -18 18 18 -198 135 110 -135 86 81 -246 195 158 -87 44 39 -107 65 60 -255 160 0 -255 255 0 -66 22 28 -194 103 16 +16 +156 213 164 +148 98 90 +98 82 74 +123 98 65 +197 148 123 +230 213 205 +197 131 106 +238 189 148 +90 57 49 +65 49 41 +139 115 98 +8 8 8 +238 139 24 +246 230 24 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/orthworm/front.png b/graphics/pokemon/orthworm/front.png index 87535ce92c..14884ce2c7 100755 Binary files a/graphics/pokemon/orthworm/front.png and b/graphics/pokemon/orthworm/front.png differ diff --git a/graphics/pokemon/ponyta/galarian/back.png b/graphics/pokemon/ponyta/galarian/back.png index fe45584312..f798d5cb45 100644 Binary files a/graphics/pokemon/ponyta/galarian/back.png and b/graphics/pokemon/ponyta/galarian/back.png differ diff --git a/graphics/pokemon/ponyta/galarian/shiny.pal b/graphics/pokemon/ponyta/galarian/shiny.pal index 707eb51faa..62925ea1a8 100644 --- a/graphics/pokemon/ponyta/galarian/shiny.pal +++ b/graphics/pokemon/ponyta/galarian/shiny.pal @@ -2,15 +2,15 @@ JASC-PAL 0100 16 152 208 160 -72 184 120 -16 144 64 -128 248 176 -200 144 48 -248 240 160 -240 200 80 +72 200 232 +48 152 168 +128 224 216 +199 171 123 +247 244 203 +240 219 158 72 88 72 16 16 16 -88 32 120 +64 56 165 232 248 240 192 216 200 136 160 144 diff --git a/graphics/pokemon/rapidash/galarian/back.png b/graphics/pokemon/rapidash/galarian/back.png index df065bf1f0..59816614d9 100644 Binary files a/graphics/pokemon/rapidash/galarian/back.png and b/graphics/pokemon/rapidash/galarian/back.png differ diff --git a/graphics/pokemon/rapidash/galarian/shiny.pal b/graphics/pokemon/rapidash/galarian/shiny.pal index c1b04fe6b8..3a76f1576d 100644 --- a/graphics/pokemon/rapidash/galarian/shiny.pal +++ b/graphics/pokemon/rapidash/galarian/shiny.pal @@ -6,11 +6,11 @@ JASC-PAL 128 224 200 56 192 168 16 16 16 -176 144 32 +176 160 104 240 240 240 -224 216 128 +224 220 175 0 24 96 -248 248 208 +247 247 228 104 104 120 200 200 208 160 160 176 diff --git a/graphics/pokemon/salamence/anim_front.png b/graphics/pokemon/salamence/anim_front.png index 977f43a6f8..41a8818996 100644 Binary files a/graphics/pokemon/salamence/anim_front.png and b/graphics/pokemon/salamence/anim_front.png differ diff --git a/graphics/pokemon/salamence/mega/front.png b/graphics/pokemon/salamence/mega/front.png index bec9a92549..44812fa058 100644 Binary files a/graphics/pokemon/salamence/mega/front.png and b/graphics/pokemon/salamence/mega/front.png differ diff --git a/graphics/pokemon/sawsbuck/summer/overworld.png b/graphics/pokemon/sawsbuck/summer/overworld.png index 7bb026e55d..1926a5f071 100644 Binary files a/graphics/pokemon/sawsbuck/summer/overworld.png and b/graphics/pokemon/sawsbuck/summer/overworld.png differ diff --git a/graphics/pokemon/serperior/overworld.png b/graphics/pokemon/serperior/overworld.png index 8cee61f966..4b71f89831 100644 Binary files a/graphics/pokemon/serperior/overworld.png and b/graphics/pokemon/serperior/overworld.png differ diff --git a/graphics/pokemon/serperior/overworld_normal.pal b/graphics/pokemon/serperior/overworld_normal.pal index 3733e903b2..6600b8af88 100644 --- a/graphics/pokemon/serperior/overworld_normal.pal +++ b/graphics/pokemon/serperior/overworld_normal.pal @@ -3,17 +3,17 @@ JASC-PAL 16 128 208 232 12 98 39 -106 115 57 +115 112 57 24 156 74 -236 173 21 +248 248 248 8 16 16 156 213 156 236 173 21 115 164 115 -12 98 39 -236 173 21 +5 59 26 +248 128 0 24 156 74 -0 0 0 -0 0 0 -0 0 0 +208 152 8 +12 98 39 +5 59 26 0 0 0 diff --git a/graphics/pokemon/serperior/overworld_shiny.pal b/graphics/pokemon/serperior/overworld_shiny.pal index eafc2d1fda..2a03f663f2 100644 --- a/graphics/pokemon/serperior/overworld_shiny.pal +++ b/graphics/pokemon/serperior/overworld_shiny.pal @@ -8,12 +8,12 @@ JASC-PAL 207 215 195 7 14 14 168 232 104 -185 175 53 +224 248 152 96 166 87 -40 56 48 -212 33 0 +40 48 56 +248 64 24 24 156 74 -0 0 0 -0 0 0 -0 0 0 +184 179 114 +43 99 64 +0 72 40 0 0 0 diff --git a/graphics/pokemon/servine/overworld.png b/graphics/pokemon/servine/overworld.png index b329b47837..5c9caeec8c 100644 Binary files a/graphics/pokemon/servine/overworld.png and b/graphics/pokemon/servine/overworld.png differ diff --git a/graphics/pokemon/servine/overworld_normal.pal b/graphics/pokemon/servine/overworld_normal.pal index ca1ffe3c14..58041cf5a3 100644 --- a/graphics/pokemon/servine/overworld_normal.pal +++ b/graphics/pokemon/servine/overworld_normal.pal @@ -10,9 +10,9 @@ JASC-PAL 141 120 48 251 243 199 110 64 20 -0 0 0 -0 0 0 -0 0 0 +193 193 147 +63 89 63 +184 72 32 0 0 0 0 0 0 0 0 0 diff --git a/graphics/pokemon/servine/overworld_shiny.pal b/graphics/pokemon/servine/overworld_shiny.pal index ff9fff5133..ef343bda48 100644 --- a/graphics/pokemon/servine/overworld_shiny.pal +++ b/graphics/pokemon/servine/overworld_shiny.pal @@ -3,16 +3,16 @@ JASC-PAL 16 152 208 160 32 48 72 -0 0 0 237 151 18 40 152 168 -63 74 11 32 88 160 -138 103 54 +0 0 0 +74 58 11 218 221 187 -0 0 0 -0 0 0 -0 0 0 +144 24 40 +182 189 145 +63 84 89 +248 48 48 0 0 0 0 0 0 0 0 0 diff --git a/graphics/pokemon/shroodle/back.png b/graphics/pokemon/shroodle/back.png index ffecfe183c..3bb3cb4a58 100755 Binary files a/graphics/pokemon/shroodle/back.png and b/graphics/pokemon/shroodle/back.png differ diff --git a/graphics/pokemon/shroodle/front.png b/graphics/pokemon/shroodle/front.png index 38dac9194a..aa6410070e 100755 Binary files a/graphics/pokemon/shroodle/front.png and b/graphics/pokemon/shroodle/front.png differ diff --git a/graphics/pokemon/shroodle/shiny.pal b/graphics/pokemon/shroodle/shiny.pal index bb3f9a6a7d..67046e31cf 100755 --- a/graphics/pokemon/shroodle/shiny.pal +++ b/graphics/pokemon/shroodle/shiny.pal @@ -2,18 +2,18 @@ JASC-PAL 0100 16 152 208 160 -96 88 88 -232 236 200 +125 121 118 +236 235 232 16 16 16 -176 168 136 -64 76 104 -72 60 56 +172 166 153 +79 104 117 +72 68 65 48 36 40 -128 156 168 -168 168 224 -96 108 136 +187 210 227 +173 114 205 +128 149 168 248 252 248 -208 200 248 +225 171 233 184 176 184 -160 112 224 +225 52 239 0 0 0 diff --git a/graphics/pokemon/sigilyph/overworld.png b/graphics/pokemon/sigilyph/overworld.png index 3f28054070..a39813710c 100644 Binary files a/graphics/pokemon/sigilyph/overworld.png and b/graphics/pokemon/sigilyph/overworld.png differ diff --git a/graphics/pokemon/sigilyph/overworld_normal.pal b/graphics/pokemon/sigilyph/overworld_normal.pal index 95d6d5cb63..32ef424021 100644 --- a/graphics/pokemon/sigilyph/overworld_normal.pal +++ b/graphics/pokemon/sigilyph/overworld_normal.pal @@ -2,17 +2,17 @@ JASC-PAL 0100 16 152 208 160 -33 112 129 -72 70 22 +16 88 105 +147 50 4 7 7 7 63 164 227 171 92 25 255 191 5 40 40 40 -192 192 203 +248 248 248 47 155 63 -0 0 0 -0 0 0 +206 0 46 +18 117 33 0 0 0 0 0 0 0 0 0 diff --git a/graphics/pokemon/sigilyph/overworld_shiny.pal b/graphics/pokemon/sigilyph/overworld_shiny.pal index 24e47afc05..9c3f2da54b 100644 --- a/graphics/pokemon/sigilyph/overworld_shiny.pal +++ b/graphics/pokemon/sigilyph/overworld_shiny.pal @@ -2,18 +2,18 @@ JASC-PAL 0100 16 152 208 160 -203 38 19 -90 63 20 +117 76 35 +120 48 7 7 7 7 -248 136 0 +248 168 72 +97 120 16 192 224 88 -40 40 40 -209 88 56 -128 152 40 -192 192 203 -0 0 0 -0 0 0 -0 0 0 +48 48 48 +248 248 248 +160 136 80 +217 79 61 +181 114 72 +199 172 109 0 0 0 0 0 0 0 0 0 diff --git a/graphics/pokemon/snivy/overworld.png b/graphics/pokemon/snivy/overworld.png index b361587109..8c05173922 100644 Binary files a/graphics/pokemon/snivy/overworld.png and b/graphics/pokemon/snivy/overworld.png differ diff --git a/graphics/pokemon/spidops/front.png b/graphics/pokemon/spidops/front.png index 944a911070..d6bfb05623 100644 Binary files a/graphics/pokemon/spidops/front.png and b/graphics/pokemon/spidops/front.png differ diff --git a/graphics/pokemon/swoobat/overworld.png b/graphics/pokemon/swoobat/overworld.png index ad665f8346..4648f80f63 100644 Binary files a/graphics/pokemon/swoobat/overworld.png and b/graphics/pokemon/swoobat/overworld.png differ diff --git a/graphics/pokemon/swoobat/overworld_shiny.pal b/graphics/pokemon/swoobat/overworld_shiny.pal index 84b110886f..8a3678398f 100644 --- a/graphics/pokemon/swoobat/overworld_shiny.pal +++ b/graphics/pokemon/swoobat/overworld_shiny.pal @@ -2,18 +2,18 @@ JASC-PAL 0100 16 104 48 152 -72 32 0 +87 48 2 248 192 48 232 144 16 1 1 1 198 217 180 -198 217 180 -72 32 0 +136 192 120 +41 18 0 96 48 16 -167 89 102 -198 217 180 -167 89 102 +144 72 112 198 217 180 +106 48 87 +248 160 232 198 217 180 1 1 1 0 0 0 diff --git a/graphics/pokemon/throh/overworld.png b/graphics/pokemon/throh/overworld.png index dabd0d8eba..69b2fef486 100644 Binary files a/graphics/pokemon/throh/overworld.png and b/graphics/pokemon/throh/overworld.png differ diff --git a/graphics/pokemon/throh/overworld_normal.pal b/graphics/pokemon/throh/overworld_normal.pal index 61eb765859..913583fc68 100644 --- a/graphics/pokemon/throh/overworld_normal.pal +++ b/graphics/pokemon/throh/overworld_normal.pal @@ -4,7 +4,7 @@ JASC-PAL 152 208 160 87 18 18 87 18 18 -152 208 160 +33 33 25 0 0 0 218 79 79 164 40 40 diff --git a/graphics/pokemon/tranquill/overworld.png b/graphics/pokemon/tranquill/overworld.png index 8ce1d6fcce..859cdf1543 100644 Binary files a/graphics/pokemon/tranquill/overworld.png and b/graphics/pokemon/tranquill/overworld.png differ diff --git a/graphics/pokemon/tranquill/overworld_normal.pal b/graphics/pokemon/tranquill/overworld_normal.pal index 718a5bffae..04e2105542 100644 --- a/graphics/pokemon/tranquill/overworld_normal.pal +++ b/graphics/pokemon/tranquill/overworld_normal.pal @@ -11,8 +11,8 @@ JASC-PAL 126 101 54 224 176 38 117 117 117 -0 0 0 -0 0 0 +126 101 54 +248 248 248 0 0 0 0 0 0 0 0 0 diff --git a/graphics/pokemon/tranquill/overworld_shiny.pal b/graphics/pokemon/tranquill/overworld_shiny.pal index 0436c80854..b6c3f5a586 100644 --- a/graphics/pokemon/tranquill/overworld_shiny.pal +++ b/graphics/pokemon/tranquill/overworld_shiny.pal @@ -5,14 +5,14 @@ JASC-PAL 48 64 48 72 128 72 0 0 0 -49 45 41 112 168 112 -184 248 184 +195 237 195 +160 102 204 96 79 92 201 144 119 -217 217 233 -0 0 0 -0 0 0 +129 167 131 +80 56 96 +248 248 248 0 0 0 0 0 0 0 0 0 diff --git a/graphics/pokemon/veluza/front.png b/graphics/pokemon/veluza/front.png index 9a2a7643ab..de17bca7c0 100755 Binary files a/graphics/pokemon/veluza/front.png and b/graphics/pokemon/veluza/front.png differ diff --git a/graphics/pokemon/venipede/overworld.png b/graphics/pokemon/venipede/overworld.png index 9add5c858d..424d009da7 100644 Binary files a/graphics/pokemon/venipede/overworld.png and b/graphics/pokemon/venipede/overworld.png differ diff --git a/graphics/pokemon/venipede/overworld_normal.pal b/graphics/pokemon/venipede/overworld_normal.pal index 61a94495e7..a0ce6cd507 100644 --- a/graphics/pokemon/venipede/overworld_normal.pal +++ b/graphics/pokemon/venipede/overworld_normal.pal @@ -3,14 +3,14 @@ JASC-PAL 16 152 208 160 11 11 11 -124 56 72 +102 46 59 182 65 92 191 69 98 227 81 116 55 55 55 79 79 79 -26 95 77 20 140 80 +26 95 77 22 177 116 55 106 55 224 172 35 diff --git a/graphics/pokemon/venipede/overworld_shiny.pal b/graphics/pokemon/venipede/overworld_shiny.pal index 97a17fdcd9..2630f4f61f 100644 --- a/graphics/pokemon/venipede/overworld_shiny.pal +++ b/graphics/pokemon/venipede/overworld_shiny.pal @@ -3,16 +3,16 @@ JASC-PAL 16 152 208 160 11 11 11 -64 64 16 -96 72 40 -144 80 48 -55 55 55 +87 39 36 +152 96 75 +158 103 81 +193 125 98 40 40 40 -40 72 8 -80 112 0 -96 144 0 -55 106 55 -182 65 92 +74 70 71 +113 145 61 +76 105 27 +150 196 80 +80 96 40 224 172 35 0 0 0 0 0 0 diff --git a/graphics/pokemon/vulpix/overworld.png b/graphics/pokemon/vulpix/overworld.png index e8db777a00..2f28125d8b 100644 Binary files a/graphics/pokemon/vulpix/overworld.png and b/graphics/pokemon/vulpix/overworld.png differ diff --git a/graphics/pokemon/wattrel/back.png b/graphics/pokemon/wattrel/back.png index 2a5bc640b5..5df11376f3 100755 Binary files a/graphics/pokemon/wattrel/back.png and b/graphics/pokemon/wattrel/back.png differ diff --git a/graphics/pokemon/wattrel/front.png b/graphics/pokemon/wattrel/front.png index 72981aa44e..c2527bab8b 100755 Binary files a/graphics/pokemon/wattrel/front.png and b/graphics/pokemon/wattrel/front.png differ diff --git a/graphics/pokemon/woobat/overworld.png b/graphics/pokemon/woobat/overworld.png index 2035262ed4..1d14a5c43d 100644 Binary files a/graphics/pokemon/woobat/overworld.png and b/graphics/pokemon/woobat/overworld.png differ diff --git a/graphics/pokemon/woobat/overworld_shiny.pal b/graphics/pokemon/woobat/overworld_shiny.pal index 9f71bce45f..5f72b7825a 100644 --- a/graphics/pokemon/woobat/overworld_shiny.pal +++ b/graphics/pokemon/woobat/overworld_shiny.pal @@ -2,7 +2,7 @@ JASC-PAL 0100 16 152 208 160 -16 56 64 +24 64 16 192 232 160 0 0 0 120 184 56 @@ -11,7 +11,7 @@ JASC-PAL 192 104 120 136 72 80 240 168 176 -72 104 120 +72 120 74 252 188 219 0 0 0 0 0 0 diff --git a/graphics/pokemon/zamazenta/crowned_shield/overworld.png b/graphics/pokemon/zamazenta/crowned_shield/overworld.png index 930bfbcd5f..f0b482982d 100644 Binary files a/graphics/pokemon/zamazenta/crowned_shield/overworld.png and b/graphics/pokemon/zamazenta/crowned_shield/overworld.png differ diff --git a/graphics/pokemon/zebstrika/overworld.png b/graphics/pokemon/zebstrika/overworld.png index fbe6fa8f56..36f7228a62 100644 Binary files a/graphics/pokemon/zebstrika/overworld.png and b/graphics/pokemon/zebstrika/overworld.png differ diff --git a/graphics/pokemon/zebstrika/overworld_normal.pal b/graphics/pokemon/zebstrika/overworld_normal.pal index fa9c14b6c0..653eafbda3 100644 --- a/graphics/pokemon/zebstrika/overworld_normal.pal +++ b/graphics/pokemon/zebstrika/overworld_normal.pal @@ -3,7 +3,7 @@ JASC-PAL 16 152 208 160 57 65 65 -57 65 65 +29 41 41 244 245 247 204 204 204 7 7 7 @@ -13,7 +13,7 @@ JASC-PAL 57 65 65 112 112 112 116 168 95 -7 7 7 -7 7 7 +248 224 0 +0 168 216 7 7 7 0 0 0 diff --git a/graphics/pokemon/zebstrika/overworld_shiny.pal b/graphics/pokemon/zebstrika/overworld_shiny.pal index 27178df2c1..4f52aeaad0 100644 --- a/graphics/pokemon/zebstrika/overworld_shiny.pal +++ b/graphics/pokemon/zebstrika/overworld_shiny.pal @@ -11,9 +11,9 @@ JASC-PAL 0 0 0 164 164 164 30 109 89 -116 116 116 +104 98 115 134 216 33 -0 0 0 -0 0 0 +248 224 0 +0 192 88 0 0 0 0 0 0 diff --git a/src/battle_main.c b/src/battle_main.c index 68296138ef..d6a8d7ef0e 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -3746,7 +3746,7 @@ static void DoBattleIntro(void) gBattleStruct->startingStatus = GetTrainerStartingStatusFromId(gTrainerBattleOpponent_B); gBattleStruct->startingStatusTimer = 0; // infinite } - else if (GetTrainerStartingStatusFromId(gTrainerBattleOpponent_A)) + else if (gBattleTypeFlags & BATTLE_TYPE_TRAINER && GetTrainerStartingStatusFromId(gTrainerBattleOpponent_A)) { gBattleStruct->startingStatus = GetTrainerStartingStatusFromId(gTrainerBattleOpponent_A); gBattleStruct->startingStatusTimer = 0; // infinite @@ -5737,8 +5737,10 @@ bool32 TrySetAteType(u32 move, u32 battlerAtk, u32 attackerAbility) break; case EFFECT_HIDDEN_POWER: case EFFECT_WEATHER_BALL: - case EFFECT_CHANGE_TYPE_ON_ITEM: case EFFECT_NATURAL_GIFT: + case EFFECT_CHANGE_TYPE_ON_ITEM: + case EFFECT_REVELATION_DANCE: + case EFFECT_TERRAIN_PULSE: return FALSE; } diff --git a/src/battle_util.c b/src/battle_util.c index 210cecd25a..d33ca634cf 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -6027,6 +6027,7 @@ u32 AbilityBattleEffects(u32 caseID, u32 battler, u32 ability, u32 special, u32 gBattlescriptCurrInstr = BattleScript_AbilityStatusEffect; effect++; } + break; } break; case ABILITYEFFECT_MOVE_END_OTHER: // Abilities that activate on *another* battler's moveend: Dancer, Soul-Heart, Receiver, Symbiosis @@ -8558,16 +8559,20 @@ bool32 IsBattlerProtected(u32 battlerAtk, u32 battlerDef, u32 move) // Protective Pads doesn't stop Unseen Fist from bypassing Protect effects, so IsMoveMakingContact() isn't used here. // This means extra logic is needed to handle Shell Side Arm. if (GetBattlerAbility(gBattlerAttacker) == ABILITY_UNSEEN_FIST - && (gMovesInfo[move].makesContact - || (gMovesInfo[move].effect == EFFECT_SHELL_SIDE_ARM && gBattleStruct->shellSideArmCategory[battlerAtk][battlerDef] == DAMAGE_CATEGORY_PHYSICAL)) - && !gProtectStructs[battlerDef].maxGuarded) // Max Guard cannot be bypassed by Unseen Fist + && (gMovesInfo[move].makesContact + || (gMovesInfo[move].effect == EFFECT_SHELL_SIDE_ARM + && gBattleStruct->shellSideArmCategory[battlerAtk][battlerDef] == DAMAGE_CATEGORY_PHYSICAL)) + && !gProtectStructs[battlerDef].maxGuarded) // Max Guard cannot be bypassed by Unseen Fist return FALSE; + else if (gSideStatuses[GetBattlerSide(battlerDef)] & SIDE_STATUS_CRAFTY_SHIELD + && IS_MOVE_STATUS(move)) + return TRUE; else if (gMovesInfo[move].ignoresProtect) return FALSE; else if (gProtectStructs[battlerDef].protected) return TRUE; else if (gSideStatuses[GetBattlerSide(battlerDef)] & SIDE_STATUS_WIDE_GUARD - && GetBattlerMoveTargetType(gBattlerAttacker, move) & (MOVE_TARGET_BOTH | MOVE_TARGET_FOES_AND_ALLY)) + && GetBattlerMoveTargetType(gBattlerAttacker, move) & (MOVE_TARGET_BOTH | MOVE_TARGET_FOES_AND_ALLY)) return TRUE; else if (gProtectStructs[battlerDef].banefulBunkered) return TRUE; @@ -8584,11 +8589,8 @@ bool32 IsBattlerProtected(u32 battlerAtk, u32 battlerDef, u32 move) else if (gSideStatuses[GetBattlerSide(battlerDef)] & SIDE_STATUS_QUICK_GUARD && GetChosenMovePriority(gBattlerAttacker) > 0) return TRUE; - else if (gSideStatuses[GetBattlerSide(battlerDef)] & SIDE_STATUS_CRAFTY_SHIELD - && IS_MOVE_STATUS(move)) - return TRUE; else if (gSideStatuses[GetBattlerSide(battlerDef)] & SIDE_STATUS_MAT_BLOCK - && !IS_MOVE_STATUS(move)) + && !IS_MOVE_STATUS(move)) return TRUE; else return FALSE; diff --git a/src/data/pokemon/species_info/gen_9_families.h b/src/data/pokemon/species_info/gen_9_families.h index 5a8452af25..66ae0b8dff 100644 --- a/src/data/pokemon/species_info/gen_9_families.h +++ b/src/data/pokemon/species_info/gen_9_families.h @@ -1765,7 +1765,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .trainerOffset = 0, .frontPic = gMonFrontPic_Naclstack, .frontPicSize = MON_COORDS_SIZE(64, 64), - .frontPicYOffset = 2, + .frontPicYOffset = 9, .frontAnimFrames = sAnims_Naclstack, //.frontAnimId = ANIM_V_SQUISH_AND_BOUNCE, .backPic = gMonBackPic_Naclstack, @@ -1818,12 +1818,12 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .trainerOffset = 0, .frontPic = gMonFrontPic_Garganacl, .frontPicSize = MON_COORDS_SIZE(64, 64), - .frontPicYOffset = 1, + .frontPicYOffset = 5, .frontAnimFrames = sAnims_Garganacl, //.frontAnimId = ANIM_V_SQUISH_AND_BOUNCE, .backPic = gMonBackPic_Garganacl, .backPicSize = MON_COORDS_SIZE(64, 64), - .backPicYOffset = 2, + .backPicYOffset = 14, //.backAnimId = BACK_ANIM_NONE, .palette = gMonPalette_Garganacl, .shinyPalette = gMonShinyPalette_Garganacl, diff --git a/test/battle/ability/adaptability.c b/test/battle/ability/adaptability.c index fecdc6b7e2..4c1c8439b7 100644 --- a/test/battle/ability/adaptability.c +++ b/test/battle/ability/adaptability.c @@ -1,7 +1,25 @@ #include "global.h" #include "test/battle.h" -TO_DO_BATTLE_TEST("Adaptability increases same-type attack bonus from x1.5 to x2"); +SINGLE_BATTLE_TEST("Adaptability increases same-type attack bonus from x1.5 to x2", s16 damage) +{ + u32 ability; + PARAMETRIZE { ability = ABILITY_HYPER_CUTTER; } + PARAMETRIZE { ability = ABILITY_ADAPTABILITY; } + GIVEN { + PLAYER(SPECIES_CRAWDAUNT) { Ability(ability); } + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(player, MOVE_WATER_GUN); } + } SCENE { + MESSAGE("Crawdaunt used Water Gun!"); + ANIMATION(ANIM_TYPE_MOVE, MOVE_WATER_GUN, player); + HP_BAR(opponent, captureDamage: &results[i].damage); + } FINALLY { + // The jump from 1.5x STAB to 2.0x STAB is a 1.33x boost. + EXPECT_MUL_EQ(results[0].damage, Q_4_12(1.33), results[1].damage); + } +} SINGLE_BATTLE_TEST("(TERA) Terastallizing into a different type with Adaptability gives 2.0x STAB", s16 damage) { diff --git a/test/battle/ability/aerilate.c b/test/battle/ability/aerilate.c index 8a5f889a66..4386034a59 100644 --- a/test/battle/ability/aerilate.c +++ b/test/battle/ability/aerilate.c @@ -21,7 +21,30 @@ SINGLE_BATTLE_TEST("Aerilate turns a Normal-type move into Flying-type move") } } -TO_DO_BATTLE_TEST("Aerilate can not turn certain moves into Flying type moves"); +SINGLE_BATTLE_TEST("Aerilate can not turn certain moves into Flying type moves") +{ + u32 move; + PARAMETRIZE { move = MOVE_WEATHER_BALL; } + // PARAMETRIZE { move = MOVE_NATURAL_GIFT; } TODO: handle this case via Skill Swap + PARAMETRIZE { move = MOVE_JUDGMENT; } + PARAMETRIZE { move = MOVE_TECHNO_BLAST; } + PARAMETRIZE { move = MOVE_REVELATION_DANCE; } + PARAMETRIZE { move = MOVE_MULTI_ATTACK; } + PARAMETRIZE { move = MOVE_TERRAIN_PULSE; } + GIVEN { + PLAYER(SPECIES_MEGANIUM); + OPPONENT(SPECIES_SALAMENCE) { Item(ITEM_SALAMENCITE); } + } WHEN { + TURN { MOVE(opponent, move, gimmick: GIMMICK_MEGA); } + } SCENE { + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_MEGA_EVOLUTION, opponent); + ANIMATION(ANIM_TYPE_MOVE, move, opponent); + NONE_OF { + MESSAGE("It's super effective!"); + } + } +} + TO_DO_BATTLE_TEST("Aerilate boosts power of affected moves by 20% (Gen7+)"); TO_DO_BATTLE_TEST("Aerilate boosts power of affected moves by 30% (Gen6)"); diff --git a/test/battle/ability/aftermath.c b/test/battle/ability/aftermath.c index 65c0be7dfd..5cfd5ef034 100644 --- a/test/battle/ability/aftermath.c +++ b/test/battle/ability/aftermath.c @@ -1,4 +1,22 @@ #include "global.h" #include "test/battle.h" -TO_DO_BATTLE_TEST("Aftermath damages the attacker by 1/4th of its max HP if they faint the target has this ability by a contact move"); +SINGLE_BATTLE_TEST("Aftermath damages the attacker by 1/4th of its max HP if fainted by a contact move") +{ + s16 aftermathDamage; + + GIVEN { + PLAYER(SPECIES_VOLTORB) { HP(1); Ability(ABILITY_AFTERMATH); }; + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN {MOVE(opponent, MOVE_TACKLE);} + } SCENE { + MESSAGE("Foe Wobbuffet used Tackle!"); + ANIMATION(ANIM_TYPE_MOVE, MOVE_TACKLE, opponent); + MESSAGE("Voltorb fainted!"); + ABILITY_POPUP(player, ABILITY_AFTERMATH); + HP_BAR(opponent, captureDamage: &aftermathDamage); + } THEN { + EXPECT_EQ(aftermathDamage, opponent->maxHP / 4); + } +} diff --git a/test/battle/ability/disguise.c b/test/battle/ability/disguise.c index c4f79d8fe3..5ab2035325 100644 --- a/test/battle/ability/disguise.c +++ b/test/battle/ability/disguise.c @@ -134,3 +134,42 @@ SINGLE_BATTLE_TEST("Disguised Mimikyu is ignored by Mold Breaker") NOT ABILITY_POPUP(player, ABILITY_DISGUISE); } } + +SINGLE_BATTLE_TEST("Disguised Mimikyu's types revert back to Ghost/Fairy when Disguise is broken") +{ + GIVEN { + ASSUME(gMovesInfo[MOVE_SHADOW_CLAW].type == TYPE_GHOST); + PLAYER(SPECIES_MIMIKYU_DISGUISED) { Ability(ABILITY_DISGUISE); } + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(opponent, MOVE_SOAK); } + TURN { MOVE(opponent, MOVE_TACKLE); } + TURN { MOVE(opponent, MOVE_SHADOW_CLAW); } + } SCENE { + MESSAGE("Foe Wobbuffet used Soak!"); + MESSAGE("Mimikyu transformed into the Water type!"); + MESSAGE("Foe Wobbuffet used Tackle!"); + ABILITY_POPUP(player, ABILITY_DISGUISE); + MESSAGE("Foe Wobbuffet used Shadow Claw!"); + MESSAGE("It's super effective!"); + } +} + +SINGLE_BATTLE_TEST("Disguised Mimikyu blocks a move after getting Gastro Acid Batton Passed") +{ + GIVEN { + ASSUME(gMovesInfo[MOVE_BATON_PASS].effect == EFFECT_BATON_PASS); + PLAYER(SPECIES_WOBBUFFET); + PLAYER(SPECIES_MIMIKYU_DISGUISED) { Ability(ABILITY_DISGUISE); } + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(opponent, MOVE_GASTRO_ACID); MOVE(player, MOVE_BATON_PASS); SEND_OUT(player, 1); } + TURN { MOVE(opponent, MOVE_SHADOW_CLAW); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_GASTRO_ACID, opponent); + MESSAGE("Wobbuffet's ability was suppressed!"); + ANIMATION(ANIM_TYPE_MOVE, MOVE_BATON_PASS, player); + ANIMATION(ANIM_TYPE_MOVE, MOVE_SHADOW_CLAW, opponent); + ABILITY_POPUP(player, ABILITY_DISGUISE); + } +} diff --git a/test/battle/move_effect/protect.c b/test/battle/move_effect/protect.c index 973033bc33..aca5ef859d 100644 --- a/test/battle/move_effect/protect.c +++ b/test/battle/move_effect/protect.c @@ -482,3 +482,68 @@ DOUBLE_BATTLE_TEST("Crafty Shield protects self and ally from status moves") } } } + +SINGLE_BATTLE_TEST("Protect does not block Confide") +{ + GIVEN { + ASSUME(gMovesInfo[MOVE_CONFIDE].effect == EFFECT_SPECIAL_ATTACK_DOWN); + PLAYER(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(opponent, MOVE_PROTECT); MOVE(player, MOVE_CONFIDE); } + } SCENE { + MESSAGE("Wobbuffet used Confide!"); + ANIMATION(ANIM_TYPE_MOVE, MOVE_CONFIDE, player); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, opponent); + NOT MESSAGE("Foe Wobbuffet protected itself!"); + } +} + +DOUBLE_BATTLE_TEST("Crafty Shield protects self and ally from Confide") +{ + GIVEN { + ASSUME(gMovesInfo[MOVE_CONFIDE].effect == EFFECT_SPECIAL_ATTACK_DOWN); + PLAYER(SPECIES_WOBBUFFET); + PLAYER(SPECIES_WYNAUT); + OPPONENT(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WYNAUT); + } WHEN { + TURN { MOVE(opponentLeft, MOVE_CRAFTY_SHIELD); MOVE(playerLeft, MOVE_CONFIDE, target: opponentLeft); MOVE(playerRight, MOVE_CONFIDE, target: opponentRight); } + } SCENE { + MESSAGE("Wobbuffet used Confide!"); + MESSAGE("Foe Wobbuffet protected itself!"); + MESSAGE("Wynaut used Confide!"); + MESSAGE("Foe Wynaut protected itself!"); + } +} + +DOUBLE_BATTLE_TEST("Crafty Shield does not protect against moves that target all battlers") +{ + GIVEN { + ASSUME(gMovesInfo[MOVE_FLOWER_SHIELD].target == MOVE_TARGET_ALL_BATTLERS); + ASSUME(gSpeciesInfo[SPECIES_TANGELA].types[0] == TYPE_GRASS); + ASSUME(gSpeciesInfo[SPECIES_TANGROWTH].types[0] == TYPE_GRASS); + ASSUME(gSpeciesInfo[SPECIES_SUNKERN].types[0] == TYPE_GRASS); + ASSUME(gSpeciesInfo[SPECIES_SUNFLORA].types[0] == TYPE_GRASS); + PLAYER(SPECIES_TANGELA); + PLAYER(SPECIES_TANGROWTH); + OPPONENT(SPECIES_SUNKERN); + OPPONENT(SPECIES_SUNFLORA); + } WHEN { + TURN { MOVE(opponentLeft, MOVE_CRAFTY_SHIELD); MOVE(opponentRight, MOVE_CELEBRATE); MOVE(playerLeft, MOVE_FLOWER_SHIELD); MOVE(playerRight, MOVE_CELEBRATE); } + } SCENE { + MESSAGE("Tangela used Flower Shield!"); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FLOWER_SHIELD, playerLeft); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, playerLeft); + MESSAGE("Tangela's Defense rose!"); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FLOWER_SHIELD, playerLeft); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, opponentLeft); + MESSAGE("Foe Sunkern's Defense rose!"); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FLOWER_SHIELD, playerLeft); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, playerRight); + MESSAGE("Tangrowth's Defense rose!"); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FLOWER_SHIELD, playerLeft); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, opponentRight); + MESSAGE("Foe Sunflora's Defense rose!"); + } +}