diff options
Diffstat (limited to 'data')
-rw-r--r-- | data/battle_moves.s | 217 | ||||
-rw-r--r-- | data/battle_scripts_1.s | 4429 | ||||
-rw-r--r-- | data/battle_scripts_2.s | 210 |
3 files changed, 2429 insertions, 2427 deletions
diff --git a/data/battle_moves.s b/data/battle_moves.s index 9a7398999..2c65bd3a5 100644 --- a/data/battle_moves.s +++ b/data/battle_moves.s @@ -1,3 +1,4 @@ +#include "constants/battle_constants.h" #include "constants/battle_move_effects.h" .include "asm/macros.inc" .include "constants/constants.inc" @@ -156,7 +157,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 10 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_BOTH_ENEMIES + .byte TARGET_BOTH_ENEMIES .byte 0 @ priority .4byte F_AFFECTED_BY_KINGS_ROCK | F_MIRROR_MOVE_COMPATIBLE | F_AFFECTED_BY_PROTECT @ misc. flags @@ -167,7 +168,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 30 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -420,7 +421,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 20 @ PP .byte 100 @ secondary effect chance - .byte F_TARGET_RANDOM + .byte TARGET_RANDOM .byte 0 @ priority .4byte F_AFFECTED_BY_KINGS_ROCK | F_MIRROR_MOVE_COMPATIBLE | F_AFFECTED_BY_PROTECT | F_MAKES_CONTACT @ misc. flags @@ -442,7 +443,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 30 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_BOTH_ENEMIES + .byte TARGET_BOTH_ENEMIES .byte 0 @ priority .4byte F_MIRROR_MOVE_COMPATIBLE | F_AFFECTED_BY_MAGIC_COAT | F_AFFECTED_BY_PROTECT @ misc. flags @@ -486,7 +487,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 30 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_BOTH_ENEMIES + .byte TARGET_BOTH_ENEMIES .byte 0 @ priority .4byte F_MIRROR_MOVE_COMPATIBLE | F_AFFECTED_BY_MAGIC_COAT | F_AFFECTED_BY_PROTECT @ misc. flags @@ -508,7 +509,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 40 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_BOTH_ENEMIES + .byte TARGET_BOTH_ENEMIES .byte 0 @ priority .4byte F_MIRROR_MOVE_COMPATIBLE | F_AFFECTED_BY_MAGIC_COAT | F_AFFECTED_BY_PROTECT @ misc. flags @@ -574,7 +575,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 30 @ PP .byte 10 @ secondary effect chance - .byte F_TARGET_BOTH_ENEMIES + .byte TARGET_BOTH_ENEMIES .byte 0 @ priority .4byte F_MIRROR_MOVE_COMPATIBLE | F_AFFECTED_BY_PROTECT @ misc. flags @@ -607,7 +608,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 30 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -640,7 +641,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 15 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_BOTH_ENEMIES + .byte TARGET_BOTH_ENEMIES .byte 0 @ priority .4byte F_AFFECTED_BY_KINGS_ROCK | F_MIRROR_MOVE_COMPATIBLE | F_AFFECTED_BY_PROTECT @ misc. flags @@ -662,7 +663,7 @@ gBattleMoves:: @ 81FB12C .byte 70 @ accuracy .byte 5 @ PP .byte 10 @ secondary effect chance - .byte F_TARGET_BOTH_ENEMIES + .byte TARGET_BOTH_ENEMIES .byte 0 @ priority .4byte F_MIRROR_MOVE_COMPATIBLE | F_AFFECTED_BY_PROTECT @ misc. flags @@ -761,7 +762,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 20 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_SPECIAL + .byte TARGET_SPECIAL .byte -5 @ priority .4byte F_MIRROR_MOVE_COMPATIBLE | F_MAKES_CONTACT @ misc. flags @@ -827,7 +828,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 40 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -838,7 +839,7 @@ gBattleMoves:: @ 81FB12C .byte 95 @ accuracy .byte 25 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_BOTH_ENEMIES + .byte TARGET_BOTH_ENEMIES .byte 0 @ priority .4byte F_AFFECTED_BY_KINGS_ROCK | F_MIRROR_MOVE_COMPATIBLE | F_AFFECTED_BY_PROTECT @ misc. flags @@ -893,7 +894,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 20 @ PP .byte 100 @ secondary effect chance - .byte F_TARGET_RANDOM + .byte TARGET_RANDOM .byte 0 @ priority .4byte F_AFFECTED_BY_KINGS_ROCK | F_MIRROR_MOVE_COMPATIBLE | F_AFFECTED_BY_PROTECT | F_MAKES_CONTACT @ misc. flags @@ -904,7 +905,7 @@ gBattleMoves:: @ 81FB12C .byte 95 @ accuracy .byte 40 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_BOTH_ENEMIES + .byte TARGET_BOTH_ENEMIES .byte 0 @ priority .4byte F_MIRROR_MOVE_COMPATIBLE | F_AFFECTED_BY_MAGIC_COAT | F_AFFECTED_BY_PROTECT @ misc. flags @@ -992,7 +993,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 10 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_ALL_EXCEPT_USER + .byte TARGET_ALL_EXCEPT_USER .byte 0 @ priority .4byte F_AFFECTED_BY_KINGS_ROCK | F_MIRROR_MOVE_COMPATIBLE | F_AFFECTED_BY_PROTECT @ misc. flags @@ -1069,7 +1070,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 40 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -1080,7 +1081,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 30 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -1113,7 +1114,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 20 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte 0 @ misc. flags @@ -1157,7 +1158,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 15 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -1168,7 +1169,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 20 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -1179,7 +1180,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 30 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -1190,7 +1191,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 20 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -1223,7 +1224,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 40 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -1234,7 +1235,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 40 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -1245,7 +1246,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 30 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -1256,7 +1257,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 30 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -1267,7 +1268,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 30 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_PROTECT @ misc. flags @@ -1278,7 +1279,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 20 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -1289,7 +1290,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 30 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -1300,7 +1301,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 10 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_KINGS_ROCK | F_AFFECTED_BY_PROTECT | F_MAKES_CONTACT @ misc. flags @@ -1311,7 +1312,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 10 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_SPECIAL + .byte TARGET_SPECIAL .byte 0 @ priority .4byte 0 @ misc. flags @@ -1322,7 +1323,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 20 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_SPECIAL + .byte TARGET_SPECIAL .byte 0 @ priority .4byte 0 @ misc. flags @@ -1333,7 +1334,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 5 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_ALL_EXCEPT_USER + .byte TARGET_ALL_EXCEPT_USER .byte 0 @ priority .4byte F_AFFECTED_BY_KINGS_ROCK | F_MIRROR_MOVE_COMPATIBLE | F_AFFECTED_BY_PROTECT @ misc. flags @@ -1432,7 +1433,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 20 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_BOTH_ENEMIES + .byte TARGET_BOTH_ENEMIES .byte 0 @ priority .4byte F_AFFECTED_BY_KINGS_ROCK | F_MIRROR_MOVE_COMPATIBLE | F_AFFECTED_BY_PROTECT @ misc. flags @@ -1476,7 +1477,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 20 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -1498,7 +1499,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 10 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_MIRROR_MOVE_COMPATIBLE | F_AFFECTED_BY_SNATCH @ misc. flags @@ -1608,7 +1609,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 30 @ PP .byte 10 @ secondary effect chance - .byte F_TARGET_BOTH_ENEMIES + .byte TARGET_BOTH_ENEMIES .byte 0 @ priority .4byte F_MIRROR_MOVE_COMPATIBLE | F_AFFECTED_BY_PROTECT @ misc. flags @@ -1663,7 +1664,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 40 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte 0 @ misc. flags @@ -1674,7 +1675,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 40 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -1696,7 +1697,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 5 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_ALL_EXCEPT_USER + .byte TARGET_ALL_EXCEPT_USER .byte 0 @ priority .4byte F_AFFECTED_BY_KINGS_ROCK | F_MIRROR_MOVE_COMPATIBLE | F_AFFECTED_BY_PROTECT @ misc. flags @@ -1729,7 +1730,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 10 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -1740,7 +1741,7 @@ gBattleMoves:: @ 81FB12C .byte 90 @ accuracy .byte 10 @ PP .byte 30 @ secondary effect chance - .byte F_TARGET_BOTH_ENEMIES + .byte TARGET_BOTH_ENEMIES .byte 0 @ priority .4byte F_MIRROR_MOVE_COMPATIBLE | F_AFFECTED_BY_PROTECT @ misc. flags @@ -1762,7 +1763,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 30 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -1773,7 +1774,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 30 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte 0 @ misc. flags @@ -1817,7 +1818,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 10 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -1949,7 +1950,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 30 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte 0 @ misc. flags @@ -2004,7 +2005,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 25 @ PP .byte 10 @ secondary effect chance - .byte F_TARGET_BOTH_ENEMIES + .byte TARGET_BOTH_ENEMIES .byte 0 @ priority .4byte F_MIRROR_MOVE_COMPATIBLE | F_AFFECTED_BY_PROTECT @ misc. flags @@ -2015,7 +2016,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 10 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 3 @ priority .4byte 0 @ misc. flags @@ -2070,7 +2071,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 10 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -2114,7 +2115,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 20 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_ENEMY_SIDE + .byte TARGET_ENEMY_SIDE .byte 0 @ priority .4byte 0 @ misc. flags @@ -2147,7 +2148,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 5 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte 0 @ misc. flags @@ -2158,7 +2159,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 5 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte 0 @ misc. flags @@ -2169,7 +2170,7 @@ gBattleMoves:: @ 81FB12C .byte 95 @ accuracy .byte 15 @ PP .byte 100 @ secondary effect chance - .byte F_TARGET_BOTH_ENEMIES + .byte TARGET_BOTH_ENEMIES .byte 0 @ priority .4byte F_MIRROR_MOVE_COMPATIBLE | F_AFFECTED_BY_PROTECT @ misc. flags @@ -2180,7 +2181,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 5 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 3 @ priority .4byte 0 @ misc. flags @@ -2213,7 +2214,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 15 @ PP .byte 100 @ secondary effect chance - .byte F_TARGET_RANDOM + .byte TARGET_RANDOM .byte 0 @ priority .4byte F_AFFECTED_BY_KINGS_ROCK | F_MIRROR_MOVE_COMPATIBLE | F_AFFECTED_BY_PROTECT | F_MAKES_CONTACT @ misc. flags @@ -2224,7 +2225,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 10 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte 0 @ misc. flags @@ -2246,7 +2247,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 10 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 3 @ priority .4byte 0 @ misc. flags @@ -2301,7 +2302,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 10 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH | F_AFFECTED_BY_PROTECT @ misc. flags @@ -2367,7 +2368,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 10 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_SPECIAL + .byte TARGET_SPECIAL .byte 0 @ priority .4byte 0 @ misc. flags @@ -2378,7 +2379,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 5 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -2422,7 +2423,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 25 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -2455,7 +2456,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 30 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_ALL_EXCEPT_USER + .byte TARGET_ALL_EXCEPT_USER .byte 0 @ priority .4byte F_AFFECTED_BY_KINGS_ROCK | F_MIRROR_MOVE_COMPATIBLE | F_AFFECTED_BY_PROTECT @ misc. flags @@ -2499,7 +2500,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 40 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte 0 @ misc. flags @@ -2543,7 +2544,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 20 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_BOTH_ENEMIES + .byte TARGET_BOTH_ENEMIES .byte 0 @ priority .4byte F_MIRROR_MOVE_COMPATIBLE | F_AFFECTED_BY_MAGIC_COAT | F_AFFECTED_BY_PROTECT @ misc. flags @@ -2587,7 +2588,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 5 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -2598,7 +2599,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 5 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -2609,7 +2610,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 5 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -2642,7 +2643,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 20 @ PP .byte 20 @ secondary effect chance - .byte F_TARGET_BOTH_ENEMIES + .byte TARGET_BOTH_ENEMIES .byte 0 @ priority .4byte F_AFFECTED_BY_KINGS_ROCK | F_MIRROR_MOVE_COMPATIBLE | F_AFFECTED_BY_PROTECT @ misc. flags @@ -2653,7 +2654,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 5 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte 0 @ misc. flags @@ -2664,7 +2665,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 5 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte 0 @ misc. flags @@ -2686,7 +2687,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 20 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_SPECIAL + .byte TARGET_SPECIAL .byte -5 @ priority .4byte F_MIRROR_MOVE_COMPATIBLE @ misc. flags @@ -2796,7 +2797,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 10 @ PP .byte 100 @ secondary effect chance - .byte F_TARGET_RANDOM + .byte TARGET_RANDOM .byte 0 @ priority .4byte F_AFFECTED_BY_KINGS_ROCK | F_MIRROR_MOVE_COMPATIBLE | F_AFFECTED_BY_PROTECT @ misc. flags @@ -2807,7 +2808,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 10 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -2829,7 +2830,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 10 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -2840,7 +2841,7 @@ gBattleMoves:: @ 81FB12C .byte 90 @ accuracy .byte 10 @ PP .byte 10 @ secondary effect chance - .byte F_TARGET_BOTH_ENEMIES + .byte TARGET_BOTH_ENEMIES .byte 0 @ priority .4byte F_MIRROR_MOVE_COMPATIBLE | F_AFFECTED_BY_PROTECT @ misc. flags @@ -2851,7 +2852,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 10 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_PROTECT @ misc. flags @@ -2939,7 +2940,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 20 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 3 @ priority .4byte 0 @ misc. flags @@ -2950,7 +2951,7 @@ gBattleMoves:: @ 81FB12C .byte 95 @ accuracy .byte 20 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_SPECIAL + .byte TARGET_SPECIAL .byte 0 @ priority .4byte 0 @ misc. flags @@ -2961,7 +2962,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 20 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -2983,7 +2984,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 20 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 5 @ priority .4byte 0 @ misc. flags @@ -3016,7 +3017,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 10 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_PROTECT @ misc. flags @@ -3027,7 +3028,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 20 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_SPECIAL + .byte TARGET_SPECIAL .byte 0 @ priority .4byte 0 @ misc. flags @@ -3038,7 +3039,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 20 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -3060,7 +3061,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 15 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_SPECIAL + .byte TARGET_SPECIAL .byte 4 @ priority .4byte 0 @ misc. flags @@ -3071,7 +3072,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 10 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte 0 @ misc. flags @@ -3137,7 +3138,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 5 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_BOTH_ENEMIES + .byte TARGET_BOTH_ENEMIES .byte 0 @ priority .4byte F_AFFECTED_BY_KINGS_ROCK | F_MIRROR_MOVE_COMPATIBLE | F_AFFECTED_BY_PROTECT @ misc. flags @@ -3159,7 +3160,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 10 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_PROTECT @ misc. flags @@ -3170,7 +3171,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 20 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -3181,7 +3182,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 5 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_MIRROR_MOVE_COMPATIBLE | F_AFFECTED_BY_PROTECT @ misc. flags @@ -3192,7 +3193,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 10 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_SPECIAL + .byte TARGET_SPECIAL .byte 4 @ priority .4byte F_MIRROR_MOVE_COMPATIBLE @ misc. flags @@ -3236,7 +3237,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 20 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -3247,7 +3248,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 20 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -3291,7 +3292,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 20 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_ALL_EXCEPT_USER + .byte TARGET_ALL_EXCEPT_USER .byte 0 @ priority .4byte F_AFFECTED_BY_PROTECT @ misc. flags @@ -3313,7 +3314,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 15 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte 0 @ misc. flags @@ -3346,7 +3347,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 10 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -3357,7 +3358,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 10 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_BOTH_ENEMIES + .byte TARGET_BOTH_ENEMIES .byte 0 @ priority .4byte F_MIRROR_MOVE_COMPATIBLE | F_AFFECTED_BY_PROTECT @ misc. flags @@ -3445,7 +3446,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 5 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -3467,7 +3468,7 @@ gBattleMoves:: @ 81FB12C .byte 95 @ accuracy .byte 25 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_BOTH_ENEMIES + .byte TARGET_BOTH_ENEMIES .byte 0 @ priority .4byte F_AFFECTED_BY_KINGS_ROCK | F_MIRROR_MOVE_COMPATIBLE | F_AFFECTED_BY_PROTECT @ misc. flags @@ -3555,7 +3556,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 20 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -3566,7 +3567,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 5 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_BOTH_ENEMIES + .byte TARGET_BOTH_ENEMIES .byte 0 @ priority .4byte F_MIRROR_MOVE_COMPATIBLE | F_AFFECTED_BY_PROTECT @ misc. flags @@ -3643,7 +3644,7 @@ gBattleMoves:: @ 81FB12C .byte 85 @ accuracy .byte 10 @ PP .byte 30 @ secondary effect chance - .byte F_TARGET_BOTH_ENEMIES + .byte TARGET_BOTH_ENEMIES .byte 0 @ priority .4byte F_AFFECTED_BY_KINGS_ROCK | F_MIRROR_MOVE_COMPATIBLE | F_AFFECTED_BY_PROTECT @ misc. flags @@ -3687,7 +3688,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 15 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -3709,7 +3710,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 40 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -3742,7 +3743,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 20 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -3819,7 +3820,7 @@ gBattleMoves:: @ 81FB12C .byte 100 @ accuracy .byte 15 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte 0 @ misc. flags @@ -3830,7 +3831,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 20 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags @@ -3852,7 +3853,7 @@ gBattleMoves:: @ 81FB12C .byte 0 @ accuracy .byte 20 @ PP .byte 0 @ secondary effect chance - .byte F_TARGET_USER + .byte TARGET_USER .byte 0 @ priority .4byte F_AFFECTED_BY_SNATCH @ misc. flags diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index 4e41bcc20..3c255b461 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -1,607 +1,611 @@ #include "constants/abilities.h" +#include "constants/battle_constants.h" +#include "constants/moves.h" +#include "constants/songs.h" .include "asm/macros.inc" - .include "constants/constants.inc" .include "asm/macros/battle_script.inc" + .include "constants/constants.inc" + .include "constants/battle_script_constants.inc" .section script_data, "aw", %progbits -gBattleScriptsEffectsTable:: @ 81D6BBC - .4byte MoveEffect_Hit - .4byte MoveEffect_Sleep - .4byte MoveEffect_PoisonHit - .4byte MoveEffect_Absorb - .4byte MoveEffect_BurnHit - .4byte MoveEffect_FreezeHit - .4byte MoveEffect_ParalyzeHit - .4byte MoveEffect_Explosion - .4byte MoveEffect_DreamEater - .4byte MoveEffect_MirrorMove - .4byte MoveEffect_AttackUp - .4byte MoveEffect_DefenseUp - .4byte MoveEffect_SpeedUp - .4byte MoveEffect_SpecialAttackUp - .4byte MoveEffect_SpecialDefenseUp - .4byte MoveEffect_AccuracyUp - .4byte MoveEffect_EvasionUp - .4byte MoveEffect_AlwaysHit - .4byte MoveEffect_AttackDown - .4byte MoveEffect_DefenseDown - .4byte MoveEffect_SpeedDown - .4byte MoveEffect_SpecialAttackDown - .4byte MoveEffect_SpecialDefenseDown - .4byte MoveEffect_AccuracyDown - .4byte MoveEffect_EvasionDown - .4byte MoveEffect_Haze - .4byte MoveEffect_Bide - .4byte MoveEffect_Rampage - .4byte MoveEffect_Roar - .4byte MoveEffect_MultiHit - .4byte MoveEffect_Conversion - .4byte MoveEffect_FlinchHit - .4byte MoveEffect_RestoreHp - .4byte MoveEffect_Toxic - .4byte MoveEffect_PayDay - .4byte MoveEffect_LightScreen - .4byte MoveEffect_TriAttack - .4byte MoveEffect_Rest - .4byte MoveEffect_Ohko - .4byte MoveEffect_RazorWind - .4byte MoveEffect_SuperFang - .4byte MoveEffect_DragonRage - .4byte MoveEffect_Trap - .4byte MoveEffect_HighCritical - .4byte MoveEffect_DoubleHit - .4byte MoveEffect_RecoilIfMiss - .4byte MoveEffect_Mist - .4byte MoveEffect_FocusEnergy - .4byte MoveEffect_Recoil - .4byte MoveEffect_Confuse - .4byte MoveEffect_AttackUp2 - .4byte MoveEffect_DefenseUp2 - .4byte MoveEffect_SpeedUp2 - .4byte MoveEffect_SpecialAttackUp2 - .4byte MoveEffect_SpecialDefenseUp2 - .4byte MoveEffect_AccuracyUp2 - .4byte MoveEffect_EvasionUp2 - .4byte MoveEffect_Transform - .4byte MoveEffect_AttackDown2 - .4byte MoveEffect_DefenseDown2 - .4byte MoveEffect_SpeedDown2 - .4byte MoveEffect_SpecialAttackDown2 - .4byte MoveEffect_SpecialDefenseDown2 - .4byte MoveEffect_AccuracyDown2 - .4byte MoveEffect_EvasionDown2 - .4byte MoveEffect_Reflect - .4byte MoveEffect_Poison - .4byte MoveEffect_Paralyze - .4byte MoveEffect_AttackDownHit - .4byte MoveEffect_DefenseDownHit - .4byte MoveEffect_SpeedDownHit - .4byte MoveEffect_SpecialAttackDownHit - .4byte MoveEffect_SpecialDefenseDownHit - .4byte MoveEffect_AccuracyDownHit - .4byte MoveEffect_EvasionDownHit - .4byte MoveEffect_SkyAttack - .4byte MoveEffect_ConfuseHit - .4byte MoveEffect_Twineedle - .4byte MoveEffect_VitalThrow - .4byte MoveEffect_Substitute - .4byte MoveEffect_Recharge - .4byte MoveEffect_Rage - .4byte MoveEffect_Mimic - .4byte MoveEffect_Metronome - .4byte MoveEffect_LeechSeed - .4byte MoveEffect_Splash - .4byte MoveEffect_Disable - .4byte MoveEffect_LevelDamage - .4byte MoveEffect_Psywave - .4byte MoveEffect_Counter - .4byte MoveEffect_Encore - .4byte MoveEffect_PainSplit - .4byte MoveEffect_Snore - .4byte MoveEffect_Conversion2 - .4byte MoveEffect_LockOn - .4byte MoveEffect_Sketch - .4byte MoveEffect_Unused60 - .4byte MoveEffect_SleepTalk - .4byte MoveEffect_DestinyBond - .4byte MoveEffect_Flail - .4byte MoveEffect_Spite - .4byte MoveEffect_FalseSwipe - .4byte MoveEffect_HealBell - .4byte MoveEffect_QuickAttack - .4byte MoveEffect_TripleKick - .4byte MoveEffect_Thief - .4byte MoveEffect_MeanLook - .4byte MoveEffect_Nightmare - .4byte MoveEffect_Minimize - .4byte MoveEffect_Curse - .4byte MoveEffect_Unused6E - .4byte MoveEffect_Protect - .4byte MoveEffect_Spikes - .4byte MoveEffect_Foresight - .4byte MoveEffect_PerishSong - .4byte MoveEffect_Sandstorm - .4byte MoveEffect_Endure - .4byte MoveEffect_Rollout - .4byte MoveEffect_Swagger - .4byte MoveEffect_FuryCutter - .4byte MoveEffect_Attract - .4byte MoveEffect_Return - .4byte MoveEffect_Present - .4byte MoveEffect_Frustration - .4byte MoveEffect_Safeguard - .4byte MoveEffect_ThawHit - .4byte MoveEffect_Magnitude - .4byte MoveEffect_BatonPass - .4byte MoveEffect_Pursuit - .4byte MoveEffect_RapidSpin - .4byte MoveEffect_Sonicboom - .4byte MoveEffect_Unused83 - .4byte MoveEffect_MorningSun - .4byte MoveEffect_Synthesis - .4byte MoveEffect_Moonlight - .4byte MoveEffect_HiddenPower - .4byte MoveEffect_RainDance - .4byte MoveEffect_SunnyDay - .4byte MoveEffect_DefenseUpHit - .4byte MoveEffect_AttackUpHit - .4byte MoveEffect_AllStatsUpHit - .4byte MoveEffect_Unused8D - .4byte MoveEffect_BellyDrum - .4byte MoveEffect_PsychUp - .4byte MoveEffect_MirrorCoat - .4byte MoveEffect_SkullBash - .4byte MoveEffect_Twister - .4byte MoveEffect_Earthquake - .4byte MoveEffect_FutureSight - .4byte MoveEffect_Gust - .4byte MoveEffect_FlinchHit2 - .4byte MoveEffect_Solarbeam - .4byte MoveEffect_Thunder - .4byte MoveEffect_Teleport - .4byte MoveEffect_BeatUp - .4byte MoveEffect_Fly - .4byte MoveEffect_DefenseCurl - .4byte MoveEffect_Softboiled - .4byte MoveEffect_FakeOut - .4byte MoveEffect_Uproar - .4byte MoveEffect_Stockpile - .4byte MoveEffect_SpitUp - .4byte MoveEffect_Swallow - .4byte MoveEffect_UnusedA3 - .4byte MoveEffect_Hail - .4byte MoveEffect_Torment - .4byte MoveEffect_Flatter - .4byte MoveEffect_WillOWisp - .4byte MoveEffect_Memento - .4byte MoveEffect_Facade - .4byte MoveEffect_FocusPunch - .4byte MoveEffect_Smellingsalt - .4byte MoveEffect_FollowMe - .4byte MoveEffect_NaturePower - .4byte MoveEffect_Charge - .4byte MoveEffect_Taunt - .4byte MoveEffect_HelpingHand - .4byte MoveEffect_Trick - .4byte MoveEffect_RolePlay - .4byte MoveEffect_Wish - .4byte MoveEffect_Assist - .4byte MoveEffect_Ingrain - .4byte MoveEffect_Superpower - .4byte MoveEffect_MagicCoat - .4byte MoveEffect_Recycle - .4byte MoveEffect_Revenge - .4byte MoveEffect_BrickBreak - .4byte MoveEffect_Yawn - .4byte MoveEffect_KnockOff - .4byte MoveEffect_Endeavor - .4byte MoveEffect_Eruption - .4byte MoveEffect_SkillSwap - .4byte MoveEffect_Imprison - .4byte MoveEffect_Refresh - .4byte MoveEffect_Grudge - .4byte MoveEffect_Snatch - .4byte MoveEffect_LowKick - .4byte MoveEffect_SecretPower - .4byte MoveEffect_DoubleEdge - .4byte MoveEffect_TeeterDance - .4byte MoveEffect_BlazeKick - .4byte MoveEffect_MudSport - .4byte MoveEffect_PoisonFang - .4byte MoveEffect_WeatherBall - .4byte MoveEffect_Overheat - .4byte MoveEffect_Tickle - .4byte MoveEffect_CosmicPower - .4byte MoveEffect_SkyUppercut - .4byte MoveEffect_BulkUp - .4byte MoveEffect_PoisonTail - .4byte MoveEffect_WaterSport - .4byte MoveEffect_CalmMind - .4byte MoveEffect_DragonDance - .4byte MoveEffect_Camouflage - -BattleScript_1D6F14: @ 81D6F14 -MoveEffect_AccuracyDown2: @ 81D6F14 -MoveEffect_AccuracyUp2: @ 81D6F14 -MoveEffect_AccuracyUp: @ 81D6F14 -MoveEffect_AlwaysHit: @ 81D6F14 -MoveEffect_EvasionDown2: @ 81D6F14 -MoveEffect_EvasionDownHit: @ 81D6F14 -MoveEffect_EvasionUp2: @ 81D6F14 -MoveEffect_FalseSwipe: @ 81D6F14 -MoveEffect_HighCritical: @ 81D6F14 -MoveEffect_Hit: @ 81D6F14 -MoveEffect_Pursuit: @ 81D6F14 -MoveEffect_QuickAttack: @ 81D6F14 -MoveEffect_SpecialAttackDown2: @ 81D6F14 -MoveEffect_SpecialAttackDown: @ 81D6F14 -MoveEffect_SpecialDefenseDown: @ 81D6F14 -MoveEffect_SpecialDefenseUp: @ 81D6F14 -MoveEffect_SpeedUp: @ 81D6F14 -MoveEffect_Unused60: @ 81D6F14 -MoveEffect_Unused6E: @ 81D6F14 -MoveEffect_Unused83: @ 81D6F14 -MoveEffect_Unused8D: @ 81D6F14 -MoveEffect_UnusedA3: @ 81D6F14 -MoveEffect_VitalThrow: @ 81D6F14 - jumpifhalfword 1, gCurrentMove, 57, BattleScript_1D6F3A - jumpifspecialstatusflag TARGET, 0x40000, 1, BattleScript_1D6F3A - orword gHitMarker, 0x40000 - setbyte gSharedMem + 0x1601F, 2 - -BattleScript_1D6F3A: @ 81D6F3A - attackcanceler - -BattleScript_1D6F3B: @ 81D6F3B - accuracycheck BattleScript_1D6F72, 0 - -BattleScript_1D6F42: @ 81D6F42 - attackstring - ppreduce - -BattleScript_1D6F44:: @ 81D6F44 +gBattleScriptsForMoveEffects:: @ 81D6BBC + .4byte BattleScript_EffectHit + .4byte BattleScript_EffectSleep + .4byte BattleScript_EffectPoisonHit + .4byte BattleScript_EffectAbsorb + .4byte BattleScript_EffectBurnHit + .4byte BattleScript_EffectFreezeHit + .4byte BattleScript_EffectParalyzeHit + .4byte BattleScript_EffectExplosion + .4byte BattleScript_EffectDreamEater + .4byte BattleScript_EffectMirrorMove + .4byte BattleScript_EffectAttackUp + .4byte BattleScript_EffectDefenseUp + .4byte BattleScript_EffectSpeedUp + .4byte BattleScript_EffectSpecialAttackUp + .4byte BattleScript_EffectSpecialDefenseUp + .4byte BattleScript_EffectAccuracyUp + .4byte BattleScript_EffectEvasionUp + .4byte BattleScript_EffectAlwaysHit + .4byte BattleScript_EffectAttackDown + .4byte BattleScript_EffectDefenseDown + .4byte BattleScript_EffectSpeedDown + .4byte BattleScript_EffectSpecialAttackDown + .4byte BattleScript_EffectSpecialDefenseDown + .4byte BattleScript_EffectAccuracyDown + .4byte BattleScript_EffectEvasionDown + .4byte BattleScript_EffectHaze + .4byte BattleScript_EffectBide + .4byte BattleScript_EffectRampage + .4byte BattleScript_EffectRoar + .4byte BattleScript_EffectMultiHit + .4byte BattleScript_EffectConversion + .4byte BattleScript_EffectFlinchHit + .4byte BattleScript_EffectRestoreHp + .4byte BattleScript_EffectToxic + .4byte BattleScript_EffectPayDay + .4byte BattleScript_EffectLightScreen + .4byte BattleScript_EffectTriAttack + .4byte BattleScript_EffectRest + .4byte BattleScript_EffectOHKO + .4byte BattleScript_EffectRazorWind + .4byte BattleScript_EffectSuperFang + .4byte BattleScript_EffectDragonRage + .4byte BattleScript_EffectTrap + .4byte BattleScript_EffectHighCritical + .4byte BattleScript_EffectDoubleHit + .4byte BattleScript_EffectRecoilIfMiss + .4byte BattleScript_EffectMist + .4byte BattleScript_EffectFocusEnergy + .4byte BattleScript_EffectRecoil + .4byte BattleScript_EffectConfuse + .4byte BattleScript_EffectAttackUp2 + .4byte BattleScript_EffectDefenseUp2 + .4byte BattleScript_EffectSpeedUp2 + .4byte BattleScript_EffectSpecialAttackUp2 + .4byte BattleScript_EffectSpecialDefenseUp2 + .4byte BattleScript_EffectAccuracyUp2 + .4byte BattleScript_EffectEvasionUp2 + .4byte BattleScript_EffectTransform + .4byte BattleScript_EffectAttackDown2 + .4byte BattleScript_EffectDefenseDown2 + .4byte BattleScript_EffectSpeedDown2 + .4byte BattleScript_EffectSpecialAttackDown2 + .4byte BattleScript_EffectSpecialDefenseDown2 + .4byte BattleScript_EffectAccuracyDown2 + .4byte BattleScript_EffectEvasionDown2 + .4byte BattleScript_EffectReflect + .4byte BattleScript_EffectPoison + .4byte BattleScript_EffectParalyze + .4byte BattleScript_EffectAttackDownHit + .4byte BattleScript_EffectDefenseDownHit + .4byte BattleScript_EffectSpeedDownHit + .4byte BattleScript_EffectSpecialAttackDownHit + .4byte BattleScript_EffectSpecialDefenseDownHit + .4byte BattleScript_EffectAccuracyDownHit + .4byte BattleScript_EffectEvasionDownHit + .4byte BattleScript_EffectSkyAttack + .4byte BattleScript_EffectConfuseHit + .4byte BattleScript_EffectTwineedle + .4byte BattleScript_EffectVitalThrow + .4byte BattleScript_EffectSubstitute + .4byte BattleScript_EffectRecharge + .4byte BattleScript_EffectRage + .4byte BattleScript_EffectMimic + .4byte BattleScript_EffectMetronome + .4byte BattleScript_EffectLeechSeed + .4byte BattleScript_EffectSplash + .4byte BattleScript_EffectDisable + .4byte BattleScript_EffectLevelDamage + .4byte BattleScript_EffectPsywave + .4byte BattleScript_EffectCounter + .4byte BattleScript_EffectEncore + .4byte BattleScript_EffectPainSplit + .4byte BattleScript_EffectSnore + .4byte BattleScript_EffectConversion2 + .4byte BattleScript_EffectLockOn + .4byte BattleScript_EffectSketch + .4byte BattleScript_EffectUnused60//Thaw + .4byte BattleScript_EffectSleepTalk + .4byte BattleScript_EffectDestinyBond + .4byte BattleScript_EffectFlail + .4byte BattleScript_EffectSpite + .4byte BattleScript_EffectFalseSwipe + .4byte BattleScript_EffectHealBell + .4byte BattleScript_EffectQuickAttack + .4byte BattleScript_EffectTripleKick + .4byte BattleScript_EffectThief + .4byte BattleScript_EffectMeanLook + .4byte BattleScript_EffectNightmare + .4byte BattleScript_EffectMinimize + .4byte BattleScript_EffectCurse + .4byte BattleScript_EffectUnused6E + .4byte BattleScript_EffectProtect + .4byte BattleScript_EffectSpikes + .4byte BattleScript_EffectForesight + .4byte BattleScript_EffectPerishSong + .4byte BattleScript_EffectSandstorm + .4byte BattleScript_EffectEndure + .4byte BattleScript_EffectRollout + .4byte BattleScript_EffectSwagger + .4byte BattleScript_EffectFuryCutter + .4byte BattleScript_EffectAttract + .4byte BattleScript_EffectReturn + .4byte BattleScript_EffectPresent + .4byte BattleScript_EffectFrustration + .4byte BattleScript_EffectSafeguard + .4byte BattleScript_EffectThawHit + .4byte BattleScript_EffectMagnitude + .4byte BattleScript_EffectBatonPass + .4byte BattleScript_EffectPursuit + .4byte BattleScript_EffectRapidSpin + .4byte BattleScript_EffectSonicboom + .4byte BattleScript_EffectUnused83 + .4byte BattleScript_EffectMorningSun + .4byte BattleScript_EffectSynthesis + .4byte BattleScript_EffectMoonlight + .4byte BattleScript_EffectHiddenPower + .4byte BattleScript_EffectRainDance + .4byte BattleScript_EffectSunnyDay + .4byte BattleScript_EffectDefenseUpHit + .4byte BattleScript_EffectAttackUpHit + .4byte BattleScript_EffectAllStatsUpHit + .4byte BattleScript_EffectUnused8D + .4byte BattleScript_EffectBellyDrum + .4byte BattleScript_EffectPsychUp + .4byte BattleScript_EffectMirrorCoat + .4byte BattleScript_EffectSkullBash + .4byte BattleScript_EffectTwister + .4byte BattleScript_EffectEarthquake + .4byte BattleScript_EffectFutureSight + .4byte BattleScript_EffectGust + .4byte BattleScript_EffectStomp + .4byte BattleScript_EffectSolarbeam + .4byte BattleScript_EffectThunder + .4byte BattleScript_EffectTeleport + .4byte BattleScript_EffectBeatUp + .4byte BattleScript_EffectSemiInvulnerable + .4byte BattleScript_EffectDefenseCurl + .4byte BattleScript_EffectSoftboiled + .4byte BattleScript_EffectFakeOut + .4byte BattleScript_EffectUproar + .4byte BattleScript_EffectStockpile + .4byte BattleScript_EffectSpitUp + .4byte BattleScript_EffectSwallow + .4byte BattleScript_EffectUnusedA3 + .4byte BattleScript_EffectHail + .4byte BattleScript_EffectTorment + .4byte BattleScript_EffectFlatter + .4byte BattleScript_EffectWillOWisp + .4byte BattleScript_EffectMemento + .4byte BattleScript_EffectFacade + .4byte BattleScript_EffectFocusPunch + .4byte BattleScript_EffectSmellingsalt + .4byte BattleScript_EffectFollowMe + .4byte BattleScript_EffectNaturePower + .4byte BattleScript_EffectCharge + .4byte BattleScript_EffectTaunt + .4byte BattleScript_EffectHelpingHand + .4byte BattleScript_EffectTrick + .4byte BattleScript_EffectRolePlay + .4byte BattleScript_EffectWish + .4byte BattleScript_EffectAssist + .4byte BattleScript_EffectIngrain + .4byte BattleScript_EffectSuperpower + .4byte BattleScript_EffectMagicCoat + .4byte BattleScript_EffectRecycle + .4byte BattleScript_EffectRevenge + .4byte BattleScript_EffectBrickBreak + .4byte BattleScript_EffectYawn + .4byte BattleScript_EffectKnockOff + .4byte BattleScript_EffectEndeavor + .4byte BattleScript_EffectEruption + .4byte BattleScript_EffectSkillSwap + .4byte BattleScript_EffectImprison + .4byte BattleScript_EffectRefresh + .4byte BattleScript_EffectGrudge + .4byte BattleScript_EffectSnatch + .4byte BattleScript_EffectLowKick + .4byte BattleScript_EffectSecretPower + .4byte BattleScript_EffectDoubleEdge + .4byte BattleScript_EffectTeeterDance + .4byte BattleScript_EffectBlazeKick + .4byte BattleScript_EffectMudSport + .4byte BattleScript_EffectPoisonFang + .4byte BattleScript_EffectWeatherBall + .4byte BattleScript_EffectOverheat + .4byte BattleScript_EffectTickle + .4byte BattleScript_EffectCosmicPower + .4byte BattleScript_EffectSkyUppercut + .4byte BattleScript_EffectBulkUp + .4byte BattleScript_EffectPoisonTail + .4byte BattleScript_EffectWaterSport + .4byte BattleScript_EffectCalmMind + .4byte BattleScript_EffectDragonDance + .4byte BattleScript_EffectCamouflage + +BattleScript_EffectHit: @ 81D6F14 +BattleScript_EffectAccuracyDown2: @ 81D6F14 +BattleScript_EffectAccuracyUp2: @ 81D6F14 +BattleScript_EffectAccuracyUp: @ 81D6F14 +BattleScript_EffectAlwaysHit: @ 81D6F14 +BattleScript_EffectEvasionDown2: @ 81D6F14 +BattleScript_EffectEvasionDownHit: @ 81D6F14 +BattleScript_EffectEvasionUp2: @ 81D6F14 +BattleScript_EffectFalseSwipe: @ 81D6F14 +BattleScript_EffectHighCritical: @ 81D6F14 +BattleScript_EffectHit: @ 81D6F14 +BattleScript_EffectPursuit: @ 81D6F14 +BattleScript_EffectQuickAttack: @ 81D6F14 +BattleScript_EffectSpecialAttackDown2: @ 81D6F14 +BattleScript_EffectSpecialAttackDown: @ 81D6F14 +BattleScript_EffectSpecialDefenseDown: @ 81D6F14 +BattleScript_EffectSpecialDefenseUp: @ 81D6F14 +BattleScript_EffectSpeedUp: @ 81D6F14 +BattleScript_EffectUnused60: @ 81D6F14 +BattleScript_EffectUnused6E: @ 81D6F14 +BattleScript_EffectUnused83: @ 81D6F14 +BattleScript_EffectUnused8D: @ 81D6F14 +BattleScript_EffectUnusedA3: @ 81D6F14 +BattleScript_EffectVitalThrow: @ 81D6F14 + jumpifnotmove MOVE_SURF, BattleScript_HitFromAtkCanceler + jumpifnostatus3 TARGET, STATUS3_UNDERWATER, BattleScript_HitFromAtkCanceler + orword gHitMarker, HITMARKER_IGNORE_UNDERWATER + setbyte sDMG_MULTIPLIER, 2 + +BattleScript_HitFromAtkCanceler: @ 81D6F3A + attackcanceler + +BattleScript_HitFromAccCheck: @ 81D6F3B + accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE + +BattleScript_HitFromAtkString: @ 81D6F42 + attackstring + ppreduce + +BattleScript_HitFromCritCalc:: @ 81D6F44 critcalc - atk5 - atk6 - atk7 + damagecalc + typecalc + adjustnormaldamage -BattleScript_1D6F48: @ 81D6F48 +BattleScript_HitFromAtkAnimation: @ 81D6F48 attackanimation waitanimation - missmessage - atk5c TARGET - waitstateatk - graphicalhpupdate TARGET + effectivenesssound + hitanimation TARGET + waitstate + healthbarupdate TARGET datahpupdate TARGET critmessage waitmessage 64 resultmessage waitmessage 64 - seteffectwithchancetarget - faintpokemon TARGET, 0, 0x0 + seteffectwithchance + tryfaintmon TARGET, FALSE, NULL -BattleScript_EndTurn:: @ 81D6F62 - setbyte gSharedMem + 0x1600C, 0 - atk49 0, 0 +BattleScript_MoveEnd:: @ 81D6F62 + setbyte sMOVEEND_STATE, 0 + moveend 0, 0 end -BattleScript_1D6F6C: @ 81D6F6C - orbyte gBattleMoveFlags, 1 +BattleScript_MakeMoveMissed: @ 81D6F6C + orbyte gBattleMoveFlags, MOVESTATUS_MISSED -BattleScript_1D6F72: @ 81D6F72 +BattleScript_PrintMoveMissed: @ 81D6F72 attackstring ppreduce -BattleScript_1D6F74:: @ 81D6F74 +BattleScript_MoveMissedPause:: @ 81D6F74 pause 32 -BattleScript_1D6F77: @ 81D6F77 - missmessage +BattleScript_MoveMissed: @ 81D6F77 + effectivenesssound resultmessage waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Sleep: @ 81D6F81 +BattleScript_EffectSleep: @ 81D6F81 attackcanceler attackstring ppreduce - jumpifsecondarytstatus TARGET, S_SUBSTITUTE, BattleScript_ButItFailed - jumpifstatus TARGET, SLP, BattleScript_1D6FC4 - jumpifcannotsleep BattleScript_1D6FE0 + jumpifstatus2 TARGET, STATUS2_SUBSTITUTE, BattleScript_ButItFailed + jumpifstatus TARGET, SLP, BattleScript_AlreadyAsleep + jumpifcantmakeasleep BattleScript_CantMakeAsleep jumpifstatus TARGET, SLP | PSN | BRN | FRZ | PAR | TOX, BattleScript_ButItFailed - accuracycheck BattleScript_ButItFailed, 0 - jumpifhalverset TARGET, 32, BattleScript_1D9037 + accuracycheck BattleScript_ButItFailed, ACC_CURR_MOVE + jumpifsideaffecting TARGET, SIDE_STATUS_SAFEGUARD, BattleScript_SafeguardProtected attackanimation waitanimation - setbyte gUnknown_02024D1F + 0x2, 1 - seteffecttarget - jump BattleScript_EndTurn + setmoveeffect EFFECT_SLEEP + seteffectprimary + goto BattleScript_MoveEnd -BattleScript_1D6FC4: @ 81D6FC4 +BattleScript_AlreadyAsleep: @ 81D6FC4 pause 32 printstring BATTLE_TEXT_DefendingAsleep waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -BattleScript_1D6FD2: @ 81D6FD2 +BattleScript_WasntAffected: @ 81D6FD2 pause 32 printstring BATTLE_TEXT_WasntAffected waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -BattleScript_1D6FE0: @ 81D6FE0 +BattleScript_CantMakeAsleep: @ 81D6FE0 pause 32 - printfromtable BattleTextList_40156A + printfromtable gUproarAwakeStringIds waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_PoisonHit: @ 81D6FF0 -MoveEffect_PoisonTail: @ 81D6FF0 - setbyte gUnknown_02024D1F + 0x2, 2 - jump BattleScript_1D6F14 +BattleScript_EffectPoisonHit: @ 81D6FF0 +BattleScript_EffectPoisonTail: @ 81D6FF0 + setmoveeffect EFFECT_POISON + goto BattleScript_EffectHit -MoveEffect_Absorb: @ 81D6FFB +BattleScript_EffectAbsorb: @ 81D6FFB attackcanceler - accuracycheck BattleScript_1D6F72, 0 + accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE attackstring ppreduce critcalc - atk5 - atk6 - atk7 + damagecalc + typecalc + adjustnormaldamage attackanimation waitanimation - missmessage - atk5c TARGET - waitstateatk - graphicalhpupdate TARGET + effectivenesssound + hitanimation TARGET + waitstate + healthbarupdate TARGET datahpupdate TARGET critmessage waitmessage 64 resultmessage waitmessage 64 negativedamage - orword gHitMarker, 0x100 - jumpifability TARGET, ABILITY_LIQUID_OOZE, BattleScript_1D7037 - setbyte gUnknown_02024D1F + 0x4, 0 - jump BattleScript_1D703F + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE + jumpifability TARGET, ABILITY_LIQUID_OOZE, BattleScript_AbsorbLiquidOoze + setbyte cMULTISTRING_CHOOSER, 0 + goto BattleScript_AbsorbUpdateHp -BattleScript_1D7037: @ 81D7037 +BattleScript_AbsorbLiquidOoze: @ 81D7037 manipulatedamage 0 - setbyte gUnknown_02024D1F + 0x4, 1 + setbyte cMULTISTRING_CHOOSER, 1 -BattleScript_1D703F: @ 81D703F - graphicalhpupdate USER +BattleScript_AbsorbUpdateHp: @ 81D703F + healthbarupdate USER datahpupdate USER - jumpifbyte 4, gBattleMoveFlags, 41, BattleScript_1D7056 - printfromtable BattleTextList_4015D0 + jumpifmovehadnoeffect BattleScript_AbsorbTryFainting + printfromtable gLeechSeedDrainStringIds waitmessage 64 -BattleScript_1D7056: @ 81D7056 - faintpokemon USER, 0, 0x0 - faintpokemon TARGET, 0, 0x0 - jump BattleScript_EndTurn +BattleScript_AbsorbTryFainting: @ 81D7056 + tryfaintmon USER, FALSE, NULL + tryfaintmon TARGET, FALSE, NULL + goto BattleScript_MoveEnd -MoveEffect_BlazeKick: @ 81D7069 -MoveEffect_BurnHit: @ 81D7069 - setbyte gUnknown_02024D1F + 0x2, 3 - jump BattleScript_1D6F14 +BattleScript_EffectBlazeKick: @ 81D7069 +BattleScript_EffectBurnHit: @ 81D7069 + setmoveeffect EFFECT_BURN + goto BattleScript_EffectHit -MoveEffect_FreezeHit: @ 81D7074 - setbyte gUnknown_02024D1F + 0x2, 4 - jump BattleScript_1D6F14 +BattleScript_EffectFreezeHit: @ 81D7074 + setmoveeffect EFFECT_FREEZE + goto BattleScript_EffectHit -MoveEffect_ParalyzeHit: @ 81D707F - setbyte gUnknown_02024D1F + 0x2, 5 - jump BattleScript_1D6F14 +BattleScript_EffectParalyzeHit: @ 81D707F + setmoveeffect EFFECT_PARALYSIS + goto BattleScript_EffectHit -MoveEffect_Explosion: @ 81D708A +BattleScript_EffectExplosion: @ 81D708A attackcanceler attackstring ppreduce faintifabilitynotdamp - setuserhptozero - waitstateatk - jumpifbyte 5, gBattleMoveFlags, 1, BattleScript_1D70A5 - callatk BattleScript_1D70FB - jump BattleScript_1D70A7 + setatkhptozero + waitstate + jumpifbyte NO_COMMON_BITS, gBattleMoveFlags, MOVESTATUS_MISSED, BattleScript_1D70A5 + call BattleScript_1D70FB + goto BattleScript_1D70A7 BattleScript_1D70A5: @ 81D70A5 attackanimation waitanimation BattleScript_1D70A7: @ 81D70A7 - atk25 + movevaluescleanup critcalc - atk5 - atk6 - atk7 - accuracycheck BattleScript_1D70E0, 0 - missmessage - atk5c TARGET - waitstateatk - graphicalhpupdate TARGET + damagecalc + typecalc + adjustnormaldamage + accuracycheck BattleScript_1D70E0, ACC_CURR_MOVE + effectivenesssound + hitanimation TARGET + waitstate + healthbarupdate TARGET datahpupdate TARGET critmessage waitmessage 64 resultmessage waitmessage 64 - faintpokemon TARGET, 0, 0x0 - setbyte gSharedMem + 0x1600C, 0 - atk49 2, 16 - jumpwhiletargetvalid BattleScript_1D70A7 - faintpokemon USER, 0, 0x0 + tryfaintmon TARGET, FALSE, NULL + setbyte sMOVEEND_STATE, 0 + moveend 2, 16 + jumpifnexttargetvalid BattleScript_1D70A7 + tryfaintmon USER, FALSE, NULL end BattleScript_1D70E0: @ 81D70E0 - missmessage + effectivenesssound resultmessage waitmessage 64 - setbyte gSharedMem + 0x1600C, 0 - atk49 2, 16 - jumpwhiletargetvalid BattleScript_1D70A7 - faintpokemon USER, 0, 0x0 + setbyte sMOVEEND_STATE, 0 + moveend 2, 16 + jumpifnexttargetvalid BattleScript_1D70A7 + tryfaintmon USER, FALSE, NULL end BattleScript_1D70FB: @ 81D70FB - bicbyte gBattleMoveFlags, 1 + bicbyte gBattleMoveFlags, MOVESTATUS_MISSED attackanimation waitanimation - orbyte gBattleMoveFlags, 1 + orbyte gBattleMoveFlags, MOVESTATUS_MISSED return -MoveEffect_DreamEater: @ 81D710A +BattleScript_EffectDreamEater: @ 81D710A attackcanceler - jumpifsecondarytstatus TARGET, S_SUBSTITUTE, BattleScript_1D711F + jumpifstatus2 TARGET, STATUS2_SUBSTITUTE, BattleScript_1D711F jumpifstatus TARGET, SLP, BattleScript_1D7129 BattleScript_1D711F: @ 81D711F attackstring ppreduce waitmessage 64 - jump BattleScript_1D6FD2 + goto BattleScript_WasntAffected BattleScript_1D7129: @ 81D7129 - accuracycheck BattleScript_1D6F72, 0 + accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE attackstring ppreduce critcalc - atk5 - atk6 - atk7 + damagecalc + typecalc + adjustnormaldamage attackanimation waitanimation - missmessage - atk5c TARGET - waitstateatk - graphicalhpupdate TARGET + effectivenesssound + hitanimation TARGET + waitstate + healthbarupdate TARGET datahpupdate TARGET critmessage waitmessage 64 resultmessage waitmessage 64 negativedamage - orword gHitMarker, 0x100 - graphicalhpupdate USER + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE + healthbarupdate USER datahpupdate USER - jumpifbyte 4, gBattleMoveFlags, 41, BattleScript_1D7167 + jumpifmovehadnoeffect BattleScript_DreamEaterTryFaintEnd printstring BATTLE_TEXT_DreamEaten waitmessage 64 -BattleScript_1D7167: @ 81D7167 - faintpokemon TARGET, 0, 0x0 - jump BattleScript_EndTurn +BattleScript_DreamEaterTryFaintEnd: @ 81D7167 + tryfaintmon TARGET, FALSE, NULL + goto BattleScript_MoveEnd -MoveEffect_MirrorMove: @ 81D7173 +BattleScript_EffectMirrorMove: @ 81D7173 attackcanceler attackstring pause 64 - jumptolastusedattack + trymirrormove ppreduce - orbyte gBattleMoveFlags, 32 + orbyte gBattleMoveFlags, MOVESTATUS_FAILED printstring BATTLE_TEXT_MirrorFail waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_AttackUp: @ 81D718B - setbyte gSharedMem + 0x1601E, 17 - jump BattleScript_1D71B2 +BattleScript_EffectAttackUp: @ 81D718B + setstatchanger ATTACK, 1, FALSE + goto BattleScript_EffectStatUp -MoveEffect_DefenseUp: @ 81D7196 - setbyte gSharedMem + 0x1601E, 18 - jump BattleScript_1D71B2 +BattleScript_EffectDefenseUp: @ 81D7196 + setstatchanger DEFENSE, 1, FALSE + goto BattleScript_EffectStatUp -MoveEffect_SpecialAttackUp: @ 81D71A1 - setbyte gSharedMem + 0x1601E, 20 - jump BattleScript_1D71B2 +BattleScript_EffectSpecialAttackUp: @ 81D71A1 + setstatchanger SP_ATTACK, 1, FALSE + goto BattleScript_EffectStatUp -MoveEffect_EvasionUp: @ 81D71AC - setbyte gSharedMem + 0x1601E, 23 +BattleScript_EffectEvasionUp: @ 81D71AC + setstatchanger EVASION, 1, FALSE -BattleScript_1D71B2: @ 81D71B2 +BattleScript_EffectStatUp: @ 81D71B2 attackcanceler -BattleScript_1D71B3: @ 81D71B3 +BattleScript_EffectStatUpAfterAtkCanceler: @ 81D71B3 attackstring ppreduce - statbuffchange 65, BattleScript_1D71E0 - jumpifbyte 1, gUnknown_02024D1F + 0x4, 2, BattleScript_1D71CE + statbuffchange AFFECTS_USER | 0x1, BattleScript_StatUpEnd + jumpifbyte NOT_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_StatUpAttackAnim pause 32 - jump BattleScript_1D71D8 + goto BattleScript_StatUpPrintString -BattleScript_1D71CE: @ 81D71CE +BattleScript_StatUpAttackAnim: @ 81D71CE attackanimation waitanimation -BattleScript_1D71D0: @ 81D71D0 - atk47 - playanimation USER, B_ANIM_STATS_CHANGE, gSharedMem + 0x160A4 +BattleScript_StatUpDoAnim: @ 81D71D0 + setgraphicalstatchangevalues + playanimation USER, B_ANIM_STATS_CHANGE, sANIM_ARG1 -BattleScript_1D71D8: @ 81D71D8 - printfromtable BattleTextList_401570 +BattleScript_StatUpPrintString: @ 81D71D8 + printfromtable gStatUpStringIds waitmessage 64 -BattleScript_1D71E0: @ 81D71E0 - jump BattleScript_EndTurn +BattleScript_StatUpEnd: @ 81D71E0 + goto BattleScript_MoveEnd BattleScript_StatUp:: @ 81D71E5 - playanimation 2, B_ANIM_STATS_CHANGE, gSharedMem + 0x160A4 - printfromtable BattleTextList_401570 + playanimation 2, B_ANIM_STATS_CHANGE, sANIM_ARG1 + printfromtable gStatUpStringIds waitmessage 64 return -MoveEffect_AttackDown: @ 81D71F5 - setbyte gSharedMem + 0x1601E, 145 - jump BattleScript_1D7227 +BattleScript_EffectAttackDown: @ 81D71F5 + setstatchanger ATTACK, 1, TRUE + goto BattleScript_EffectStatDown -MoveEffect_DefenseDown: @ 81D7200 - setbyte gSharedMem + 0x1601E, 146 - jump BattleScript_1D7227 +BattleScript_EffectDefenseDown: @ 81D7200 + setstatchanger DEFENSE, 1, TRUE + goto BattleScript_EffectStatDown -MoveEffect_SpeedDown: @ 81D720B - setbyte gSharedMem + 0x1601E, 147 - jump BattleScript_1D7227 +BattleScript_EffectSpeedDown: @ 81D720B + setstatchanger SPEED, 1, TRUE + goto BattleScript_EffectStatDown -MoveEffect_AccuracyDown: @ 81D7216 - setbyte gSharedMem + 0x1601E, 150 - jump BattleScript_1D7227 +BattleScript_EffectAccuracyDown: @ 81D7216 + setstatchanger ACCURACY, 1, TRUE + goto BattleScript_EffectStatDown -MoveEffect_EvasionDown: @ 81D7221 - setbyte gSharedMem + 0x1601E, 151 +BattleScript_EffectEvasionDown: @ 81D7221 + setstatchanger EVASION, 1, TRUE -BattleScript_1D7227: @ 81D7227 +BattleScript_EffectStatDown: @ 81D7227 attackcanceler - jumpifsecondarytstatus TARGET, S_SUBSTITUTE, BattleScript_1D83D4 - accuracycheck BattleScript_1D6F72, 0 + jumpifstatus2 TARGET, STATUS2_SUBSTITUTE, BattleScript_ButItFailedAtkStringPpReduce + accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE attackstring ppreduce - statbuffchange 1, BattleScript_1D7271 - jumpifbyte 3, gUnknown_02024D1F + 0x4, 2, BattleScript_1D725F - jumpifbyte 0, gUnknown_02024D1F + 0x4, 3, BattleScript_1D7271 + statbuffchange 1, BattleScript_StatDownEnd + jumpifbyte LESS_THAN, cMULTISTRING_CHOOSER, 2, BattleScript_StatDownDoAnim + jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 3, BattleScript_StatDownEnd pause 32 - jump BattleScript_1D7269 + goto BattleScript_StatDownPrintString -BattleScript_1D725F: @ 81D725F +BattleScript_StatDownDoAnim: @ 81D725F attackanimation waitanimation - atk47 - playanimation TARGET, B_ANIM_STATS_CHANGE, gSharedMem + 0x160A4 + setgraphicalstatchangevalues + playanimation TARGET, B_ANIM_STATS_CHANGE, sANIM_ARG1 -BattleScript_1D7269: @ 81D7269 - printfromtable BattleTextList_40157C +BattleScript_StatDownPrintString: @ 81D7269 + printfromtable gStatDownStringIds waitmessage 64 -BattleScript_1D7271: @ 81D7271 - jump BattleScript_EndTurn +BattleScript_StatDownEnd: @ 81D7271 + goto BattleScript_MoveEnd BattleScript_StatDown:: @ 81D7276 - playanimation 2, B_ANIM_STATS_CHANGE, gSharedMem + 0x160A4 - printfromtable BattleTextList_40157C + playanimation 2, B_ANIM_STATS_CHANGE, sANIM_ARG1 + printfromtable gStatDownStringIds waitmessage 64 return -MoveEffect_Haze: @ 81D7286 +BattleScript_EffectHaze: @ 81D7286 attackcanceler attackstring ppreduce @@ -610,728 +614,725 @@ MoveEffect_Haze: @ 81D7286 normalisebuffs printstring BATTLE_TEXT_StatElim waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Bide: @ 81D7297 +BattleScript_EffectBide: @ 81D7297 attackcanceler attackstring ppreduce attackanimation waitanimation - orword gHitMarker, 0x8000000 + orword gHitMarker, HITMARKER_x8000000 setbide - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Rampage: @ 81D72AB +BattleScript_EffectRampage: @ 81D72AB attackcanceler - accuracycheck BattleScript_1D6F72, 0 + accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE attackstring - jumpifsecondarytstatus USER, S_CONTINUE, BattleScript_1D72BF + jumpifstatus2 USER, STATUS2_MULTIPLETURNS, BattleScript_1D72BF ppreduce BattleScript_1D72BF: @ 81D72BF confuseifrepeatingattackends - jump BattleScript_1D6F44 + goto BattleScript_HitFromCritCalc -MoveEffect_Roar: @ 81D72C5 +BattleScript_EffectRoar: @ 81D72C5 attackcanceler attackstring ppreduce - jumpifability TARGET, ABILITY_SUCTION_CUPS, BattleScript_1D988D - jumpifspecialstatusflag TARGET, 0x400, 0, BattleScript_1D93EC - accuracycheck BattleScript_ButItFailed, 65535 - accuracycheck BattleScript_1D6F77, 0 + jumpifability TARGET, ABILITY_SUCTION_CUPS, BattleScript_AbilityPreventsPhasingOut + jumpifstatus3 TARGET, STATUS3_ROOTED, BattleScript_PrintMonIsRooted + accuracycheck BattleScript_ButItFailed, NO_ACC_CALC_CHECK_LOCK_ON + accuracycheck BattleScript_MoveMissed, ACC_CURR_MOVE forcerandomswitch BattleScript_ButItFailed -MoveEffect_MultiHit: @ 81D72ED +BattleScript_EffectMultiHit: @ 81D72ED attackcanceler - accuracycheck BattleScript_1D6F72, 0 + accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE attackstring ppreduce - setloopcounter 0 - atk8e - setbyte gSharedMem + 0x16112, 0 + setmultihitcounter 0 + initmultihitstring + setbyte sMULTIHIT_EFFECT, 0 -BattleScript_1D7300: @ 81D7300 - jumpiffainted USER, BattleScript_1D7396 - jumpiffainted TARGET, BattleScript_1D7377 - jumpifhalfword 0, gUnknown_02024BE8, 214, BattleScript_1D7322 - jumpifstatus USER, SLP, BattleScript_1D7377 +BattleScript_MultiHitLoop: @ 81D7300 + jumpifhasnohp USER, BattleScript_MultiHitEnd + jumpifhasnohp TARGET, BattleScript_MultiHitPrintStrings + jumpifhalfword EQUAL, gChosenMove, MOVE_SLEEP_TALK, BattleScript_DoMultiHit + jumpifstatus USER, SLP, BattleScript_MultiHitPrintStrings -BattleScript_1D7322: @ 81D7322 - atk25 - copyarray gUnknown_02024D1F + 0x2, gSharedMem + 0x16112, 1 +BattleScript_DoMultiHit: @ 81D7322 + movevaluescleanup + copybyte cEFFECT_CHOOSER, sMULTIHIT_EFFECT critcalc - atk5 - atk6 - jumpifbyte 4, gBattleMoveFlags, 41, BattleScript_1D7374 - atk7 + damagecalc + typecalc + jumpifmovehadnoeffect BattleScript_MultiHitNoMoreHits + adjustnormaldamage attackanimation waitanimation - missmessage - atk5c TARGET - waitstateatk - graphicalhpupdate TARGET + effectivenesssound + hitanimation TARGET + waitstate + healthbarupdate TARGET datahpupdate TARGET critmessage waitmessage 64 printstring BATTLE_TEXT_Terminator2 waitmessage 1 - addbyte gSharedMem + 0x160E4, 1 - setbyte gSharedMem + 0x1600C, 0 - atk49 2, 16 - jumpifbyte 4, gBattleMoveFlags, 64, BattleScript_1D7377 - atk27 BattleScript_1D7300 - jump BattleScript_1D7377 - -BattleScript_1D7374: @ 81D7374 + addbyte sMULTIHIT_STRING + 4, 1 + setbyte sMOVEEND_STATE, 0 + moveend 2, 16 + jumpifbyte COMMON_BITS, gBattleMoveFlags, MOVESTATUS_ENDURED, BattleScript_MultiHitPrintStrings + decrementmultihit BattleScript_MultiHitLoop + goto BattleScript_MultiHitPrintStrings + +BattleScript_MultiHitNoMoreHits: @ 81D7374 pause 32 -BattleScript_1D7377: @ 81D7377 +BattleScript_MultiHitPrintStrings: @ 81D7377 resultmessage waitmessage 64 - jumpifbyte 4, gBattleMoveFlags, 41, BattleScript_1D7396 - copyarray gBattleTextBuff1, gSharedMem + 0x160E0, 6 + jumpifmovehadnoeffect BattleScript_MultiHitEnd + copyarray gBattleTextBuff1, sMULTIHIT_STRING, 6 printstring BATTLE_TEXT_HitMulti waitmessage 64 -BattleScript_1D7396: @ 81D7396 - seteffectwithchancetarget - faintpokemon TARGET, 0, 0x0 - setbyte gSharedMem + 0x1600C, 2 - atk49 1, 0 - setbyte gSharedMem + 0x1600C, 4 - atk49 0, 0 +BattleScript_MultiHitEnd: @ 81D7396 + seteffectwithchance + tryfaintmon TARGET, FALSE, NULL + setbyte sMOVEEND_STATE, 2 + moveend 1, 0 + setbyte sMOVEEND_STATE, 4 + moveend 0, 0 end -MoveEffect_Conversion: @ 81D73B1 +BattleScript_EffectConversion: @ 81D73B1 attackcanceler attackstring ppreduce - changetypestoenemyattacktype BattleScript_ButItFailed + tryconversiontypechange BattleScript_ButItFailed attackanimation waitanimation printstring BATTLE_TEXT_TypeTransform waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_FlinchHit: @ 81D73C6 - setbyte gUnknown_02024D1F + 0x2, 8 - jump BattleScript_1D6F14 +BattleScript_EffectFlinchHit: @ 81D73C6 + setmoveeffect EFFECT_FLINCH + goto BattleScript_EffectHit -MoveEffect_RestoreHp: @ 81D73D1 +BattleScript_EffectRestoreHp: @ 81D73D1 attackcanceler attackstring ppreduce - setdamageasrestorehalfmaxhp BattleScript_1D83B5, 1 + tryhealhalfhealth BattleScript_AlreadyAtFullHp, 1 attackanimation waitanimation - orword gHitMarker, 0x100 - graphicalhpupdate USER + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE + healthbarupdate USER datahpupdate USER printstring BATTLE_TEXT_RegainedHealth waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Toxic: @ 81D73F4 +BattleScript_EffectToxic: @ 81D73F4 attackcanceler attackstring ppreduce - jumpifability TARGET, ABILITY_IMMUNITY, BattleScript_1D7463 - jumpifsecondarytstatus TARGET, S_SUBSTITUTE, BattleScript_ButItFailed - jumpifstatus TARGET, PSN, BattleScript_1D7455 - jumpifstatus TARGET, TOX, BattleScript_1D7455 + jumpifability TARGET, ABILITY_IMMUNITY, BattleScript_ImmunityProtected + jumpifstatus2 TARGET, STATUS2_SUBSTITUTE, BattleScript_ButItFailed + jumpifstatus TARGET, PSN, BattleScript_AlreadyPoisoned + jumpifstatus TARGET, TOX, BattleScript_AlreadyPoisoned jumpifstatus TARGET, SLP | PSN | BRN | FRZ | PAR | TOX, BattleScript_ButItFailed - jumpiftype TARGET, TYPE_POISON, BattleScript_1D83E8 - jumpiftype TARGET, TYPE_STEEL, BattleScript_1D83E8 - accuracycheck BattleScript_ButItFailed, 0 - jumpifhalverset TARGET, 32, BattleScript_1D9037 + jumpiftype TARGET, TYPE_POISON, BattleScript_NotAffected + jumpiftype TARGET, TYPE_STEEL, BattleScript_NotAffected + accuracycheck BattleScript_ButItFailed, ACC_CURR_MOVE + jumpifsideaffecting TARGET, SIDE_STATUS_SAFEGUARD, BattleScript_SafeguardProtected attackanimation waitanimation - setbyte gUnknown_02024D1F + 0x2, 6 - seteffecttarget + setmoveeffect EFFECT_TOXIC + seteffectprimary resultmessage waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -BattleScript_1D7455: @ 81D7455 +BattleScript_AlreadyPoisoned: @ 81D7455 pause 64 printstring BATTLE_TEXT_AlreadyPoisoned waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -BattleScript_1D7463: @ 81D7463 - copyarray gEffectBank, gBankTarget, 1 - setbyte gUnknown_02024D1F + 0x4, 0 - callatk BattleScript_PSNPrevention - jump BattleScript_EndTurn +BattleScript_ImmunityProtected: @ 81D7463 + copybyte gEffectBank, gBankTarget + setbyte cMULTISTRING_CHOOSER, 0 + call BattleScript_PSNPrevention + goto BattleScript_MoveEnd -MoveEffect_PayDay: @ 81D747D - setbyte gUnknown_02024D1F + 0x2, 11 - jump BattleScript_1D6F14 +BattleScript_EffectPayDay: @ 81D747D + setmoveeffect EFFECT_PAYDAY + goto BattleScript_EffectHit -MoveEffect_LightScreen: @ 81D7488 +BattleScript_EffectLightScreen: @ 81D7488 attackcanceler attackstring ppreduce setlightscreen - jump BattleScript_1D7786 + goto BattleScript_PrintReflectLightScreenSafeguardString -MoveEffect_TriAttack: @ 81D7491 - setbyte gUnknown_02024D1F + 0x2, 9 - jump BattleScript_1D6F14 +BattleScript_EffectTriAttack: @ 81D7491 + setmoveeffect EFFECT_TRI_ATTACK + goto BattleScript_EffectHit -MoveEffect_Rest: @ 81D749C +BattleScript_EffectRest: @ 81D749C attackcanceler attackstring ppreduce - jumpifstatus USER, SLP, BattleScript_1D74D6 - jumpifcannotsleep BattleScript_1D74C6 - setrest BattleScript_1D83B5 + jumpifstatus USER, SLP, BattleScript_RestIsAlreadyAsleep + jumpifcantmakeasleep BattleScript_RestCantSleep + trysetrest BattleScript_AlreadyAtFullHp pause 32 - printfromtable BattleTextList_401556 + printfromtable gRestUsedStringIds waitmessage 64 - atk98 1 - waitstateatk - jump BattleScript_1D839B + updatestatusicon USER + waitstate + goto BattleScript_PresentHealTarget -BattleScript_1D74C6: @ 81D74C6 +BattleScript_RestCantSleep: @ 81D74C6 pause 64 - printfromtable BattleTextList_40156A + printfromtable gUproarAwakeStringIds waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -BattleScript_1D74D6: @ 81D74D6 +BattleScript_RestIsAlreadyAsleep: @ 81D74D6 pause 32 printstring BATTLE_TEXT_AttackingAsleep waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Ohko: @ 81D74E4 +BattleScript_EffectOHKO: @ 81D74E4 attackcanceler attackstring ppreduce - accuracycheck BattleScript_ButItFailed, 65535 - atk6 - jumpifbyte 4, gBattleMoveFlags, 41, BattleScript_1D6F48 - koplussomethings BattleScript_1D7505 - atkab - jump BattleScript_1D6F48 + accuracycheck BattleScript_ButItFailed, NO_ACC_CALC_CHECK_LOCK_ON + typecalc + jumpifmovehadnoeffect BattleScript_HitFromAtkAnimation + tryKO BattleScript_KOFail + trysetdestinybondtohappen + goto BattleScript_HitFromAtkAnimation -BattleScript_1D7505: @ 81D7505 +BattleScript_KOFail: @ 81D7505 pause 64 - printfromtable BattleTextList_4015C8 + printfromtable gKOFailedStringIds waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_RazorWind: @ 81D7515 - jumpifsecondarytstatus USER, S_CONTINUE, BattleScript_1D753D - jumpifword 4, gHitMarker, 0x200, BattleScript_1D753D - setbyte gSharedMem + 0x16055, 0 - callatk BattleScript_1D756C - jump BattleScript_EndTurn +BattleScript_EffectRazorWind: @ 81D7515 + jumpifstatus2 USER, STATUS2_MULTIPLETURNS, BattleScript_TwoTurnMovesSecondTurn + jumpifword COMMON_BITS, gHitMarker, HITMARKER_NO_ATTACKSTRING, BattleScript_TwoTurnMovesSecondTurn + setbyte sTWOTURN_STRINGID, 0 + call BattleScriptFirstChargingTurn + goto BattleScript_MoveEnd -BattleScript_1D753D: @ 81D753D +BattleScript_TwoTurnMovesSecondTurn: @ 81D753D attackcanceler - setbyte gUnknown_02024D1F + 0x2, 12 - setbyte gSharedMem + 0x16002, 1 - clearstatus USER - orword gHitMarker, 0x800 - jumpifhalfword 1, gCurrentMove, 143, BattleScript_1D6F3B - setbyte gUnknown_02024D1F + 0x2, 8 - jump BattleScript_1D6F3B + setmoveeffect EFFECT_CHARGING + setbyte sANIM_TURN, 1 + clearstatusfromeffect USER + orword gHitMarker, HITMARKER_NO_PPDEDUCT + jumpifnotmove MOVE_SKY_ATTACK, BattleScript_HitFromAccCheck + setmoveeffect EFFECT_FLINCH + goto BattleScript_HitFromAccCheck -BattleScript_1D756C: @ 81D756C +BattleScriptFirstChargingTurn: @ 81D756C attackcanceler printstring BATTLE_TEXT_Terminator2 ppreduce attackanimation waitanimation - orword gHitMarker, 0x8000000 - setbyte gUnknown_02024D1F + 0x2, 76 - seteffecttarget - copyarray gUnknown_02024D1F + 0x4, gSharedMem + 0x16055, 1 - printfromtable BattleTextList_401584 + orword gHitMarker, HITMARKER_x8000000 + setbyte cEFFECT_CHOOSER, 76 + seteffectprimary + copybyte cMULTISTRING_CHOOSER, sTWOTURN_STRINGID + printfromtable gFirstTurnOfTwoStringIds waitmessage 64 return -MoveEffect_SuperFang: @ 81D7596 +BattleScript_EffectSuperFang: @ 81D7596 attackcanceler - accuracycheck BattleScript_1D6F72, 0 + accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE attackstring ppreduce - atk6 - bicbyte gBattleMoveFlags, 6 - gethalfcurrentenemyhp - jump BattleScript_1D6F48 + typecalc + bicbyte gBattleMoveFlags, MOVESTATUS_SUPEREFFECTIVE | MOVESTATUS_NOTVERYEFFECTIVE + damagetohalftargethp + goto BattleScript_HitFromAtkAnimation -MoveEffect_DragonRage: @ 81D75AD +BattleScript_EffectDragonRage: @ 81D75AD attackcanceler - accuracycheck BattleScript_1D6F72, 0 + accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE attackstring ppreduce - atk6 - bicbyte gBattleMoveFlags, 6 - setbyte gBattleMoveDamage, 40 - setbyte gBattleMoveDamage + 0x1, 0 - setbyte gBattleMoveDamage + 0x2, 0 - setbyte gBattleMoveDamage + 0x3, 0 - atk69 - jump BattleScript_1D6F48 + typecalc + bicbyte gBattleMoveFlags, MOVESTATUS_SUPEREFFECTIVE | MOVESTATUS_NOTVERYEFFECTIVE + setword gBattleMoveDamage, 40 + adjustsetdamage + goto BattleScript_HitFromAtkAnimation -MoveEffect_Trap: @ 81D75DC - jumpifhalfword 1, gCurrentMove, 250, BattleScript_1D7602 - jumpifspecialstatusflag TARGET, 0x40000, 1, BattleScript_1D7602 - orword gHitMarker, 0x40000 - setbyte gSharedMem + 0x1601F, 2 +BattleScript_EffectTrap: @ 81D75DC + jumpifnotmove MOVE_WHIRLPOOL, BattleScript_DoWrapEffect + jumpifnostatus3 TARGET, STATUS3_UNDERWATER, BattleScript_DoWrapEffect + orword gHitMarker, HITMARKER_IGNORE_UNDERWATER + setbyte sDMG_MULTIPLIER, 2 -BattleScript_1D7602: @ 81D7602 - setbyte gUnknown_02024D1F + 0x2, 13 - jump BattleScript_1D6F14 +BattleScript_DoWrapEffect: @ 81D7602 + setmoveeffect EFFECT_WRAP + goto BattleScript_EffectHit -MoveEffect_DoubleHit: @ 81D760D +BattleScript_EffectDoubleHit: @ 81D760D attackcanceler - accuracycheck BattleScript_1D6F72, 0 + accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE attackstring ppreduce - setloopcounter 2 - atk8e - setbyte gSharedMem + 0x16112, 0 - jump BattleScript_1D7300 + setmultihitcounter 2 + initmultihitstring + setbyte sMULTIHIT_EFFECT, 0 + goto BattleScript_MultiHitLoop -MoveEffect_RecoilIfMiss: @ 81D7625 +BattleScript_EffectRecoilIfMiss: @ 81D7625 attackcanceler - accuracycheck BattleScript_1D7632, 0 - jump BattleScript_1D6F42 + accuracycheck BattleScript_MoveMissedDoDamage, ACC_CURR_MOVE + goto BattleScript_HitFromAtkString -BattleScript_1D7632: @ 81D7632 +BattleScript_MoveMissedDoDamage: @ 81D7632 attackstring ppreduce pause 64 resultmessage waitmessage 64 - jumpifbyte 4, gBattleMoveFlags, 8, BattleScript_EndTurn + jumpifbyte COMMON_BITS, gBattleMoveFlags, MOVESTATUS_NOTAFFECTED, BattleScript_MoveEnd printstring BATTLE_TEXT_KeptGoingCrash waitmessage 64 - atk5 - atk6 - atk7 + damagecalc + typecalc + adjustnormaldamage manipulatedamage 1 - bicbyte gBattleMoveFlags, 1 - orword gHitMarker, 0x100 - graphicalhpupdate USER + bicbyte gBattleMoveFlags, MOVESTATUS_MISSED + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE + healthbarupdate USER datahpupdate USER - faintpokemon USER, 0, 0x0 - orbyte gBattleMoveFlags, 1 - jump BattleScript_EndTurn + tryfaintmon USER, FALSE, NULL + orbyte gBattleMoveFlags, MOVESTATUS_MISSED + goto BattleScript_MoveEnd -MoveEffect_Mist: @ 81D7676 +BattleScript_EffectMist: @ 81D7676 attackcanceler attackstring ppreduce - setmisteffect + setmist attackanimation waitanimation - printfromtable BattleTextList_4015A0 + printfromtable gMistUsedStringIds waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_FocusEnergy: @ 81D7689 +BattleScript_EffectFocusEnergy: @ 81D7689 attackcanceler attackstring ppreduce - jumpifsecondarytstatus USER, S_FOCUS_ENERGY, BattleScript_ButItFailed - setincreasedcriticalchance + jumpifstatus2 USER, STATUS2_FOCUS_ENERGY, BattleScript_ButItFailed + setfocusenergy attackanimation waitanimation - printfromtable BattleTextList_4015A4 + printfromtable gFocusEnergyUsedStringIds waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Recoil: @ 81D76A6 - setbyte gUnknown_02024D1F + 0x2, 206 - jumpifhalfword 1, gCurrentMove, 165, BattleScript_1D6F14 - atk60 27 - jump BattleScript_1D6F14 +BattleScript_EffectRecoil: @ 81D76A6 + setmoveeffect EFFECT_RECOIL_25 | AFFECTS_USER | CERTAIN + jumpifnotmove MOVE_STRUGGLE, BattleScript_EffectHit + incrementgamestat 27 + goto BattleScript_EffectHit -MoveEffect_Confuse: @ 81D76BF +BattleScript_EffectConfuse: @ 81D76BF attackcanceler attackstring ppreduce - jumpifability TARGET, ABILITY_OWN_TEMPO, BattleScript_1D98E5 - jumpifsecondarytstatus TARGET, S_SUBSTITUTE, BattleScript_ButItFailed - jumpifsecondarytstatus TARGET, S_CONFUSED, BattleScript_1D76FE - accuracycheck BattleScript_ButItFailed, 0 - jumpifhalverset TARGET, 32, BattleScript_1D9037 + jumpifability TARGET, ABILITY_OWN_TEMPO, BattleScript_OwnTempoPrevents + jumpifstatus2 TARGET, STATUS2_SUBSTITUTE, BattleScript_ButItFailed + jumpifstatus2 TARGET, STATUS2_CONFUSION, BattleScript_AlreadyConfused + accuracycheck BattleScript_ButItFailed, ACC_CURR_MOVE + jumpifsideaffecting TARGET, SIDE_STATUS_SAFEGUARD, BattleScript_SafeguardProtected attackanimation waitanimation - setbyte gUnknown_02024D1F + 0x2, 7 - seteffecttarget + setmoveeffect EFFECT_CONFUSION + seteffectprimary resultmessage waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -BattleScript_1D76FE: @ 81D76FE +BattleScript_AlreadyConfused: @ 81D76FE pause 32 printstring BATTLE_TEXT_AlreadyConfused waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_AttackUp2: @ 81D770C - setbyte gSharedMem + 0x1601E, 33 - jump BattleScript_1D71B2 +BattleScript_EffectAttackUp2: @ 81D770C + setstatchanger ATTACK, 2, FALSE + goto BattleScript_EffectStatUp -MoveEffect_DefenseUp2: @ 81D7717 - setbyte gSharedMem + 0x1601E, 34 - jump BattleScript_1D71B2 +BattleScript_EffectDefenseUp2: @ 81D7717 + setstatchanger DEFENSE, 2, FALSE + goto BattleScript_EffectStatUp -MoveEffect_SpeedUp2: @ 81D7722 - setbyte gSharedMem + 0x1601E, 35 - jump BattleScript_1D71B2 +BattleScript_EffectSpeedUp2: @ 81D7722 + setstatchanger SPEED, 2, FALSE + goto BattleScript_EffectStatUp -MoveEffect_SpecialAttackUp2: @ 81D772D - setbyte gSharedMem + 0x1601E, 36 - jump BattleScript_1D71B2 +BattleScript_EffectSpecialAttackUp2: @ 81D772D + setstatchanger SP_ATTACK, 2, FALSE + goto BattleScript_EffectStatUp -MoveEffect_SpecialDefenseUp2: @ 81D7738 - setbyte gSharedMem + 0x1601E, 37 - jump BattleScript_1D71B2 +BattleScript_EffectSpecialDefenseUp2: @ 81D7738 + setstatchanger SP_DEFENSE, 2, FALSE + goto BattleScript_EffectStatUp -MoveEffect_Transform: @ 81D7743 +BattleScript_EffectTransform: @ 81D7743 attackcanceler attackstring ppreduce transformdataexecution attackanimation waitanimation - printfromtable BattleTextList_4015A8 + printfromtable gTransformUsedStringIds waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_AttackDown2: @ 81D7756 - setbyte gSharedMem + 0x1601E, 161 - jump BattleScript_1D7227 +BattleScript_EffectAttackDown2: @ 81D7756 + setstatchanger ATTACK, 2, TRUE + goto BattleScript_EffectStatDown -MoveEffect_DefenseDown2: @ 81D7761 - setbyte gSharedMem + 0x1601E, 162 - jump BattleScript_1D7227 +BattleScript_EffectDefenseDown2: @ 81D7761 + setstatchanger DEFENSE, 2, TRUE + goto BattleScript_EffectStatDown -MoveEffect_SpeedDown2: @ 81D776C - setbyte gSharedMem + 0x1601E, 163 - jump BattleScript_1D7227 +BattleScript_EffectSpeedDown2: @ 81D776C + setstatchanger SPEED, 2, TRUE + goto BattleScript_EffectStatDown -MoveEffect_SpecialDefenseDown2: @ 81D7777 - setbyte gSharedMem + 0x1601E, 165 - jump BattleScript_1D7227 +BattleScript_EffectSpecialDefenseDown2: @ 81D7777 + setstatchanger SP_DEFENSE, 2, TRUE + goto BattleScript_EffectStatDown -MoveEffect_Reflect: @ 81D7782 +BattleScript_EffectReflect: @ 81D7782 attackcanceler attackstring ppreduce setreflect -BattleScript_1D7786: @ 81D7786 +BattleScript_PrintReflectLightScreenSafeguardString: @ 81D7786 attackanimation waitanimation - printfromtable BattleTextList_401540 + printfromtable gReflectLightScreenSafeguardStringIds waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Poison: @ 81D7795 +BattleScript_EffectPoison: @ 81D7795 attackcanceler attackstring ppreduce - jumpifability TARGET, ABILITY_IMMUNITY, BattleScript_1D7463 - jumpifsecondarytstatus TARGET, S_SUBSTITUTE, BattleScript_ButItFailed - jumpifstatus TARGET, PSN, BattleScript_1D7455 - jumpifstatus TARGET, TOX, BattleScript_1D7455 - jumpiftype TARGET, TYPE_POISON, BattleScript_1D83E8 - jumpiftype TARGET, TYPE_STEEL, BattleScript_1D83E8 + jumpifability TARGET, ABILITY_IMMUNITY, BattleScript_ImmunityProtected + jumpifstatus2 TARGET, STATUS2_SUBSTITUTE, BattleScript_ButItFailed + jumpifstatus TARGET, PSN, BattleScript_AlreadyPoisoned + jumpifstatus TARGET, TOX, BattleScript_AlreadyPoisoned + jumpiftype TARGET, TYPE_POISON, BattleScript_NotAffected + jumpiftype TARGET, TYPE_STEEL, BattleScript_NotAffected jumpifstatus TARGET, SLP | PSN | BRN | FRZ | PAR | TOX, BattleScript_ButItFailed - accuracycheck BattleScript_ButItFailed, 0 - jumpifhalverset TARGET, 32, BattleScript_1D9037 + accuracycheck BattleScript_ButItFailed, ACC_CURR_MOVE + jumpifsideaffecting TARGET, SIDE_STATUS_SAFEGUARD, BattleScript_SafeguardProtected attackanimation waitanimation - setbyte gUnknown_02024D1F + 0x2, 2 - seteffecttarget + setmoveeffect EFFECT_POISON + seteffectprimary resultmessage waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Paralyze: @ 81D77F6 +BattleScript_EffectParalyze: @ 81D77F6 attackcanceler attackstring ppreduce - jumpifability TARGET, ABILITY_LIMBER, BattleScript_1D7859 - jumpifsecondarytstatus TARGET, S_SUBSTITUTE, BattleScript_ButItFailed - atk6 - jumpifbyte 4, gBattleMoveFlags, 41, BattleScript_ButItFailed - jumpifstatus TARGET, PAR, BattleScript_1D784B + jumpifability TARGET, ABILITY_LIMBER, BattleScript_LimberProtected + jumpifstatus2 TARGET, STATUS2_SUBSTITUTE, BattleScript_ButItFailed + typecalc + jumpifmovehadnoeffect BattleScript_ButItFailed + jumpifstatus TARGET, PAR, BattleScript_AlreadyParalyzed jumpifstatus TARGET, SLP | PSN | BRN | FRZ | PAR | TOX, BattleScript_ButItFailed - accuracycheck BattleScript_ButItFailed, 0 - jumpifhalverset TARGET, 32, BattleScript_1D9037 + accuracycheck BattleScript_ButItFailed, ACC_CURR_MOVE + jumpifsideaffecting TARGET, SIDE_STATUS_SAFEGUARD, BattleScript_SafeguardProtected attackanimation waitanimation - setbyte gUnknown_02024D1F + 0x2, 5 - seteffecttarget + setmoveeffect EFFECT_PARALYSIS + seteffectprimary resultmessage waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -BattleScript_1D784B: @ 81D784B +BattleScript_AlreadyParalyzed: @ 81D784B pause 32 printstring BATTLE_TEXT_AlreadyParalyzed waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -BattleScript_1D7859: @ 81D7859 - copyarray gEffectBank, gBankTarget, 1 - setbyte gUnknown_02024D1F + 0x4, 0 - callatk BattleScript_PRLZPrevention - jump BattleScript_EndTurn +BattleScript_LimberProtected: @ 81D7859 + copybyte gEffectBank, gBankTarget + setbyte cMULTISTRING_CHOOSER, 0 + call BattleScript_PRLZPrevention + goto BattleScript_MoveEnd -MoveEffect_AttackDownHit: @ 81D7873 - setbyte gUnknown_02024D1F + 0x2, 22 - jump BattleScript_1D6F14 +BattleScript_EffectAttackDownHit: @ 81D7873 + setmoveeffect EFFECT_ATK_MINUS_1 + goto BattleScript_EffectHit -MoveEffect_DefenseDownHit: @ 81D787E - setbyte gUnknown_02024D1F + 0x2, 23 - jump BattleScript_1D6F14 +BattleScript_EffectDefenseDownHit: @ 81D787E + setmoveeffect EFFECT_DEF_MINUS_1 + goto BattleScript_EffectHit -MoveEffect_SpeedDownHit: @ 81D7889 - setbyte gUnknown_02024D1F + 0x2, 24 - jump BattleScript_1D6F14 +BattleScript_EffectSpeedDownHit: @ 81D7889 + setmoveeffect EFFECT_SPD_MINUS_1 + goto BattleScript_EffectHit -MoveEffect_SpecialAttackDownHit: @ 81D7894 - setbyte gUnknown_02024D1F + 0x2, 25 - jump BattleScript_1D6F14 +BattleScript_EffectSpecialAttackDownHit: @ 81D7894 + setmoveeffect EFFECT_SP_ATK_MINUS_1 + goto BattleScript_EffectHit -MoveEffect_SpecialDefenseDownHit: @ 81D789F - setbyte gUnknown_02024D1F + 0x2, 26 - jump BattleScript_1D6F14 +BattleScript_EffectSpecialDefenseDownHit: @ 81D789F + setmoveeffect EFFECT_SP_DEF_MINUS_1 + goto BattleScript_EffectHit -MoveEffect_AccuracyDownHit: @ 81D78AA - setbyte gUnknown_02024D1F + 0x2, 27 - jump BattleScript_1D6F14 +BattleScript_EffectAccuracyDownHit: @ 81D78AA + setmoveeffect EFFECT_ACC_MINUS_1 + goto BattleScript_EffectHit -MoveEffect_SkyAttack: @ 81D78B5 - jumpifsecondarytstatus USER, S_CONTINUE, BattleScript_1D753D - jumpifword 4, gHitMarker, 0x200, BattleScript_1D753D - setbyte gSharedMem + 0x16055, 3 - callatk BattleScript_1D756C - jump BattleScript_EndTurn +BattleScript_EffectSkyAttack: @ 81D78B5 + jumpifstatus2 USER, STATUS2_MULTIPLETURNS, BattleScript_TwoTurnMovesSecondTurn + jumpifword COMMON_BITS, gHitMarker, HITMARKER_NO_ATTACKSTRING, BattleScript_TwoTurnMovesSecondTurn + setbyte sTWOTURN_STRINGID, 3 + call BattleScriptFirstChargingTurn + goto BattleScript_MoveEnd -MoveEffect_ConfuseHit: @ 81D78DD - setbyte gUnknown_02024D1F + 0x2, 7 - jump BattleScript_1D6F14 +BattleScript_EffectConfuseHit: @ 81D78DD + setmoveeffect EFFECT_CONFUSION + goto BattleScript_EffectHit -MoveEffect_Twineedle: @ 81D78E8 +BattleScript_EffectTwineedle: @ 81D78E8 attackcanceler - accuracycheck BattleScript_1D6F72, 0 - setbyte gSharedMem + 0x16112, 2 + accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE + setbyte sMULTIHIT_EFFECT, 2 attackstring ppreduce - setloopcounter 2 - atk8e - jump BattleScript_1D7300 + setmultihitcounter 2 + initmultihitstring + goto BattleScript_MultiHitLoop -MoveEffect_Substitute: @ 81D7900 +BattleScript_EffectSubstitute: @ 81D7900 attackcanceler ppreduce attackstring - waitstateatk - jumpifsecondarytstatus USER, S_SUBSTITUTE, BattleScript_1D7935 - setsubstituteeffect - jumpifbyte 1, gUnknown_02024D1F + 0x4, 1, BattleScript_1D7922 + waitstate + jumpifstatus2 USER, STATUS2_SUBSTITUTE, BattleScript_AlreadyHasSubstitute + setsubstitute + jumpifbyte NOT_EQUAL, cMULTISTRING_CHOOSER, 1, BattleScript_SubstituteAnim pause 32 - jump BattleScript_1D7928 + goto BattleScript_SubstituteString -BattleScript_1D7922: @ 81D7922 +BattleScript_SubstituteAnim: @ 81D7922 attackanimation waitanimation - graphicalhpupdate USER + healthbarupdate USER datahpupdate USER -BattleScript_1D7928: @ 81D7928 - printfromtable BattleTextList_4015AC +BattleScript_SubstituteString: @ 81D7928 + printfromtable gSubsituteUsedStringIds waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -BattleScript_1D7935: @ 81D7935 +BattleScript_AlreadyHasSubstitute: @ 81D7935 pause 32 printstring BATTLE_TEXT_SubAlready waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Recharge: @ 81D7943 +BattleScript_EffectRecharge: @ 81D7943 attackcanceler - accuracycheck BattleScript_1D6F72, 0 - setbyte gUnknown_02024D1F + 0x2, 221 - jump BattleScript_1D6F42 + accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE + setmoveeffect EFFECT_RECHARGE | AFFECTS_USER | CERTAIN + goto BattleScript_HitFromAtkString BattleScript_MoveUsedMustRecharge:: @ 81D7956 printstring BATTLE_TEXT_MustRecharge waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Rage: @ 81D7961 +BattleScript_EffectRage: @ 81D7961 attackcanceler - accuracycheck BattleScript_1D797B, 0 - setbyte gUnknown_02024D1F + 0x2, 30 - seteffecttarget - setbyte gUnknown_02024D1F + 0x2, 0 - jump BattleScript_1D6F42 + accuracycheck BattleScript_RageMiss, ACC_CURR_MOVE + setmoveeffect EFFECT_RAGE + seteffectprimary + setmoveeffect 0 + goto BattleScript_HitFromAtkString -BattleScript_1D797B: @ 81D797B - setbyte gUnknown_02024D1F + 0x2, 30 - clearstatus USER - jump BattleScript_1D6F72 +BattleScript_RageMiss: @ 81D797B + setmoveeffect EFFECT_RAGE + clearstatusfromeffect USER + goto BattleScript_PrintMoveMissed -MoveEffect_Mimic: @ 81D7988 +BattleScript_EffectMimic: @ 81D7988 attackcanceler attackstring ppreduce - jumpifsecondarytstatus TARGET, S_SUBSTITUTE, BattleScript_ButItFailed - accuracycheck BattleScript_ButItFailed, 65535 - copyattack BattleScript_ButItFailed + jumpifstatus2 TARGET, STATUS2_SUBSTITUTE, BattleScript_ButItFailed + accuracycheck BattleScript_ButItFailed, NO_ACC_CALC_CHECK_LOCK_ON + mimicattackcopy BattleScript_ButItFailed attackanimation waitanimation printstring BATTLE_TEXT_LearnedMove2 waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Metronome: @ 81D79AE +BattleScript_EffectMetronome: @ 81D79AE attackcanceler attackstring pause 32 attackanimation waitanimation - setbyte gSharedMem + 0x16002, 0 - setbyte gSharedMem + 0x160A1, 0 - metronomeeffect + setbyte sANIM_TURN, 0 + setbyte sANIM_TARGETS_HIT, 0 + metronome -MoveEffect_LeechSeed: @ 81D79C2 +BattleScript_EffectLeechSeed: @ 81D79C2 attackcanceler attackstring pause 32 ppreduce - jumpifsecondarytstatus TARGET, S_SUBSTITUTE, BattleScript_ButItFailed - accuracycheck BattleScript_1D79D9, 0 + jumpifstatus2 TARGET, STATUS2_SUBSTITUTE, BattleScript_ButItFailed + accuracycheck BattleScript_DoLeechSeed, ACC_CURR_MOVE -BattleScript_1D79D9: @ 81D79D9 - setleechseed +BattleScript_DoLeechSeed: @ 81D79D9 + setseeded attackanimation waitanimation - printfromtable BattleTextList_40154C + printfromtable gLeechSeedStringIds waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Splash: @ 81D79E9 +BattleScript_EffectSplash: @ 81D79E9 attackcanceler attackstring ppreduce attackanimation waitanimation - atk60 26 + incrementgamestat 26 printstring BATTLE_TEXT_Nothing waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Disable: @ 81D79FB +BattleScript_EffectDisable: @ 81D79FB attackcanceler attackstring ppreduce - accuracycheck BattleScript_ButItFailed, 0 + accuracycheck BattleScript_ButItFailed, ACC_CURR_MOVE disablelastusedattack BattleScript_ButItFailed attackanimation waitanimation printstring BATTLE_TEXT_MoveWasDisabled waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_LevelDamage: @ 81D7A17 +BattleScript_EffectLevelDamage: @ 81D7A17 attackcanceler - accuracycheck BattleScript_1D6F72, 0 + accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE attackstring ppreduce - atk6 - bicbyte gBattleMoveFlags, 6 - nightshadedamageeffect - atk69 - jump BattleScript_1D6F48 + typecalc + bicbyte gBattleMoveFlags, MOVESTATUS_SUPEREFFECTIVE | MOVESTATUS_NOTVERYEFFECTIVE + dmgtolevel + adjustsetdamage + goto BattleScript_HitFromAtkAnimation -MoveEffect_Psywave: @ 81D7A2F +BattleScript_EffectPsywave: @ 81D7A2F attackcanceler - accuracycheck BattleScript_1D6F72, 0 + accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE attackstring ppreduce - atk6 - bicbyte gBattleMoveFlags, 6 + typecalc + bicbyte gBattleMoveFlags, MOVESTATUS_SUPEREFFECTIVE | MOVESTATUS_NOTVERYEFFECTIVE psywavedamageeffect - atk69 - jump BattleScript_1D6F48 + adjustsetdamage + goto BattleScript_HitFromAtkAnimation -MoveEffect_Counter: @ 81D7A47 +BattleScript_EffectCounter: @ 81D7A47 attackcanceler - counterdamagecalculator BattleScript_1D83D4 - accuracycheck BattleScript_1D6F72, 0 + counterdamagecalculator BattleScript_ButItFailedAtkStringPpReduce + accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE attackstring ppreduce - damagecalc2 - atk69 - jump BattleScript_1D6F48 + typecalc2 + adjustsetdamage + goto BattleScript_HitFromAtkAnimation -MoveEffect_Encore: @ 81D7A5D +BattleScript_EffectEncore: @ 81D7A5D attackcanceler - accuracycheck BattleScript_1D6F72, 0 + accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE attackstring ppreduce - setencore BattleScript_ButItFailed + trysetencore BattleScript_ButItFailed attackanimation waitanimation printstring BATTLE_TEXT_EncoreGot waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_PainSplit: @ 81D7A79 +BattleScript_EffectPainSplit: @ 81D7A79 attackcanceler attackstring ppreduce - accuracycheck BattleScript_ButItFailed, 65535 - painsplitdamagecalculator BattleScript_ButItFailed + accuracycheck BattleScript_ButItFailed, NO_ACC_CALC_CHECK_LOCK_ON + painsplitdmgcalc BattleScript_ButItFailed attackanimation waitanimation - orword gHitMarker, 0x100 - graphicalhpupdate USER + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE + healthbarupdate USER datahpupdate USER - copyarray gBattleMoveDamage, gSharedMem + 0x16014, 4 - graphicalhpupdate TARGET + copyword gBattleMoveDamage, sPAINSPLIT_HP + healthbarupdate TARGET datahpupdate TARGET printstring BATTLE_TEXT_PainSplit waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Snore: @ 81D7AB0 +BattleScript_EffectSnore: @ 81D7AB0 attackcanceler - jumpifstatus USER, SLP, BattleScript_1D7AC2 + jumpifstatus USER, SLP, BattleScript_SnoreIsAsleep attackstring ppreduce - jump BattleScript_ButItFailed + goto BattleScript_ButItFailed -BattleScript_1D7AC2: @ 81D7AC2 - jumpifhalfword 0, gUnknown_02024BE8, 214, BattleScript_1D7AD6 +BattleScript_SnoreIsAsleep: @ 81D7AC2 + jumpifhalfword EQUAL, gChosenMove, MOVE_SLEEP_TALK, BattleScript_DoSnore printstring BATTLE_TEXT_FastAsleep waitmessage 64 statusanimation USER -BattleScript_1D7AD6: @ 81D7AD6 +BattleScript_DoSnore: @ 81D7AD6 attackstring ppreduce - accuracycheck BattleScript_1D6F77, 0 - setbyte gUnknown_02024D1F + 0x2, 8 - jump BattleScript_1D6F44 + accuracycheck BattleScript_MoveMissed, ACC_CURR_MOVE + setmoveeffect EFFECT_FLINCH + goto BattleScript_HitFromCritCalc -MoveEffect_Conversion2: @ 81D7AEA +BattleScript_EffectConversion2: @ 81D7AEA attackcanceler attackstring ppreduce @@ -1340,39 +1341,39 @@ MoveEffect_Conversion2: @ 81D7AEA waitanimation printstring BATTLE_TEXT_TypeTransform waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_LockOn: @ 81D7AFF +BattleScript_EffectLockOn: @ 81D7AFF attackcanceler attackstring ppreduce - jumpifsecondarytstatus TARGET, S_SUBSTITUTE, BattleScript_ButItFailed - accuracycheck BattleScript_ButItFailed, 0 + jumpifstatus2 TARGET, STATUS2_SUBSTITUTE, BattleScript_ButItFailed + accuracycheck BattleScript_ButItFailed, ACC_CURR_MOVE setalwayshitflag attackanimation waitanimation printstring BATTLE_TEXT_TookAim waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Sketch: @ 81D7B21 +BattleScript_EffectSketch: @ 81D7B21 attackcanceler attackstring ppreduce - jumpifsecondarytstatus TARGET, S_SUBSTITUTE, BattleScript_ButItFailed + jumpifstatus2 TARGET, STATUS2_SUBSTITUTE, BattleScript_ButItFailed copymovepermanently BattleScript_ButItFailed attackanimation waitanimation printstring BATTLE_TEXT_SketchedMove waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_SleepTalk: @ 81D7B40 +BattleScript_EffectSleepTalk: @ 81D7B40 attackcanceler jumpifstatus USER, SLP, BattleScript_1D7B52 attackstring ppreduce - jump BattleScript_ButItFailed + goto BattleScript_ButItFailed BattleScript_1D7B52: @ 81D7B52 printstring BATTLE_TEXT_FastAsleep @@ -1380,254 +1381,253 @@ BattleScript_1D7B52: @ 81D7B52 statusanimation USER attackstring ppreduce - orword gHitMarker, 0x800 - selectrandommovefromusermoves BattleScript_1D7B72 + orword gHitMarker, HITMARKER_NO_PPDEDUCT + trychoosesleeptalkmove BattleScript_SleepTalkIsAsleep pause 64 - jump BattleScript_ButItFailed + goto BattleScript_ButItFailed -BattleScript_1D7B72: @ 81D7B72 +BattleScript_SleepTalkIsAsleep: @ 81D7B72 attackanimation waitanimation - setbyte gSharedMem + 0x16002, 0 - setbyte gSharedMem + 0x160A1, 0 - jumptoattack USER + setbyte sANIM_TURN, 0 + setbyte sANIM_TARGETS_HIT, 0 + jumptorandomattack USER -MoveEffect_DestinyBond: @ 81D7B82 +BattleScript_EffectDestinyBond: @ 81D7B82 attackcanceler attackstring ppreduce - destinybondeffect + setdestinybond attackanimation waitanimation printstring BATTLE_TEXT_DestinyBondTake waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Flail: @ 81D7B93 +BattleScript_EffectFlail: @ 81D7B93 remaininghptopower - jump BattleScript_1D6F14 + goto BattleScript_EffectHit -MoveEffect_Spite: @ 81D7B99 +BattleScript_EffectSpite: @ 81D7B99 attackcanceler attackstring ppreduce - accuracycheck BattleScript_ButItFailed, 0 - reducepprandom BattleScript_ButItFailed + accuracycheck BattleScript_ButItFailed, ACC_CURR_MOVE + tryspiteppreduce BattleScript_ButItFailed attackanimation waitanimation printstring BATTLE_TEXT_ReducedBy waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_HealBell: @ 81D7BB5 +BattleScript_EffectHealBell: @ 81D7BB5 attackcanceler attackstring ppreduce - clearstatusifnotsoundproofed - waitstateatk + healpartystatus + waitstate attackanimation waitanimation - printfromtable BattleTextList_4015D8 + printfromtable gPartyStatusHealStringIds waitmessage 64 - jumpifhalfword 1, gCurrentMove, 215, BattleScript_1D7BF2 - jumpifbyte 5, gUnknown_02024D1F + 0x4, 1, BattleScript_1D7BE1 + jumpifnotmove MOVE_HEAL_BELL, BattleScript_PartyHealEnd + jumpifbyte NO_COMMON_BITS, cMULTISTRING_CHOOSER, 1, BattleScript_CheckHealBellMon2Unaffected printstring BATTLE_TEXT_BlocksOther waitmessage 64 -BattleScript_1D7BE1: @ 81D7BE1 - jumpifbyte 5, gUnknown_02024D1F + 0x4, 2, BattleScript_1D7BF2 +BattleScript_CheckHealBellMon2Unaffected: @ 81D7BE1 + jumpifbyte NO_COMMON_BITS, cMULTISTRING_CHOOSER, 2, BattleScript_PartyHealEnd printstring BATTLE_TEXT_BlocksOther2 waitmessage 64 -BattleScript_1D7BF2: @ 81D7BF2 - atk98 4 - waitstateatk - jump BattleScript_EndTurn +BattleScript_PartyHealEnd: @ 81D7BF2 + updatestatusicon ATTACKER_WITH_PARTNER + waitstate + goto BattleScript_MoveEnd -MoveEffect_TripleKick: @ 81D7BFA +BattleScript_EffectTripleKick: @ 81D7BFA attackcanceler attackstring ppreduce - setbyte gSharedMem + 0x160DE, 0 - setbyte gSharedMem + 0x160DF, 0 - atk8e - atk26 3 + sethword sTRIPLE_KICK_POWER, 0 + initmultihitstring + setmultihit 3 -BattleScript_1D7C0C: @ 81D7C0C - jumpiffainted USER, BattleScript_1D7CAF - jumpiffainted TARGET, BattleScript_1D7C8D - jumpifhalfword 0, gUnknown_02024BE8, 214, BattleScript_1D7C2E - jumpifstatus USER, SLP, BattleScript_1D7C8D +BattleScript_TripleKickLoop: @ 81D7C0C + jumpifhasnohp USER, BattleScript_TripleKickEnd + jumpifhasnohp TARGET, BattleScript_TripleKickNoMoreHits + jumpifhalfword EQUAL, gChosenMove, MOVE_SLEEP_TALK, BattleScript_DoTripleKickAttack + jumpifstatus USER, SLP, BattleScript_TripleKickNoMoreHits -BattleScript_1D7C2E: @ 81D7C2E - atk25 - accuracycheck BattleScript_1D7C8D, 0 - addbyte gSharedMem + 0x160DE, 10 - addbyte gSharedMem + 0x160E4, 1 - copyarray gDynamicBasePower, gSharedMem + 0x160DE, 2 +BattleScript_DoTripleKickAttack: @ 81D7C2E + movevaluescleanup + accuracycheck BattleScript_TripleKickNoMoreHits, ACC_CURR_MOVE + addbyte sTRIPLE_KICK_POWER, 10 + addbyte sMULTIHIT_STRING + 4, 1 + copyhword gDynamicBasePower, sTRIPLE_KICK_POWER critcalc - atk5 - atk6 - atk7 - jumpifbyte 4, gBattleMoveFlags, 41, BattleScript_1D7C8D + damagecalc + typecalc + adjustnormaldamage + jumpifmovehadnoeffect BattleScript_TripleKickNoMoreHits attackanimation waitanimation - missmessage - atk5c TARGET - waitstateatk - graphicalhpupdate TARGET + effectivenesssound + hitanimation TARGET + waitstate + healthbarupdate TARGET datahpupdate TARGET critmessage waitmessage 64 printstring BATTLE_TEXT_Terminator2 waitmessage 1 - setbyte gSharedMem + 0x1600C, 0 - atk49 2, 16 - jumpifbyte 4, gBattleMoveFlags, 64, BattleScript_1D7C90 - atk27 BattleScript_1D7C0C - jump BattleScript_1D7C90 + setbyte sMOVEEND_STATE, 0 + moveend 2, 16 + jumpifbyte COMMON_BITS, gBattleMoveFlags, MOVESTATUS_ENDURED, BattleScript_TripleKickPrintStrings + decrementmultihit BattleScript_TripleKickLoop + goto BattleScript_TripleKickPrintStrings -BattleScript_1D7C8D: @ 81D7C8D +BattleScript_TripleKickNoMoreHits: @ 81D7C8D pause 32 -BattleScript_1D7C90: @ 81D7C90 +BattleScript_TripleKickPrintStrings: @ 81D7C90 resultmessage waitmessage 64 - jumpifbyte 0, gSharedMem + 0x160E4, 0, BattleScript_1D7CAF - copyarray gBattleTextBuff1, gSharedMem + 0x160E0, 6 + jumpifbyte EQUAL, sMULTIHIT_STRING + 4, 0, BattleScript_TripleKickEnd + copyarray gBattleTextBuff1,sMULTIHIT_STRING, 6 printstring BATTLE_TEXT_HitMulti waitmessage 64 -BattleScript_1D7CAF: @ 81D7CAF - seteffectwithchancetarget - faintpokemon TARGET, 0, 0x0 - setbyte gSharedMem + 0x1600C, 14 - atk49 0, 0 +BattleScript_TripleKickEnd: @ 81D7CAF + seteffectwithchance + tryfaintmon TARGET, FALSE, NULL + setbyte sMOVEEND_STATE, 14 + moveend 0, 0 end -MoveEffect_Thief: @ 81D7CC1 - setbyte gUnknown_02024D1F + 0x2, 31 - jump BattleScript_1D6F14 +BattleScript_EffectThief: @ 81D7CC1 + setmoveeffect EFFECT_STEAL_ITEM + goto BattleScript_EffectHit -MoveEffect_MeanLook: @ 81D7CCC +BattleScript_EffectMeanLook: @ 81D7CCC attackcanceler attackstring ppreduce - accuracycheck BattleScript_ButItFailed, 65534 - jumpifsecondarytstatus TARGET, S_MEAN_LOOK, BattleScript_ButItFailed + accuracycheck BattleScript_ButItFailed, NO_ACC_CALC + jumpifstatus2 TARGET, STATUS2_ESCAPE_PREVENTION, BattleScript_ButItFailed attackanimation waitanimation - setbyte gUnknown_02024D1F + 0x2, 32 - seteffecttarget + setmoveeffect EFFECT_PREVENT_ESCAPE + seteffectprimary printstring BATTLE_TEXT_CantEscapeNow waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Nightmare: @ 81D7CF4 +BattleScript_EffectNightmare: @ 81D7CF4 attackcanceler attackstring ppreduce - jumpifsecondarytstatus TARGET, S_SUBSTITUTE, BattleScript_ButItFailed - jumpifsecondarytstatus TARGET, S_NIGHTMARE, BattleScript_ButItFailed - jumpifstatus TARGET, SLP, BattleScript_1D7D1A - jump BattleScript_ButItFailed + jumpifstatus2 TARGET, STATUS2_SUBSTITUTE, BattleScript_ButItFailed + jumpifstatus2 TARGET, STATUS2_NIGHTMARE, BattleScript_ButItFailed + jumpifstatus TARGET, SLP, BattleScript_NightmareWorked + goto BattleScript_ButItFailed -BattleScript_1D7D1A: @ 81D7D1A +BattleScript_NightmareWorked: @ 81D7D1A attackanimation waitanimation - setbyte gUnknown_02024D1F + 0x2, 33 - seteffecttarget + setmoveeffect EFFECT_NIGHTMARE + seteffectprimary printstring BATTLE_TEXT_NightmareStart waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Minimize: @ 81D7D2E +BattleScript_EffectMinimize: @ 81D7D2E attackcanceler setminimize - setbyte gSharedMem + 0x1601E, 23 - jump BattleScript_1D71B3 + setstatchanger EVASION, 1, FALSE + goto BattleScript_EffectStatUpAfterAtkCanceler -MoveEffect_Curse: @ 81D7D3B - jumpiftype2 USER, TYPE_GHOST, BattleScript_1D7DB3 +BattleScript_EffectCurse: @ 81D7D3B + jumpiftype2 USER, TYPE_GHOST, BattleScript_GhostCurse attackcanceler attackstring ppreduce - jumpifstat USER, 2, 3, 0, BattleScript_1D7D60 - jumpifstat USER, 1, 1, 12, BattleScript_1D7D60 - jumpifstat USER, 0, 2, 12, BattleScript_ButItFailed + jumpifstat USER, GREATER_THAN, SPEED, 0, BattleScript_CurseTrySpeed + jumpifstat USER, NOT_EQUAL, ATTACK, 12, BattleScript_CurseTrySpeed + jumpifstat USER, EQUAL, DEFENSE, 12, BattleScript_ButItFailed -BattleScript_1D7D60: @ 81D7D60 - copyarray gBankTarget, gBankAttacker, 1 - setbyte gSharedMem + 0x16002, 1 +BattleScript_CurseTrySpeed: @ 81D7D60 + copybyte gBankTarget, gBankAttacker + setbyte sANIM_TURN, 1 attackanimation waitanimation - setbyte gSharedMem + 0x1601E, 147 - statbuffchange 65, BattleScript_1D7D86 - printfromtable BattleTextList_40157C + setstatchanger SPEED, 1, TRUE + statbuffchange AFFECTS_USER | 0x1, BattleScript_CurseTryAttack + printfromtable gStatDownStringIds waitmessage 64 -BattleScript_1D7D86: @ 81D7D86 - setbyte gSharedMem + 0x1601E, 17 - statbuffchange 65, BattleScript_1D7D9A - printfromtable BattleTextList_401570 +BattleScript_CurseTryAttack: @ 81D7D86 + setstatchanger ATTACK, 1, FALSE + statbuffchange AFFECTS_USER | 0x1, BattleScript_CurseTryDefence + printfromtable gStatUpStringIds waitmessage 64 -BattleScript_1D7D9A: @ 81D7D9A - setbyte gSharedMem + 0x1601E, 18 - statbuffchange 65, BattleScript_1D7DAE - printfromtable BattleTextList_401570 +BattleScript_CurseTryDefence: @ 81D7D9A + setstatchanger DEFENSE, 1, FALSE + statbuffchange AFFECTS_USER | 0x1, BattleScript_CurseEnd + printfromtable gStatUpStringIds waitmessage 64 -BattleScript_1D7DAE: @ 81D7DAE - jump BattleScript_EndTurn +BattleScript_CurseEnd: @ 81D7DAE + goto BattleScript_MoveEnd -BattleScript_1D7DB3: @ 81D7DB3 - jumpifarraynotequal gBankAttacker, gBankTarget, 1, BattleScript_1D7DC4 - atk76 USER, 3 +BattleScript_GhostCurse: @ 81D7DB3 + jumpifbytenotequal gBankAttacker, gBankTarget, BattleScript_DoGhostCurse + getmovetarget USER -BattleScript_1D7DC4: @ 81D7DC4 +BattleScript_DoGhostCurse: @ 81D7DC4 attackcanceler attackstring ppreduce - jumpifsecondarytstatus TARGET, S_SUBSTITUTE, BattleScript_ButItFailed + jumpifstatus2 TARGET, STATUS2_SUBSTITUTE, BattleScript_ButItFailed cursetarget BattleScript_ButItFailed - orword gHitMarker, 0x100 - setbyte gSharedMem + 0x16002, 0 + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE + setbyte sANIM_TURN, 0 attackanimation waitanimation - graphicalhpupdate USER + healthbarupdate USER datahpupdate USER printstring BATTLE_TEXT_CurseLay waitmessage 64 - faintpokemon USER, 0, 0x0 - jump BattleScript_EndTurn + tryfaintmon USER, FALSE, NULL + goto BattleScript_MoveEnd -MoveEffect_Endure: @ 81D7DFD -MoveEffect_Protect: @ 81D7DFD +BattleScript_EffectEndure: @ 81D7DFD +BattleScript_EffectProtect: @ 81D7DFD attackcanceler attackstring ppreduce - setprotect + setprotectlike attackanimation waitanimation - printfromtable BattleTextList_40153A + printfromtable gProtectLikeUsedStringIds waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Spikes: @ 81D7E10 +BattleScript_EffectSpikes: @ 81D7E10 attackcanceler - setspikes BattleScript_1D83D4 + trysetspikes BattleScript_ButItFailedAtkStringPpReduce attackstring ppreduce attackanimation waitanimation printstring BATTLE_TEXT_SpikesScattered waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Foresight: @ 81D7E25 +BattleScript_EffectForesight: @ 81D7E25 attackcanceler - accuracycheck BattleScript_1D6F72, 0 + accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE attackstring ppreduce setforesight @@ -1635,241 +1635,238 @@ MoveEffect_Foresight: @ 81D7E25 waitanimation printstring BATTLE_TEXT_IdentifiedPoke waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_PerishSong: @ 81D7E3D +BattleScript_EffectPerishSong: @ 81D7E3D attackcanceler attackstring ppreduce - setperishsong BattleScript_ButItFailed + trysetperishsong BattleScript_ButItFailed attackanimation waitanimation printstring BATTLE_TEXT_PerishSong waitmessage 64 - setbyte gSharedMem + 0x16003, 0 + setbyte sBANK, 0 -BattleScript_1D7E53: @ 81D7E53 - jumpifability 10, ABILITY_SOUNDPROOF, BattleScript_1D7E73 +BattleScript_PerishSongLoop: @ 81D7E53 + jumpifability SCRIPTING_BANK, ABILITY_SOUNDPROOF, BattleScript_1D7E73 -BattleScript_1D7E5A: @ 81D7E5A - addbyte gSharedMem + 0x16003, 1 - jumpifarraynotequal gSharedMem + 0x16003, gNoOfAllBanks, 1, BattleScript_1D7E53 - jump BattleScript_EndTurn +BattleScript_PerishSongLoopIncrement: @ 81D7E5A + addbyte sBANK, 1 + jumpifbytenotequal sBANK, gNoOfAllBanks, BattleScript_PerishSongLoop + goto BattleScript_MoveEnd BattleScript_1D7E73: @ 81D7E73 printstring BATTLE_TEXT_BlocksOther2 waitmessage 64 - jump BattleScript_1D7E5A + goto BattleScript_PerishSongLoopIncrement -MoveEffect_Sandstorm: @ 81D7E7E +BattleScript_EffectSandstorm: @ 81D7E7E attackcanceler attackstring ppreduce setsandstorm - jump BattleScript_1D7FFA + goto BattleScript_MoveWeatherChange -MoveEffect_Rollout: @ 81D7E87 +BattleScript_EffectRollout: @ 81D7E87 attackcanceler attackstring - jumpifsecondarytstatus USER, S_CONTINUE, BattleScript_1D7E94 + jumpifstatus2 USER, STATUS2_MULTIPLETURNS, BattleScript_RolloutCheckAccuracy ppreduce -BattleScript_1D7E94: @ 81D7E94 - accuracycheck BattleScript_1D7E9B, 0 +BattleScript_RolloutCheckAccuracy: @ 81D7E94 + accuracycheck BattleScript_RolloutHit, ACC_CURR_MOVE -BattleScript_1D7E9B: @ 81D7E9B - damagecalc2 +BattleScript_RolloutHit: @ 81D7E9B + typecalc2 rolloutdamagecalculation - jump BattleScript_1D6F44 + goto BattleScript_HitFromCritCalc -MoveEffect_Swagger: @ 81D7EA2 +BattleScript_EffectSwagger: @ 81D7EA2 attackcanceler - jumpifsecondarytstatus TARGET, S_SUBSTITUTE, BattleScript_1D6F6C - accuracycheck BattleScript_1D6F72, 0 + jumpifstatus2 TARGET, STATUS2_SUBSTITUTE, BattleScript_MakeMoveMissed + accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE attackstring ppreduce - jumpifconfusedandattackmaxed 1, BattleScript_ButItFailed + jumpifconfusedandstatmaxed 1, BattleScript_ButItFailed attackanimation waitanimation - setbyte gSharedMem + 0x1601E, 33 - statbuffchange 1, BattleScript_1D7EE5 - jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D7EE5 - atk47 - playanimation TARGET, B_ANIM_STATS_CHANGE, gSharedMem + 0x160A4 - printfromtable BattleTextList_401570 + setstatchanger ATTACK, 2, FALSE + statbuffchange 1, BattleScript_SwaggerTryConfuse + jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_SwaggerTryConfuse + setgraphicalstatchangevalues + playanimation TARGET, B_ANIM_STATS_CHANGE, sANIM_ARG1 + printfromtable gStatUpStringIds waitmessage 64 -BattleScript_1D7EE5: @ 81D7EE5 - jumpifability TARGET, ABILITY_OWN_TEMPO, BattleScript_1D98E5 - jumpifhalverset TARGET, 32, BattleScript_1D9037 - setbyte gUnknown_02024D1F + 0x2, 7 - seteffecttarget - jump BattleScript_EndTurn +BattleScript_SwaggerTryConfuse: @ 81D7EE5 + jumpifability TARGET, ABILITY_OWN_TEMPO, BattleScript_OwnTempoPrevents + jumpifsideaffecting TARGET, SIDE_STATUS_SAFEGUARD, BattleScript_SafeguardProtected + setmoveeffect EFFECT_CONFUSION + seteffectprimary + goto BattleScript_MoveEnd -MoveEffect_FuryCutter: @ 81D7F00 +BattleScript_EffectFuryCutter: @ 81D7F00 attackcanceler attackstring ppreduce - accuracycheck BattleScript_1D7F0A, 0 + accuracycheck BattleScript_FuryCutterHit, ACC_CURR_MOVE -BattleScript_1D7F0A: @ 81D7F0A - furycutterdamagecalculation +BattleScript_FuryCutterHit: @ 81D7F0A + furycuttercalc critcalc - atk5 - atk6 - jumpifbyte 4, gBattleMoveFlags, 41, BattleScript_1D7F0A - atk7 - jump BattleScript_1D6F48 + damagecalc + typecalc + jumpifmovehadnoeffect BattleScript_FuryCutterHit + adjustnormaldamage + goto BattleScript_HitFromAtkAnimation -MoveEffect_Attract: @ 81D7F1F +BattleScript_EffectAttract: @ 81D7F1F attackcanceler attackstring ppreduce - accuracycheck BattleScript_ButItFailed, 0 - tryinfatuatetarget BattleScript_ButItFailed + accuracycheck BattleScript_ButItFailed, ACC_CURR_MOVE + tryinfatuating BattleScript_ButItFailed attackanimation waitanimation printstring BATTLE_TEXT_FellLove waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Frustration: @ 81D7F3B -MoveEffect_Return: @ 81D7F3B +BattleScript_EffectFrustration: @ 81D7F3B +BattleScript_EffectReturn: @ 81D7F3B attackcanceler - accuracycheck BattleScript_1D6F72, 0 + accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE happinesstodamagecalculation - jump BattleScript_1D6F42 + goto BattleScript_HitFromAtkString -MoveEffect_Present: @ 81D7F49 +BattleScript_EffectPresent: @ 81D7F49 attackcanceler - accuracycheck BattleScript_1D6F72, 0 + accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE attackstring ppreduce - atk6 + typecalc presentdamagecalculation -MoveEffect_Safeguard: @ 81D7F55 +BattleScript_EffectSafeguard: @ 81D7F55 attackcanceler attackstring ppreduce setsafeguard - jump BattleScript_1D7786 + goto BattleScript_PrintReflectLightScreenSafeguardString -MoveEffect_ThawHit: @ 81D7F5E - setbyte gUnknown_02024D1F + 0x2, 3 - jump BattleScript_1D6F14 +BattleScript_EffectThawHit: @ 81D7F5E + setmoveeffect EFFECT_BURN + goto BattleScript_EffectHit -MoveEffect_Magnitude: @ 81D7F69 +BattleScript_EffectMagnitude: @ 81D7F69 attackcanceler attackstring ppreduce - selectnexttarget + selectfirstvalidtarget magnitudedamagecalculation pause 32 printstring BATTLE_TEXT_MagnitudeCount waitmessage 64 - jump BattleScript_1D80FD + goto BattleScript_HitsAllWithUndergroundBonusLoop -MoveEffect_BatonPass: @ 81D7F7C +BattleScript_EffectBatonPass: @ 81D7F7C attackcanceler attackstring ppreduce - jumpifcannotswitch 129, BattleScript_ButItFailed + jumpifcantswitch ATK4F_DONT_CHECK_STATUSES | USER, BattleScript_ButItFailed attackanimation waitanimation openpartyscreen USER, BattleScript_ButItFailed - atke2 USER - waitstateatk - atk51 USER, 2 - atk58 USER - switch1 USER - switch2 USER - atk73 USER + switchoutabilities USER + waitstate + switchhandleorder USER, 2 + returntoball USER + getswitchedmondata USER + switchindataupdate USER + hpthresholds USER printstring 3 - switch3 USER, 1 - waitstateatk - atk52 USER - jump BattleScript_EndTurn + switchinanim USER, 1 + waitstate + switchineffects USER + goto BattleScript_MoveEnd -MoveEffect_RapidSpin: @ 81D7FA9 - setbyte gUnknown_02024D1F + 0x2, 163 - jump BattleScript_1D6F14 +BattleScript_EffectRapidSpin: @ 81D7FA9 + setmoveeffect EFFECT_RAPIDSPIN | CERTAIN + goto BattleScript_EffectHit -MoveEffect_Sonicboom: @ 81D7FB4 +BattleScript_EffectSonicboom: @ 81D7FB4 attackcanceler - accuracycheck BattleScript_1D6F72, 0 + accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE attackstring ppreduce - atk6 - bicbyte gBattleMoveFlags, 6 - setbyte gBattleMoveDamage, 20 - setbyte gBattleMoveDamage + 0x1, 0 - setbyte gBattleMoveDamage + 0x2, 0 - setbyte gBattleMoveDamage + 0x3, 0 - atk69 - jump BattleScript_1D6F48 + typecalc + bicbyte gBattleMoveFlags, MOVESTATUS_SUPEREFFECTIVE | MOVESTATUS_NOTVERYEFFECTIVE + setword gBattleMoveDamage, 20 + adjustsetdamage + goto BattleScript_HitFromAtkAnimation -MoveEffect_Moonlight: @ 81D7FE3 -MoveEffect_MorningSun: @ 81D7FE3 -MoveEffect_Synthesis: @ 81D7FE3 +BattleScript_EffectMoonlight: @ 81D7FE3 +BattleScript_EffectMorningSun: @ 81D7FE3 +BattleScript_EffectSynthesis: @ 81D7FE3 attackcanceler attackstring ppreduce - recoverbasedonsunlight BattleScript_1D83B5 - jump BattleScript_1D839B + recoverbasedonsunlight BattleScript_AlreadyAtFullHp + goto BattleScript_PresentHealTarget -MoveEffect_HiddenPower: @ 81D7FF0 - hiddenpowerdamagecalculation - jump BattleScript_1D6F14 +BattleScript_EffectHiddenPower: @ 81D7FF0 + hiddenpowercalc + goto BattleScript_EffectHit -MoveEffect_RainDance: @ 81D7FF6 +BattleScript_EffectRainDance: @ 81D7FF6 attackcanceler attackstring ppreduce setrain -BattleScript_1D7FFA: @ 81D7FFA +BattleScript_MoveWeatherChange: @ 81D7FFA attackanimation waitanimation - printfromtable BattleTextList_40151C + printfromtable gMoveWeatherChangeStringIds waitmessage 64 - callatk BattleScript_1D9761 - jump BattleScript_EndTurn + call BattleScript_WeatherFormChanges + goto BattleScript_MoveEnd -MoveEffect_SunnyDay: @ 81D800E +BattleScript_EffectSunnyDay: @ 81D800E attackcanceler attackstring ppreduce setsunny - jump BattleScript_1D7FFA + goto BattleScript_MoveWeatherChange -MoveEffect_DefenseUpHit: @ 81D8017 - setbyte gUnknown_02024D1F + 0x2, 80 - jump BattleScript_1D6F14 +BattleScript_EffectDefenseUpHit: @ 81D8017 + setbyte cEFFECT_CHOOSER, 80 + goto BattleScript_EffectHit -MoveEffect_AttackUpHit: @ 81D8022 - setbyte gUnknown_02024D1F + 0x2, 79 - jump BattleScript_1D6F14 +BattleScript_EffectAttackUpHit: @ 81D8022 + setbyte cEFFECT_CHOOSER, 79 + goto BattleScript_EffectHit -MoveEffect_AllStatsUpHit: @ 81D802D - setbyte gUnknown_02024D1F + 0x2, 98 - jump BattleScript_1D6F14 +BattleScript_EffectAllStatsUpHit: @ 81D802D + setbyte cEFFECT_CHOOSER, 98 + goto BattleScript_EffectHit -MoveEffect_BellyDrum: @ 81D8038 +BattleScript_EffectBellyDrum: @ 81D8038 attackcanceler attackstring ppreduce maxattackhalvehp BattleScript_ButItFailed - orword gHitMarker, 0x100 + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE attackanimation waitanimation - graphicalhpupdate USER + healthbarupdate USER datahpupdate USER printstring BATTLE_TEXT_CutHPMaxATK waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_PsychUp: @ 81D805A +BattleScript_EffectPsychUp: @ 81D805A attackcanceler attackstring ppreduce @@ -1878,72 +1875,72 @@ MoveEffect_PsychUp: @ 81D805A waitanimation printstring BATTLE_TEXT_CopyStatChanges waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_MirrorCoat: @ 81D806F +BattleScript_EffectMirrorCoat: @ 81D806F attackcanceler - mirrorcoatdamagecalculator BattleScript_1D83D4 - accuracycheck BattleScript_1D6F72, 0 + mirrorcoatdamagecalculator BattleScript_ButItFailedAtkStringPpReduce + accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE attackstring ppreduce - damagecalc2 - atk69 - jump BattleScript_1D6F48 + typecalc2 + adjustsetdamage + goto BattleScript_HitFromAtkAnimation -MoveEffect_SkullBash: @ 81D8085 - jumpifsecondarytstatus USER, S_CONTINUE, BattleScript_1D753D - jumpifword 4, gHitMarker, 0x200, BattleScript_1D753D - setbyte gSharedMem + 0x16055, 2 - callatk BattleScript_1D756C - setbyte gSharedMem + 0x1601E, 18 - statbuffchange 65, BattleScript_1D80CF - jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D80CF - atk47 - playanimation USER, B_ANIM_STATS_CHANGE, gSharedMem + 0x160A4 - printfromtable BattleTextList_401570 +BattleScript_EffectSkullBash: @ 81D8085 + jumpifstatus2 USER, STATUS2_MULTIPLETURNS, BattleScript_TwoTurnMovesSecondTurn + jumpifword COMMON_BITS, gHitMarker, HITMARKER_NO_ATTACKSTRING, BattleScript_TwoTurnMovesSecondTurn + setbyte sTWOTURN_STRINGID, 2 + call BattleScriptFirstChargingTurn + setstatchanger DEFENSE, 1, FALSE + statbuffchange AFFECTS_USER | 0x1, BattleScript_SkullBashEnd + jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_SkullBashEnd + setgraphicalstatchangevalues + playanimation USER, B_ANIM_STATS_CHANGE, sANIM_ARG1 + printfromtable gStatUpStringIds waitmessage 64 -BattleScript_1D80CF: @ 81D80CF - jump BattleScript_EndTurn +BattleScript_SkullBashEnd: @ 81D80CF + goto BattleScript_MoveEnd -MoveEffect_Twister: @ 81D80D4 - jumpifspecialstatusflag TARGET, 0x40, 1, BattleScript_1D80EE - orword gHitMarker, 0x10000 - setbyte gSharedMem + 0x1601F, 2 +BattleScript_EffectTwister: @ 81D80D4 + jumpifnostatus3 TARGET, STATUS3_ON_AIR, BattleScript_FlinchEffect + orword gHitMarker, HITMARKER_IGNORE_ON_AIR + setbyte sDMG_MULTIPLIER, 2 -BattleScript_1D80EE: @ 81D80EE - setbyte gUnknown_02024D1F + 0x2, 8 - jump BattleScript_1D6F14 +BattleScript_FlinchEffect: @ 81D80EE + setmoveeffect EFFECT_FLINCH + goto BattleScript_EffectHit -MoveEffect_Earthquake: @ 81D80F9 +BattleScript_EffectEarthquake: @ 81D80F9 attackcanceler attackstring ppreduce - selectnexttarget + selectfirstvalidtarget -BattleScript_1D80FD: @ 81D80FD - atk25 - jumpifspecialstatusflag TARGET, 0x80, 1, BattleScript_1D811D - orword gHitMarker, 0x20000 - setbyte gSharedMem + 0x1601F, 2 - jump BattleScript_1D812C +BattleScript_HitsAllWithUndergroundBonusLoop: @ 81D80FD + movevaluescleanup + jumpifnostatus3 TARGET, STATUS3_UNDERGROUND, BattleScript_HitsAllNoUndergroundBonus + orword gHitMarker, HITMARKER_IGNORE_UNDERGROUND + setbyte sDMG_MULTIPLIER, 2 + goto BattleScript_DoHitAllWithUndergroundBonus -BattleScript_1D811D: @ 81D811D - bicword gHitMarker, 0x20000 - setbyte gSharedMem + 0x1601F, 1 +BattleScript_HitsAllNoUndergroundBonus: @ 81D811D + bicword gHitMarker, HITMARKER_IGNORE_UNDERGROUND + setbyte sDMG_MULTIPLIER, 1 -BattleScript_1D812C: @ 81D812C - accuracycheck BattleScript_1D8165, 0 +BattleScript_DoHitAllWithUndergroundBonus: @ 81D812C + accuracycheck BattleScript_HitAllWithUndergroundBonusMissed, ACC_CURR_MOVE critcalc - atk5 - atk6 - atk7 + damagecalc + typecalc + adjustnormaldamage attackanimation waitanimation - missmessage - atk5c TARGET - waitstateatk - graphicalhpupdate TARGET + effectivenesssound + hitanimation TARGET + waitstate + healthbarupdate TARGET datahpupdate TARGET critmessage waitmessage 64 @@ -1951,395 +1948,395 @@ BattleScript_1D812C: @ 81D812C waitmessage 64 printstring BATTLE_TEXT_Terminator2 waitmessage 1 - faintpokemon TARGET, 0, 0x0 - setbyte gSharedMem + 0x1600C, 0 - atk49 2, 16 - jumpwhiletargetvalid BattleScript_1D80FD + tryfaintmon TARGET, FALSE, NULL + setbyte sMOVEEND_STATE, 0 + moveend 2, 16 + jumpifnexttargetvalid BattleScript_HitsAllWithUndergroundBonusLoop end -BattleScript_1D8165: @ 81D8165 +BattleScript_HitAllWithUndergroundBonusMissed: @ 81D8165 pause 32 - atk6 - missmessage + typecalc + effectivenesssound resultmessage waitmessage 64 - setbyte gSharedMem + 0x1600C, 0 - atk49 2, 16 - jumpwhiletargetvalid BattleScript_1D80FD + setbyte sMOVEEND_STATE, 0 + moveend 2, 16 + jumpifnexttargetvalid BattleScript_HitsAllWithUndergroundBonusLoop end -MoveEffect_FutureSight: @ 81D817D +BattleScript_EffectFutureSight: @ 81D817D attackcanceler attackstring ppreduce - setfutureattack BattleScript_ButItFailed + trysetfutureattack BattleScript_ButItFailed attackanimation waitanimation - printfromtable BattleTextList_4015E2 + printfromtable gFutureMoveUsedStringIds waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Gust: @ 81D8194 - jumpifspecialstatusflag TARGET, 0x40, 1, BattleScript_1D6F14 - orword gHitMarker, 0x10000 - setbyte gSharedMem + 0x1601F, 2 - jump BattleScript_1D6F14 +BattleScript_EffectGust: @ 81D8194 + jumpifnostatus3 TARGET, STATUS3_ON_AIR, BattleScript_EffectHit + orword gHitMarker, HITMARKER_IGNORE_ON_AIR + setbyte sDMG_MULTIPLIER, 2 + goto BattleScript_EffectHit -MoveEffect_FlinchHit2: @ 81D81B3 - jumpifspecialstatusflag TARGET, 0x100, 1, BattleScript_1D80EE - setbyte gSharedMem + 0x1601F, 2 - jump BattleScript_1D80EE +BattleScript_EffectStomp: @ 81D81B3 + jumpifnostatus3 TARGET, STATUS3_MINIMIZED, BattleScript_FlinchEffect + setbyte sDMG_MULTIPLIER, 2 + goto BattleScript_FlinchEffect -MoveEffect_Solarbeam: @ 81D81C9 - jumpifabilitypresent ABILITY_CLOUD_NINE, BattleScript_1D81E1 - jumpifabilitypresent ABILITY_AIR_LOCK, BattleScript_1D81E1 - jumpifhalfword 4, gBattleWeather, 96, BattleScript_1D8209 +BattleScript_EffectSolarbeam: @ 81D81C9 + jumpifabilitypresent ABILITY_CLOUD_NINE, BattleScript_SolarbeamDecideTurn + jumpifabilitypresent ABILITY_AIR_LOCK, BattleScript_SolarbeamDecideTurn + jumpifhalfword COMMON_BITS, gBattleWeather, 96, BattleScript_SolarbeamOnFirstTurn -BattleScript_1D81E1: @ 81D81E1 - jumpifsecondarytstatus USER, S_CONTINUE, BattleScript_1D753D - jumpifword 4, gHitMarker, 0x200, BattleScript_1D753D - setbyte gSharedMem + 0x16055, 1 - callatk BattleScript_1D756C - jump BattleScript_EndTurn +BattleScript_SolarbeamDecideTurn: @ 81D81E1 + jumpifstatus2 USER, STATUS2_MULTIPLETURNS, BattleScript_TwoTurnMovesSecondTurn + jumpifword COMMON_BITS, gHitMarker, HITMARKER_NO_ATTACKSTRING, BattleScript_TwoTurnMovesSecondTurn + setbyte sTWOTURN_STRINGID, 1 + call BattleScriptFirstChargingTurn + goto BattleScript_MoveEnd -BattleScript_1D8209: @ 81D8209 - orword gHitMarker, 0x8000000 - setbyte gUnknown_02024D1F + 0x2, 76 - seteffecttarget +BattleScript_SolarbeamOnFirstTurn: @ 81D8209 + orword gHitMarker, HITMARKER_x8000000 + setbyte cEFFECT_CHOOSER, 76 + seteffectprimary ppreduce - jump BattleScript_1D753D + goto BattleScript_TwoTurnMovesSecondTurn -MoveEffect_Thunder: @ 81D821F - setbyte gUnknown_02024D1F + 0x2, 5 - orword gHitMarker, 0x10000 - jump BattleScript_1D6F14 +BattleScript_EffectThunder: @ 81D821F + setmoveeffect EFFECT_PARALYSIS + orword gHitMarker, HITMARKER_IGNORE_ON_AIR + goto BattleScript_EffectHit -MoveEffect_Teleport: @ 81D8233 +BattleScript_EffectTeleport: @ 81D8233 attackcanceler attackstring ppreduce - jumpifhalfword 4, gBattleTypeFlags, 8, BattleScript_ButItFailed - atk76 USER, 2 - jumpifbyte 0, gBattleCommunication, 1, BattleScript_ButItFailed - jumpifbyte 0, gBattleCommunication, 2, BattleScript_1D8839 + jumpifbattletype BATTLE_TYPE_TRAINER, BattleScript_ButItFailed + getifcantrunfrombattle USER + jumpifbyte EQUAL, gBattleCommunication, 1, BattleScript_ButItFailed + jumpifbyte EQUAL, gBattleCommunication, 2, BattleScript_PrintAbilityMadeIneffective attackanimation waitanimation printstring BATTLE_TEXT_FledBattle waitmessage 64 setbyte gBattleOutcome, 5 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_BeatUp: @ 81D826E +BattleScript_EffectBeatUp: @ 81D826E attackcanceler - accuracycheck BattleScript_1D6F72, 0 + accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE attackstring pause 32 ppreduce setbyte gBattleCommunication, 0 -BattleScript_1D8281: @ 81D8281 - atk25 - beatupcalculation BattleScript_1D82C4, BattleScript_ButItFailed +BattleScript_BeatUpLoop: @ 81D8281 + movevaluescleanup + trydobeatup BattleScript_BeatUpEnd, BattleScript_ButItFailed printstring BATTLE_TEXT_PokeAttack critcalc - jumpifbyte 1, gCritMultiplier, 2, BattleScript_1D829C + jumpifbyte NOT_EQUAL, gCritMultiplier, 2, BattleScript_BeatUpAttack manipulatedamage 2 -BattleScript_1D829C: @ 81D829C - atk7 +BattleScript_BeatUpAttack: @ 81D829C + adjustnormaldamage attackanimation waitanimation - missmessage - atk5c TARGET - waitstateatk - graphicalhpupdate TARGET + effectivenesssound + hitanimation TARGET + waitstate + healthbarupdate TARGET datahpupdate TARGET critmessage waitmessage 64 resultmessage waitmessage 64 - faintpokemon TARGET, 0, 0x0 - setbyte gSharedMem + 0x1600C, 0 - atk49 2, 16 - jump BattleScript_1D8281 + tryfaintmon TARGET, FALSE, NULL + setbyte sMOVEEND_STATE, 0 + moveend 2, 16 + goto BattleScript_BeatUpLoop -BattleScript_1D82C4: @ 81D82C4 +BattleScript_BeatUpEnd: @ 81D82C4 end -MoveEffect_Fly: @ 81D82C5 - jumpifsecondarytstatus USER, S_CONTINUE, BattleScript_1D8333 - jumpifword 4, gHitMarker, 0x200, BattleScript_1D8333 - jumpifhalfword 0, gCurrentMove, 19, BattleScript_1D8322 - jumpifhalfword 0, gCurrentMove, 291, BattleScript_1D8317 - jumpifhalfword 0, gCurrentMove, 340, BattleScript_1D830C - setbyte gSharedMem + 0x16055, 5 - jump BattleScript_1D8328 +BattleScript_EffectSemiInvulnerable: @ 81D82C5 + jumpifstatus2 USER, STATUS2_MULTIPLETURNS, BattleScript_SecondTurnSemiInvulnerable + jumpifword COMMON_BITS, gHitMarker, HITMARKER_NO_ATTACKSTRING, BattleScript_SecondTurnSemiInvulnerable + jumpifmove MOVE_FLY, BattleScript_FirstTurnFly + jumpifmove MOVE_DIVE, BattleScript_FirstTurnDive + jumpifmove MOVE_BOUNCE, BattleScript_FirstTurnBounce + setbyte sTWOTURN_STRINGID, 5 + goto BattleScript_FirstTurnSemiInvulnerable -BattleScript_1D830C: @ 81D830C - setbyte gSharedMem + 0x16055, 7 - jump BattleScript_1D8328 +BattleScript_FirstTurnBounce: @ 81D830C + setbyte sTWOTURN_STRINGID, 7 + goto BattleScript_FirstTurnSemiInvulnerable -BattleScript_1D8317: @ 81D8317 - setbyte gSharedMem + 0x16055, 6 - jump BattleScript_1D8328 +BattleScript_FirstTurnDive: @ 81D8317 + setbyte sTWOTURN_STRINGID, 6 + goto BattleScript_FirstTurnSemiInvulnerable -BattleScript_1D8322: @ 81D8322 - setbyte gSharedMem + 0x16055, 4 +BattleScript_FirstTurnFly: @ 81D8322 + setbyte sTWOTURN_STRINGID, 4 -BattleScript_1D8328: @ 81D8328 - callatk BattleScript_1D756C - hidepreattack - jump BattleScript_EndTurn +BattleScript_FirstTurnSemiInvulnerable: @ 81D8328 + call BattleScriptFirstChargingTurn + setsemiinvulnerablebit + goto BattleScript_MoveEnd -BattleScript_1D8333: @ 81D8333 +BattleScript_SecondTurnSemiInvulnerable: @ 81D8333 attackcanceler - setbyte gUnknown_02024D1F + 0x2, 12 - setbyte gSharedMem + 0x16002, 1 - clearstatus USER - orword gHitMarker, 0x800 - jumpifhalfword 1, gCurrentMove, 340, BattleScript_1D835D - setbyte gUnknown_02024D1F + 0x2, 5 + setmoveeffect EFFECT_CHARGING + setbyte sANIM_TURN, 1 + clearstatusfromeffect USER + orword gHitMarker, HITMARKER_NO_PPDEDUCT + jumpifnotmove MOVE_BOUNCE, BattleScript_SemiInvulnerableTryHit + setmoveeffect EFFECT_PARALYSIS -BattleScript_1D835D: @ 81D835D - accuracycheck BattleScript_1D836A, 0 - unhidepostattack - jump BattleScript_1D6F42 +BattleScript_SemiInvulnerableTryHit: @ 81D835D + accuracycheck BattleScript_SemiInvulnerableMiss, ACC_CURR_MOVE + clearsemiinvulnerablebit + goto BattleScript_HitFromAtkString -BattleScript_1D836A: @ 81D836A - unhidepostattack - jump BattleScript_1D6F72 +BattleScript_SemiInvulnerableMiss: @ 81D836A + clearsemiinvulnerablebit + goto BattleScript_PrintMoveMissed -MoveEffect_DefenseCurl: @ 81D8370 +BattleScript_EffectDefenseCurl: @ 81D8370 attackcanceler attackstring ppreduce - setcurled - setbyte gSharedMem + 0x1601E, 18 - statbuffchange 65, BattleScript_1D838D - jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D71D8 + setdefensecurlbit + setstatchanger DEFENSE, 1, FALSE + statbuffchange AFFECTS_USER | 0x1, BattleScript_DefenseCurlDoStatUpAnim + jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_StatUpPrintString attackanimation waitanimation -BattleScript_1D838D: @ 81D838D - jump BattleScript_1D71D0 +BattleScript_DefenseCurlDoStatUpAnim: @ 81D838D + goto BattleScript_StatUpDoAnim -MoveEffect_Softboiled: @ 81D8392 +BattleScript_EffectSoftboiled: @ 81D8392 attackcanceler attackstring ppreduce - setdamageasrestorehalfmaxhp BattleScript_1D83B5, 0 + tryhealhalfhealth BattleScript_AlreadyAtFullHp, 0 -BattleScript_1D839B:: @ 81D839B +BattleScript_PresentHealTarget:: @ 81D839B attackanimation waitanimation - orword gHitMarker, 0x100 - graphicalhpupdate TARGET + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE + healthbarupdate TARGET datahpupdate TARGET printstring BATTLE_TEXT_RegainedHealth waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -BattleScript_1D83B5:: @ 81D83B5 +BattleScript_AlreadyAtFullHp:: @ 81D83B5 pause 32 printstring BATTLE_TEXT_HPFull waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_FakeOut: @ 81D83C3 +BattleScript_EffectFakeOut: @ 81D83C3 attackcanceler - jumpifnotfirstturn BattleScript_1D83D4 - setbyte gUnknown_02024D1F + 0x2, 136 - jump BattleScript_1D6F14 + jumpifnotfirstturn BattleScript_ButItFailedAtkStringPpReduce + setbyte cEFFECT_CHOOSER, 136 + goto BattleScript_EffectHit -BattleScript_1D83D4: @ 81D83D4 +BattleScript_ButItFailedAtkStringPpReduce: @ 81D83D4 attackstring -BattleScript_1D83D5: @ 81D83D5 +BattleScript_ButItFailedPpReduce: @ 81D83D5 ppreduce BattleScript_ButItFailed:: @ 81D83D6 pause 32 - orbyte gBattleMoveFlags, 32 + orbyte gBattleMoveFlags, MOVESTATUS_FAILED resultmessage waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -BattleScript_1D83E8: @ 81D83E8 +BattleScript_NotAffected: @ 81D83E8 pause 32 - orbyte gBattleMoveFlags, 8 + orbyte gBattleMoveFlags, MOVESTATUS_NOTAFFECTED resultmessage waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Uproar: @ 81D83FA +BattleScript_EffectUproar: @ 81D83FA attackcanceler - accuracycheck BattleScript_1D6F72, 0 - setbyte gUnknown_02024D1F + 0x2, 74 + accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE + setbyte cEFFECT_CHOOSER, 74 attackstring - jumpifsecondarytstatus USER, S_CONTINUE, BattleScript_1D8414 + jumpifstatus2 USER, STATUS2_MULTIPLETURNS, BattleScript_UproarHit ppreduce -BattleScript_1D8414: @ 81D8414 - nop3 - jump BattleScript_1D6F44 +BattleScript_UproarHit: @ 81D8414 + nop + goto BattleScript_HitFromCritCalc -MoveEffect_Stockpile: @ 81D841A +BattleScript_EffectStockpile: @ 81D841A attackcanceler attackstring ppreduce stockpile attackanimation waitanimation - printfromtable BattleTextList_40155E + printfromtable gStockpileUsedStringIds waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_SpitUp: @ 81D842D +BattleScript_EffectSpitUp: @ 81D842D attackcanceler - jumpifbyte 0, gUnknown_02024D1F + 0x5, 1, BattleScript_1D845C + jumpifbyte EQUAL, gUnknown_02024D1F + 0x5, 1, BattleScript_SpitUpFail attackstring ppreduce - accuracycheck BattleScript_1D6F72, 0 + accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE stockpiletobasedamage BattleScript_1D844E - atk6 - atk69 - jump BattleScript_1D6F48 + typecalc + adjustsetdamage + goto BattleScript_HitFromAtkAnimation BattleScript_1D844E: @ 81D844E pause 32 printstring BATTLE_TEXT_SpitUpFail waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -BattleScript_1D845C: @ 81D845C +BattleScript_SpitUpFail: @ 81D845C attackstring ppreduce pause 64 stockpiletobasedamage BattleScript_1D844E resultmessage waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Swallow: @ 81D846F +BattleScript_EffectSwallow: @ 81D846F attackcanceler attackstring ppreduce - stockpiletohprecovery BattleScript_1D847C - jump BattleScript_1D839B + stockpiletohpheal BattleScript_SwallowFail + goto BattleScript_PresentHealTarget -BattleScript_1D847C: @ 81D847C +BattleScript_SwallowFail: @ 81D847C pause 32 - printfromtable BattleTextList_401566 + printfromtable gSwallowFailStringIds waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Hail: @ 81D848C +BattleScript_EffectHail: @ 81D848C attackcanceler attackstring ppreduce sethail - jump BattleScript_1D7FFA + goto BattleScript_MoveWeatherChange -MoveEffect_Torment: @ 81D8495 +BattleScript_EffectTorment: @ 81D8495 attackcanceler attackstring ppreduce - accuracycheck BattleScript_ButItFailed, 0 + accuracycheck BattleScript_ButItFailed, ACC_CURR_MOVE settorment BattleScript_ButItFailed attackanimation waitanimation printstring BATTLE_TEXT_TormentSubject waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Flatter: @ 81D84B1 +BattleScript_EffectFlatter: @ 81D84B1 attackcanceler - jumpifsecondarytstatus TARGET, S_SUBSTITUTE, BattleScript_1D6F6C - accuracycheck BattleScript_1D6F72, 0 + jumpifstatus2 TARGET, STATUS2_SUBSTITUTE, BattleScript_MakeMoveMissed + accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE attackstring ppreduce - jumpifconfusedandattackmaxed 4, BattleScript_ButItFailed + jumpifconfusedandstatmaxed 4, BattleScript_ButItFailed attackanimation waitanimation - setbyte gSharedMem + 0x1601E, 20 - statbuffchange 1, BattleScript_1D84F4 - jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D84F4 - atk47 - playanimation TARGET, B_ANIM_STATS_CHANGE, gSharedMem + 0x160A4 - printfromtable BattleTextList_401570 + setstatchanger SP_ATTACK, 1, FALSE + statbuffchange 1, BattleScript_FlatterTryConfuse + jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_FlatterTryConfuse + setgraphicalstatchangevalues + playanimation TARGET, B_ANIM_STATS_CHANGE, sANIM_ARG1 + printfromtable gStatUpStringIds waitmessage 64 -BattleScript_1D84F4: @ 81D84F4 - jumpifability TARGET, ABILITY_OWN_TEMPO, BattleScript_1D98E5 - jumpifhalverset TARGET, 32, BattleScript_1D9037 - setbyte gUnknown_02024D1F + 0x2, 7 - seteffecttarget - jump BattleScript_EndTurn +BattleScript_FlatterTryConfuse: @ 81D84F4 + jumpifability TARGET, ABILITY_OWN_TEMPO, BattleScript_OwnTempoPrevents + jumpifsideaffecting TARGET, SIDE_STATUS_SAFEGUARD, BattleScript_SafeguardProtected + setmoveeffect EFFECT_CONFUSION + seteffectprimary + goto BattleScript_MoveEnd -MoveEffect_WillOWisp: @ 81D850F +BattleScript_EffectWillOWisp: @ 81D850F attackcanceler attackstring ppreduce - jumpifsecondarytstatus TARGET, S_SUBSTITUTE, BattleScript_ButItFailed - jumpifstatus TARGET, BRN, BattleScript_1D8575 - jumpiftype TARGET, TYPE_FIRE, BattleScript_1D83E8 - jumpifability TARGET, ABILITY_WATER_VEIL, BattleScript_1D855B + jumpifstatus2 TARGET, STATUS2_SUBSTITUTE, BattleScript_ButItFailed + jumpifstatus TARGET, BRN, BattleScript_AlreadyBurned + jumpiftype TARGET, TYPE_FIRE, BattleScript_NotAffected + jumpifability TARGET, ABILITY_WATER_VEIL, BattleScript_WaterVeilPrevents jumpifstatus TARGET, SLP | PSN | BRN | FRZ | PAR | TOX, BattleScript_ButItFailed - accuracycheck BattleScript_ButItFailed, 0 - jumpifhalverset TARGET, 32, BattleScript_1D9037 + accuracycheck BattleScript_ButItFailed, ACC_CURR_MOVE + jumpifsideaffecting TARGET, SIDE_STATUS_SAFEGUARD, BattleScript_SafeguardProtected attackanimation waitanimation - setbyte gUnknown_02024D1F + 0x2, 3 - seteffecttarget - jump BattleScript_EndTurn + setmoveeffect EFFECT_BURN + seteffectprimary + goto BattleScript_MoveEnd -BattleScript_1D855B: @ 81D855B - copyarray gEffectBank, gBankTarget, 1 - setbyte gUnknown_02024D1F + 0x4, 0 - callatk BattleScript_BRNPrevention - jump BattleScript_EndTurn +BattleScript_WaterVeilPrevents: @ 81D855B + copybyte gEffectBank, gBankTarget + setbyte cMULTISTRING_CHOOSER, 0 + call BattleScript_BRNPrevention + goto BattleScript_MoveEnd -BattleScript_1D8575: @ 81D8575 +BattleScript_AlreadyBurned: @ 81D8575 pause 32 printstring BATTLE_TEXT_AlreadyBurned waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Memento: @ 81D8583 +BattleScript_EffectMemento: @ 81D8583 attackcanceler - jumpifbyte 0, gUnknown_02024D1F + 0x5, 1, BattleScript_1D860A + jumpifbyte EQUAL, gUnknown_02024D1F + 0x5, 1, BattleScript_1D860A attackstring ppreduce jumpifattackandspecialattackcannotfall BattleScript_ButItFailed - setuserhptozero + setatkhptozero attackanimation waitanimation - jumpifsecondarytstatus TARGET, S_SUBSTITUTE, BattleScript_1D85FF - setbyte gSharedMem + 0x160DC, 0 + jumpifstatus2 TARGET, STATUS2_SUBSTITUTE, BattleScript_1D85FF + setbyte sFIELD_1B, 0 playstatchangeanimation TARGET, 18, 7 playstatchangeanimation TARGET, 2, 3 - setbyte gSharedMem + 0x1601E, 161 + setstatchanger ATTACK, 2, TRUE statbuffchange 1, BattleScript_1D85D0 - jumpifbyte 2, gUnknown_02024D1F + 0x4, 1, BattleScript_1D85D0 - printfromtable BattleTextList_40157C + jumpifbyte GREATER_THAN, cMULTISTRING_CHOOSER, 1, BattleScript_1D85D0 + printfromtable gStatDownStringIds waitmessage 64 BattleScript_1D85D0: @ 81D85D0 playstatchangeanimation TARGET, 16, 3 - setbyte gSharedMem + 0x1601E, 164 + setstatchanger SP_ATTACK, 2, TRUE statbuffchange 1, BattleScript_1D85F3 - jumpifbyte 2, gUnknown_02024D1F + 0x4, 1, BattleScript_1D85F3 - printfromtable BattleTextList_40157C + jumpifbyte GREATER_THAN, cMULTISTRING_CHOOSER, 1, BattleScript_1D85F3 + printfromtable gStatDownStringIds waitmessage 64 BattleScript_1D85F3: @ 81D85F3 - faintpokemon USER, 0, 0x0 - jump BattleScript_EndTurn + tryfaintmon USER, FALSE, NULL + goto BattleScript_MoveEnd BattleScript_1D85FF: @ 81D85FF printstring BATTLE_TEXT_NoEffect waitmessage 64 - jump BattleScript_1D85F3 + goto BattleScript_1D85F3 BattleScript_1D860A: @ 81D860A attackstring @@ -2347,41 +2344,41 @@ BattleScript_1D860A: @ 81D860A jumpifattackandspecialattackcannotfall BattleScript_1D8611 BattleScript_1D8611: @ 81D8611 - setuserhptozero + setatkhptozero pause 64 - missmessage + effectivenesssound resultmessage waitmessage 64 - faintpokemon USER, 0, 0x0 - jump BattleScript_EndTurn + tryfaintmon USER, FALSE, NULL + goto BattleScript_MoveEnd -MoveEffect_Facade: @ 81D8626 - jumpifstatus USER, PSN | BRN | PAR | TOX, BattleScript_1D8635 - jump BattleScript_1D6F14 +BattleScript_EffectFacade: @ 81D8626 + jumpifstatus USER, PSN | BRN | PAR | TOX, BattleScript_FacadeDoubleDmg + goto BattleScript_EffectHit -BattleScript_1D8635: @ 81D8635 - setbyte gSharedMem + 0x1601F, 2 - jump BattleScript_1D6F14 +BattleScript_FacadeDoubleDmg: @ 81D8635 + setbyte sDMG_MULTIPLIER, 2 + goto BattleScript_EffectHit -MoveEffect_FocusPunch: @ 81D8640 +BattleScript_EffectFocusPunch: @ 81D8640 attackcanceler - jumpifnodamage BattleScript_1D6F3B + jumpifnodamage BattleScript_HitFromAccCheck ppreduce printstring BATTLE_TEXT_LostFocus waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Smellingsalt: @ 81D8652 - jumpifsecondarytstatus TARGET, S_SUBSTITUTE, BattleScript_1D6F14 - setbyte gUnknown_02024D1F + 0x2, 164 - jumpifstatus TARGET, PAR, BattleScript_1D8671 - jump BattleScript_1D6F14 +BattleScript_EffectSmellingsalt: @ 81D8652 + jumpifstatus2 TARGET, STATUS2_SUBSTITUTE, BattleScript_EffectHit + setmoveeffect EFFECT_REMOVE_PARALYSIS | CERTAIN + jumpifstatus TARGET, PAR, BattleScript_SmellingsaltDoubleDmg + goto BattleScript_EffectHit -BattleScript_1D8671: @ 81D8671 - setbyte gSharedMem + 0x1601F, 2 - jump BattleScript_1D6F14 +BattleScript_SmellingsaltDoubleDmg: @ 81D8671 + setbyte sDMG_MULTIPLIER, 2 + goto BattleScript_EffectHit -MoveEffect_FollowMe: @ 81D867C +BattleScript_EffectFollowMe: @ 81D867C attackcanceler attackstring ppreduce @@ -2390,9 +2387,9 @@ MoveEffect_FollowMe: @ 81D867C waitanimation printstring BATTLE_TEXT_CenterAttention waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_NaturePower: @ 81D868D +BattleScript_EffectNaturePower: @ 81D868D attackcanceler attackstring pause 32 @@ -2401,7 +2398,7 @@ MoveEffect_NaturePower: @ 81D868D waitmessage 64 return -MoveEffect_Charge: @ 81D869A +BattleScript_EffectCharge: @ 81D869A attackcanceler attackstring ppreduce @@ -2410,225 +2407,225 @@ MoveEffect_Charge: @ 81D869A waitanimation printstring BATTLE_TEXT_ChargingPower waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Taunt: @ 81D86AB +BattleScript_EffectTaunt: @ 81D86AB attackcanceler attackstring ppreduce - accuracycheck BattleScript_ButItFailed, 0 + accuracycheck BattleScript_ButItFailed, ACC_CURR_MOVE settaunt BattleScript_ButItFailed attackanimation waitanimation printstring BATTLE_TEXT_TauntFell waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_HelpingHand: @ 81D86C7 +BattleScript_EffectHelpingHand: @ 81D86C7 attackcanceler attackstring ppreduce - sethelpinghand BattleScript_ButItFailed + trysethelpinghand BattleScript_ButItFailed attackanimation waitanimation printstring BATTLE_TEXT_ReadyToHelp waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Trick: @ 81D86DC +BattleScript_EffectTrick: @ 81D86DC attackcanceler attackstring ppreduce - jumpifsecondarytstatus TARGET, S_SUBSTITUTE, BattleScript_ButItFailed - accuracycheck BattleScript_ButItFailed, 0 - itemswap BattleScript_ButItFailed + jumpifstatus2 TARGET, STATUS2_SUBSTITUTE, BattleScript_ButItFailed + accuracycheck BattleScript_ButItFailed, ACC_CURR_MOVE + tryswapitems BattleScript_ButItFailed attackanimation waitanimation printstring BATTLE_TEXT_SwitchedItems waitmessage 64 - printfromtable BattleTextList_401642 + printfromtable gItemSwapStringIds waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_RolePlay: @ 81D870A +BattleScript_EffectRolePlay: @ 81D870A attackcanceler attackstring ppreduce - accuracycheck BattleScript_ButItFailed, 65535 - copyability BattleScript_ButItFailed + accuracycheck BattleScript_ButItFailed, NO_ACC_CALC_CHECK_LOCK_ON + trycopyability BattleScript_ButItFailed attackanimation waitanimation printstring BATTLE_TEXT_CopiedObject waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Wish: @ 81D8726 +BattleScript_EffectWish: @ 81D8726 attackcanceler attackstring ppreduce - atkd4 0, BattleScript_ButItFailed + trywish 0, BattleScript_ButItFailed attackanimation waitanimation - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Assist: @ 81D8736 +BattleScript_EffectAssist: @ 81D8736 attackcanceler attackstring - assistattackselect BattleScript_1D83D5 + assistattackselect BattleScript_ButItFailedPpReduce attackanimation waitanimation - setbyte gSharedMem + 0x16002, 0 - setbyte gSharedMem + 0x160A1, 0 - jumptoattack USER + setbyte sANIM_TURN, 0 + setbyte sANIM_TARGETS_HIT, 0 + jumptorandomattack USER -MoveEffect_Ingrain: @ 81D874D +BattleScript_EffectIngrain: @ 81D874D attackcanceler attackstring ppreduce - setroots BattleScript_ButItFailed + trysetroots BattleScript_ButItFailed attackanimation waitanimation printstring BATTLE_TEXT_PlantedRoots waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Superpower: @ 81D8762 - setbyte gUnknown_02024D1F + 0x2, 229 - jump BattleScript_1D6F14 +BattleScript_EffectSuperpower: @ 81D8762 + setmoveeffect EFFECT_ATK_DEF_DOWN | AFFECTS_USER | CERTAIN + goto BattleScript_EffectHit -MoveEffect_MagicCoat: @ 81D876D +BattleScript_EffectMagicCoat: @ 81D876D attackcanceler - setmagiccoat BattleScript_1D83D4 + trysetmagiccoat BattleScript_ButItFailedAtkStringPpReduce attackstring ppreduce attackanimation waitanimation printstring BATTLE_TEXT_ShroudedItself waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Recycle: @ 81D8782 +BattleScript_EffectRecycle: @ 81D8782 attackcanceler attackstring ppreduce - recycleitem BattleScript_ButItFailed + tryrecycleitem BattleScript_ButItFailed attackanimation waitanimation printstring BATTLE_TEXT_FoundOne waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Revenge: @ 81D8797 +BattleScript_EffectRevenge: @ 81D8797 doubledamagedealtifdamaged - jump BattleScript_1D6F14 + goto BattleScript_EffectHit -MoveEffect_BrickBreak: @ 81D879D +BattleScript_EffectBrickBreak: @ 81D879D attackcanceler - accuracycheck BattleScript_1D6F72, 0 + accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE attackstring ppreduce - removereflectlightscreen + removelightscreenreflect critcalc - atk5 - atk6 - atk7 - jumpifbyte 0, gSharedMem + 0x16002, 0, BattleScript_1D87BD + damagecalc + typecalc + adjustnormaldamage + jumpifbyte EQUAL, sANIM_TURN, 0, BattleScript_BrickBreakAnim bicbyte gBattleMoveFlags, 9 -BattleScript_1D87BD: @ 81D87BD +BattleScript_BrickBreakAnim: @ 81D87BD attackanimation waitanimation - jumpifbyte 3, gSharedMem + 0x16002, 2, BattleScript_1D87D0 + jumpifbyte LESS_THAN, sANIM_TURN, 2, BattleScript_BrickBreakDoHit printstring BATTLE_TEXT_BrokeWall waitmessage 64 -BattleScript_1D87D0: @ 81D87D0 - damagecalc2 - missmessage - atk5c TARGET - waitstateatk - graphicalhpupdate TARGET +BattleScript_BrickBreakDoHit: @ 81D87D0 + typecalc2 + effectivenesssound + hitanimation TARGET + waitstate + healthbarupdate TARGET datahpupdate TARGET critmessage waitmessage 64 resultmessage waitmessage 64 - seteffectwithchancetarget - faintpokemon TARGET, 0, 0x0 - jump BattleScript_EndTurn + seteffectwithchance + tryfaintmon TARGET, FALSE, NULL + goto BattleScript_MoveEnd -MoveEffect_Yawn: @ 81D87EE +BattleScript_EffectYawn: @ 81D87EE attackcanceler attackstring ppreduce - jumpifability TARGET, ABILITY_VITAL_SPIRIT, BattleScript_1D882F - jumpifability TARGET, ABILITY_INSOMNIA, BattleScript_1D882F - jumpifsecondarytstatus TARGET, S_SUBSTITUTE, BattleScript_ButItFailed - jumpifhalverset TARGET, 32, BattleScript_1D9037 - accuracycheck BattleScript_ButItFailed, 65535 - jumpifcannotsleep BattleScript_ButItFailed + jumpifability TARGET, ABILITY_VITAL_SPIRIT, BattleScript_PrintBankAbilityMadeIneffective + jumpifability TARGET, ABILITY_INSOMNIA, BattleScript_PrintBankAbilityMadeIneffective + jumpifstatus2 TARGET, STATUS2_SUBSTITUTE, BattleScript_ButItFailed + jumpifsideaffecting TARGET, SIDE_STATUS_SAFEGUARD, BattleScript_SafeguardProtected + accuracycheck BattleScript_ButItFailed, NO_ACC_CALC_CHECK_LOCK_ON + jumpifcantmakeasleep BattleScript_ButItFailed setyawn BattleScript_ButItFailed attackanimation waitanimation printstring BATTLE_TEXT_DrowsyMade waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -BattleScript_1D882F: @ 81D882F - copyarray gSharedMem + 0x16003, gSharedMem + 0x160F8, 1 +BattleScript_PrintBankAbilityMadeIneffective: @ 81D882F + copybyte sBANK, sBANK_WITH_ABILITY -BattleScript_1D8839: @ 81D8839 +BattleScript_PrintAbilityMadeIneffective: @ 81D8839 pause 32 printstring BATTLE_TEXT_MadeIneffective2 waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_KnockOff: @ 81D8847 - setbyte gUnknown_02024D1F + 0x2, 54 - jump BattleScript_1D6F14 +BattleScript_EffectKnockOff: @ 81D8847 + setmoveeffect EFFECT_KNOCK_OFF + goto BattleScript_EffectHit -MoveEffect_Endeavor: @ 81D8852 +BattleScript_EffectEndeavor: @ 81D8852 attackcanceler attackstring ppreduce setdamagetohealthdifference BattleScript_ButItFailed - copyarray gHP_dealt, gBattleMoveDamage, 4 - accuracycheck BattleScript_1D6F77, 0 - atk6 - jumpifbyte 4, gBattleMoveFlags, 41, BattleScript_1D6F48 - bicbyte gBattleMoveFlags, 6 - copyarray gBattleMoveDamage, gHP_dealt, 4 - atk69 - jump BattleScript_1D6F48 - -MoveEffect_Eruption: @ 81D888D + copyword gHP_dealt, gBattleMoveDamage + accuracycheck BattleScript_MoveMissed, ACC_CURR_MOVE + typecalc + jumpifmovehadnoeffect BattleScript_HitFromAtkAnimation + bicbyte gBattleMoveFlags, MOVESTATUS_SUPEREFFECTIVE | MOVESTATUS_NOTVERYEFFECTIVE + copyword gBattleMoveDamage, gHP_dealt + adjustsetdamage + goto BattleScript_HitFromAtkAnimation + +BattleScript_EffectEruption: @ 81D888D scaledamagebyhealthratio - jump BattleScript_1D6F14 + goto BattleScript_EffectHit -MoveEffect_SkillSwap: @ 81D8893 +BattleScript_EffectSkillSwap: @ 81D8893 attackcanceler attackstring ppreduce - accuracycheck BattleScript_ButItFailed, 65535 - abilityswap BattleScript_ButItFailed + accuracycheck BattleScript_ButItFailed, NO_ACC_CALC_CHECK_LOCK_ON + tryswapabilities BattleScript_ButItFailed attackanimation waitanimation printstring BATTLE_TEXT_AbilitySwap waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Imprison: @ 81D88AF +BattleScript_EffectImprison: @ 81D88AF attackcanceler attackstring ppreduce - imprisoneffect BattleScript_ButItFailed + tryimprision BattleScript_ButItFailed attackanimation waitanimation printstring BATTLE_TEXT_SealedMove waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Refresh: @ 81D88C4 +BattleScript_EffectRefresh: @ 81D88C4 attackcanceler attackstring ppreduce @@ -2637,23 +2634,23 @@ MoveEffect_Refresh: @ 81D88C4 waitanimation printstring BATTLE_TEXT_StatusNormal waitmessage 64 - atk98 1 - jump BattleScript_EndTurn + updatestatusicon USER + goto BattleScript_MoveEnd -MoveEffect_Grudge: @ 81D88DB +BattleScript_EffectGrudge: @ 81D88DB attackcanceler attackstring ppreduce - setgrudge BattleScript_ButItFailed + trysetgrudge BattleScript_ButItFailed attackanimation waitanimation printstring BATTLE_TEXT_GrudgeBear waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_Snatch: @ 81D88F0 +BattleScript_EffectSnatch: @ 81D88F0 attackcanceler - setstealstatchange BattleScript_1D83D4 + trysetsnatch BattleScript_ButItFailedAtkStringPpReduce attackstring ppreduce attackanimation @@ -2661,267 +2658,267 @@ MoveEffect_Snatch: @ 81D88F0 pause 32 printstring BATTLE_TEXT_AwaitMove waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_LowKick: @ 81D8908 +BattleScript_EffectLowKick: @ 81D8908 attackcanceler attackstring ppreduce weightdamagecalculation - accuracycheck BattleScript_1D6F77, 0 - jump BattleScript_1D6F44 + accuracycheck BattleScript_MoveMissed, ACC_CURR_MOVE + goto BattleScript_HitFromCritCalc -MoveEffect_SecretPower: @ 81D8918 - naturepowereffect - jump BattleScript_1D6F14 +BattleScript_EffectSecretPower: @ 81D8918 + getsecretpowereffect + goto BattleScript_EffectHit -MoveEffect_DoubleEdge: @ 81D891E - setbyte gUnknown_02024D1F + 0x2, 230 - jump BattleScript_1D6F14 +BattleScript_EffectDoubleEdge: @ 81D891E + setmoveeffect EFFECT_RECOIL_33_PARALYSIS | AFFECTS_USER | CERTAIN + goto BattleScript_EffectHit -MoveEffect_TeeterDance: @ 81D8929 +BattleScript_EffectTeeterDance: @ 81D8929 attackcanceler attackstring ppreduce setbyte gBankTarget, 0 -BattleScript_1D8932: @ 81D8932 - atk25 - setbyte gUnknown_02024D1F + 0x2, 7 - jumpifarrayequal gBankAttacker, gBankTarget, 1, BattleScript_1D8978 - jumpifability TARGET, ABILITY_OWN_TEMPO, BattleScript_1D8996 - jumpifsecondarytstatus TARGET, S_SUBSTITUTE, BattleScript_1D89B2 - jumpifsecondarytstatus TARGET, S_CONFUSED, BattleScript_1D89C0 - accuracycheck BattleScript_1D89CE, 0 - jumpifhalverset TARGET, 32, BattleScript_1D89A4 +BattleScript_TeeterDanceLoop: @ 81D8932 + movevaluescleanup + setmoveeffect EFFECT_CONFUSION + jumpifbyteequal gBankAttacker, gBankTarget, BattleScript_TeeterDanceDoMoveEndIncrement + jumpifability TARGET, ABILITY_OWN_TEMPO, BattleScript_TeeterDanceLoopIncrement + jumpifstatus2 TARGET, STATUS2_SUBSTITUTE, BattleScript_TeeterDanceSubstitutePrevents + jumpifstatus2 TARGET, STATUS2_CONFUSION, BattleScript_TeeterDanceAlreadyConfused + accuracycheck BattleScript_TeeterDanceMissed, ACC_CURR_MOVE + jumpifsideaffecting TARGET, SIDE_STATUS_SAFEGUARD, BattleScript_TeeterDanceSafeguardProtected attackanimation waitanimation - seteffecttarget + seteffectprimary resultmessage waitmessage 64 -BattleScript_1D8978: @ 81D8978 - setbyte gSharedMem + 0x1600C, 0 - atk49 2, 16 +BattleScript_TeeterDanceDoMoveEndIncrement: @ 81D8978 + setbyte sMOVEEND_STATE, 0 + moveend 2, 16 addbyte gBankTarget, 1 - jumpifarraynotequal gBankTarget, gNoOfAllBanks, 1, BattleScript_1D8932 + jumpifbytenotequal gBankTarget, gNoOfAllBanks, BattleScript_TeeterDanceLoop end -BattleScript_1D8996: @ 81D8996 +BattleScript_TeeterDanceLoopIncrement: @ 81D8996 pause 32 printstring BATTLE_TEXT_PreventedConfusion waitmessage 64 - jump BattleScript_1D8978 + goto BattleScript_TeeterDanceDoMoveEndIncrement -BattleScript_1D89A4: @ 81D89A4 +BattleScript_TeeterDanceSafeguardProtected: @ 81D89A4 pause 32 printstring BATTLE_TEXT_SafeguardActive waitmessage 64 - jump BattleScript_1D8978 + goto BattleScript_TeeterDanceDoMoveEndIncrement -BattleScript_1D89B2: @ 81D89B2 +BattleScript_TeeterDanceSubstitutePrevents: @ 81D89B2 pause 32 printstring BATTLE_TEXT_Failed waitmessage 64 - jump BattleScript_1D8978 + goto BattleScript_TeeterDanceDoMoveEndIncrement -BattleScript_1D89C0: @ 81D89C0 +BattleScript_TeeterDanceAlreadyConfused: @ 81D89C0 pause 32 printstring BATTLE_TEXT_AlreadyConfused waitmessage 64 - jump BattleScript_1D8978 + goto BattleScript_TeeterDanceDoMoveEndIncrement -BattleScript_1D89CE: @ 81D89CE +BattleScript_TeeterDanceMissed: @ 81D89CE resultmessage waitmessage 64 - jump BattleScript_1D8978 + goto BattleScript_TeeterDanceDoMoveEndIncrement -MoveEffect_MudSport: @ 81D89D7 -MoveEffect_WaterSport: @ 81D89D7 +BattleScript_EffectMudSport: @ 81D89D7 +BattleScript_EffectWaterSport: @ 81D89D7 attackcanceler attackstring ppreduce settypebasedhalvers BattleScript_ButItFailed attackanimation waitanimation - printfromtable BattleTextList_4015D4 + printfromtable gSportsUsedStringIds waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_PoisonFang: @ 81D89EE - setbyte gUnknown_02024D1F + 0x2, 6 - jump BattleScript_1D6F14 +BattleScript_EffectPoisonFang: @ 81D89EE + setmoveeffect EFFECT_TOXIC + goto BattleScript_EffectHit -MoveEffect_WeatherBall: @ 81D89F9 - seteffectbyweather - jump BattleScript_1D6F14 +BattleScript_EffectWeatherBall: @ 81D89F9 + setweatherballtype + goto BattleScript_EffectHit -MoveEffect_Overheat: @ 81D89FF - setbyte gUnknown_02024D1F + 0x2, 251 - jump BattleScript_1D6F14 +BattleScript_EffectOverheat: @ 81D89FF + setmoveeffect EFFECT_SP_ATK_TWO_DOWN | AFFECTS_USER | CERTAIN + goto BattleScript_EffectHit -MoveEffect_Tickle: @ 81D8A0A +BattleScript_EffectTickle: @ 81D8A0A attackcanceler attackstring ppreduce - jumpifstat TARGET, 2, 1, 0, BattleScript_1D8A1F - jumpifstat TARGET, 0, 2, 0, BattleScript_1D8A7D + jumpifstat TARGET, GREATER_THAN, ATTACK, 0, BattleScript_TickleDoMoveAnim + jumpifstat TARGET, EQUAL, DEFENSE, 0, BattleScript_CantLowerMultipleStats -BattleScript_1D8A1F: @ 81D8A1F - accuracycheck BattleScript_ButItFailed, 0 +BattleScript_TickleDoMoveAnim: @ 81D8A1F + accuracycheck BattleScript_ButItFailed, ACC_CURR_MOVE attackanimation waitanimation - setbyte gSharedMem + 0x160DC, 0 + setbyte sFIELD_1B, 0 playstatchangeanimation TARGET, 6, 5 playstatchangeanimation TARGET, 2, 1 - setbyte gSharedMem + 0x1601E, 145 - statbuffchange 1, BattleScript_1D8A55 - jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D8A55 - printfromtable BattleTextList_40157C + setstatchanger ATTACK, 1, TRUE + statbuffchange 1, BattleScript_TickleTryLowerDef + jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_TickleTryLowerDef + printfromtable gStatDownStringIds waitmessage 64 -BattleScript_1D8A55: @ 81D8A55 +BattleScript_TickleTryLowerDef: @ 81D8A55 playstatchangeanimation TARGET, 4, 1 - setbyte gSharedMem + 0x1601E, 146 - statbuffchange 1, BattleScript_1D8A78 - jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D8A78 - printfromtable BattleTextList_40157C + setstatchanger DEFENSE, 1, TRUE + statbuffchange 1, BattleScript_TickleEnd + jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_TickleEnd + printfromtable gStatDownStringIds waitmessage 64 -BattleScript_1D8A78: @ 81D8A78 - jump BattleScript_EndTurn +BattleScript_TickleEnd: @ 81D8A78 + goto BattleScript_MoveEnd -BattleScript_1D8A7D: @ 81D8A7D +BattleScript_CantLowerMultipleStats: @ 81D8A7D pause 32 - orbyte gBattleMoveFlags, 32 + orbyte gBattleMoveFlags, MOVESTATUS_FAILED printstring BATTLE_TEXT_StatNoLower waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_CosmicPower: @ 81D8A91 +BattleScript_EffectCosmicPower: @ 81D8A91 attackcanceler attackstring ppreduce - jumpifstat USER, 3, 2, 12, BattleScript_1D8AA6 - jumpifstat USER, 0, 5, 12, BattleScript_1D8BCB + jumpifstat USER, LESS_THAN, DEFENSE, 12, BattleScript_CosmicPowerDoMoveAnim + jumpifstat USER, EQUAL, SP_DEFENSE, 12, BattleScript_CantRaiseMultipleStats -BattleScript_1D8AA6: @ 81D8AA6 +BattleScript_CosmicPowerDoMoveAnim: @ 81D8AA6 attackanimation waitanimation - setbyte gSharedMem + 0x160DC, 0 + setbyte sFIELD_1B, 0 playstatchangeanimation USER, 36, 0 - setbyte gSharedMem + 0x1601E, 18 - statbuffchange 65, BattleScript_1D8AD1 - jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D8AD1 - printfromtable BattleTextList_401570 + setstatchanger DEFENSE, 1, FALSE + statbuffchange AFFECTS_USER | 0x1, BattleScript_CosmicPowerTrySpDef + jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_CosmicPowerTrySpDef + printfromtable gStatUpStringIds waitmessage 64 -BattleScript_1D8AD1: @ 81D8AD1 - setbyte gSharedMem + 0x1601E, 21 - statbuffchange 65, BattleScript_1D8AF0 - jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D8AF0 - printfromtable BattleTextList_401570 +BattleScript_CosmicPowerTrySpDef: @ 81D8AD1 + setstatchanger SP_DEFENSE, 1, FALSE + statbuffchange AFFECTS_USER | 0x1, BattleScript_CosmicPowerEnd + jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_CosmicPowerEnd + printfromtable gStatUpStringIds waitmessage 64 -BattleScript_1D8AF0: @ 81D8AF0 - jump BattleScript_EndTurn +BattleScript_CosmicPowerEnd: @ 81D8AF0 + goto BattleScript_MoveEnd -MoveEffect_SkyUppercut: @ 81D8AF5 - orword gHitMarker, 0x10000 - jump BattleScript_1D6F14 +BattleScript_EffectSkyUppercut: @ 81D8AF5 + orword gHitMarker, HITMARKER_IGNORE_ON_AIR + goto BattleScript_EffectHit -MoveEffect_BulkUp: @ 81D8B03 +BattleScript_EffectBulkUp: @ 81D8B03 attackcanceler attackstring ppreduce - jumpifstat USER, 3, 1, 12, BattleScript_1D8B18 - jumpifstat USER, 0, 2, 12, BattleScript_1D8BCB + jumpifstat USER, LESS_THAN, ATTACK, 12, BattleScript_BulkUpDoMoveAnim + jumpifstat USER, EQUAL, DEFENSE, 12, BattleScript_CantRaiseMultipleStats -BattleScript_1D8B18: @ 81D8B18 +BattleScript_BulkUpDoMoveAnim: @ 81D8B18 attackanimation waitanimation - setbyte gSharedMem + 0x160DC, 0 + setbyte sFIELD_1B, 0 playstatchangeanimation USER, 6, 0 - setbyte gSharedMem + 0x1601E, 17 - statbuffchange 65, BattleScript_1D8B43 - jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D8B43 - printfromtable BattleTextList_401570 + setstatchanger ATTACK, 1, FALSE + statbuffchange AFFECTS_USER | 0x1, BattleScript_BulkUpTryDef + jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_BulkUpTryDef + printfromtable gStatUpStringIds waitmessage 64 -BattleScript_1D8B43: @ 81D8B43 - setbyte gSharedMem + 0x1601E, 18 - statbuffchange 65, BattleScript_1D8B62 - jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D8B62 - printfromtable BattleTextList_401570 +BattleScript_BulkUpTryDef: @ 81D8B43 + setstatchanger DEFENSE, 1, FALSE + statbuffchange AFFECTS_USER | 0x1, BattleScript_BulkUpEnd + jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_BulkUpEnd + printfromtable gStatUpStringIds waitmessage 64 -BattleScript_1D8B62: @ 81D8B62 - jump BattleScript_EndTurn +BattleScript_BulkUpEnd: @ 81D8B62 + goto BattleScript_MoveEnd -MoveEffect_CalmMind: @ 81D8B67 +BattleScript_EffectCalmMind: @ 81D8B67 attackcanceler attackstring ppreduce - jumpifstat USER, 3, 4, 12, BattleScript_1D8B7C - jumpifstat USER, 0, 5, 12, BattleScript_1D8BCB + jumpifstat USER, LESS_THAN, SP_ATTACK, 12, BattleScript_CalmMindDoMoveAnim + jumpifstat USER, EQUAL, SP_DEFENSE, 12, BattleScript_CantRaiseMultipleStats -BattleScript_1D8B7C: @ 81D8B7C +BattleScript_CalmMindDoMoveAnim: @ 81D8B7C attackanimation waitanimation - setbyte gSharedMem + 0x160DC, 0 + setbyte sFIELD_1B, 0 playstatchangeanimation USER, 48, 0 - setbyte gSharedMem + 0x1601E, 20 - statbuffchange 65, BattleScript_1D8BA7 - jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D8BA7 - printfromtable BattleTextList_401570 + setstatchanger SP_ATTACK, 1, FALSE + statbuffchange AFFECTS_USER | 0x1, BattleScript_CalmMindTrySpDef + jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_CalmMindTrySpDef + printfromtable gStatUpStringIds waitmessage 64 -BattleScript_1D8BA7: @ 81D8BA7 - setbyte gSharedMem + 0x1601E, 21 - statbuffchange 65, BattleScript_1D8BC6 - jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D8BC6 - printfromtable BattleTextList_401570 +BattleScript_CalmMindTrySpDef: @ 81D8BA7 + setstatchanger SP_DEFENSE, 1, FALSE + statbuffchange AFFECTS_USER | 0x1, BattleScript_CalmMindEnd + jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_CalmMindEnd + printfromtable gStatUpStringIds waitmessage 64 -BattleScript_1D8BC6: @ 81D8BC6 - jump BattleScript_EndTurn +BattleScript_CalmMindEnd: @ 81D8BC6 + goto BattleScript_MoveEnd -BattleScript_1D8BCB: @ 81D8BCB +BattleScript_CantRaiseMultipleStats: @ 81D8BCB pause 32 - orbyte gBattleMoveFlags, 32 + orbyte gBattleMoveFlags, MOVESTATUS_FAILED printstring BATTLE_TEXT_StatNoHigher waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -MoveEffect_DragonDance: @ 81D8BDF +BattleScript_EffectDragonDance: @ 81D8BDF attackcanceler attackstring ppreduce - jumpifstat USER, 3, 1, 12, BattleScript_1D8BF4 - jumpifstat USER, 0, 3, 12, BattleScript_1D8BCB + jumpifstat USER, LESS_THAN, ATTACK, 12, BattleScript_DragonDanceDoMoveAnim + jumpifstat USER, EQUAL, SPEED, 12, BattleScript_CantRaiseMultipleStats -BattleScript_1D8BF4: @ 81D8BF4 +BattleScript_DragonDanceDoMoveAnim: @ 81D8BF4 attackanimation waitanimation - setbyte gSharedMem + 0x160DC, 0 + setbyte sFIELD_1B, 0 playstatchangeanimation USER, 10, 0 - setbyte gSharedMem + 0x1601E, 17 - statbuffchange 65, BattleScript_1D8C1F - jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D8C1F - printfromtable BattleTextList_401570 + setstatchanger ATTACK, 1, FALSE + statbuffchange AFFECTS_USER | 0x1, BattleScript_DragonDanceTrySpeed + jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_DragonDanceTrySpeed + printfromtable gStatUpStringIds waitmessage 64 -BattleScript_1D8C1F: @ 81D8C1F - setbyte gSharedMem + 0x1601E, 19 - statbuffchange 65, BattleScript_1D8C3E - jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D8C3E - printfromtable BattleTextList_401570 +BattleScript_DragonDanceTrySpeed: @ 81D8C1F + setstatchanger SPEED, 1, FALSE + statbuffchange AFFECTS_USER | 0x1, BattleScript_DragonDanceEnd + jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_DragonDanceEnd + printfromtable gStatUpStringIds waitmessage 64 -BattleScript_1D8C3E: @ 81D8C3E - jump BattleScript_EndTurn +BattleScript_DragonDanceEnd: @ 81D8C3E + goto BattleScript_MoveEnd -MoveEffect_Camouflage: @ 81D8C43 +BattleScript_EffectCamouflage: @ 81D8C43 attackcanceler attackstring ppreduce @@ -2930,142 +2927,142 @@ MoveEffect_Camouflage: @ 81D8C43 waitanimation printstring BATTLE_TEXT_TypeTransform waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -gUnknown_081D8C58:: @ 81D8C58 - atk56 1 +BattleScript_FaintAttacker:: @ 81D8C58 + playfaintcry USER pause 64 - atk1a 1 - atk1b 1 + dofaintanimation USER + cleareffectsonfaint USER printstring BATTLE_TEXT_AttackingFainted return -gUnknown_081D8C65:: @ 81D8C65 - atk56 0 +BattleScript_FaintTarget:: @ 81D8C65 + playfaintcry TARGET pause 64 - atk1a 0 - atk1b 0 + dofaintanimation TARGET + cleareffectsonfaint TARGET printstring BATTLE_TEXT_DefendingFainted return -gUnknown_081D8C72:: @ 81D8C72 - setbyte gSharedMem + 0x1600F, 0 - atk23 0 +BattleScript_GiveExp:: @ 81D8C72 + setbyte sGIVEEXP_STATE, 0 + getexp TARGET end2 -gUnknown_081D8C7B:: @ 81D8C7B +BattleScript_HandleFaintedMon:: @ 81D8C7B atk24 BattleScript_1D8D87 - jumpifbyte 1, gBattleOutcome, 0, BattleScript_1D8D86 - jumpifhalfword 4, gBattleTypeFlags, 8, BattleScript_1D8CC2 - jumpifword 5, gHitMarker, 0x400000, BattleScript_1D8CC2 + jumpifbyte NOT_EQUAL, gBattleOutcome, 0, BattleScript_FaintedMonEnd + jumpifbattletype BATTLE_TYPE_TRAINER, BattleScript_FaintedMonTryChooseAnother + jumpifword NO_COMMON_BITS, gHitMarker, HITMARKER_x400000, BattleScript_FaintedMonTryChooseAnother printstring BATTLE_TEXT_UseNext setbyte gBattleCommunication, 0 - atk67 - jumpifbyte 0, gUnknown_02024D1F, 0, BattleScript_1D8CC2 - atk72 BattleScript_1D8D86 + yesnobox + jumpifbyte EQUAL, gUnknown_02024D1F, 0, BattleScript_FaintedMonTryChooseAnother + jumpifplayerran BattleScript_FaintedMonEnd printstring BATTLE_TEXT_CantEscape -BattleScript_1D8CC2: @ 81D8CC2 - openpartyscreen 3, BattleScript_1D8D86 - atk51 3, 2 - jumpifhalfword 5, gBattleTypeFlags, 8, BattleScript_1D8D66 - jumpifhalfword 4, gBattleTypeFlags, 2, BattleScript_1D8D66 - jumpifhalfword 4, gBattleTypeFlags, 256, BattleScript_1D8D66 - jumpifhalfword 4, gBattleTypeFlags, 1, BattleScript_1D8D66 - jumpifword 4, gHitMarker, 0x400000, BattleScript_1D8D66 - jumpifbyte 0, gSharedMem + 0x16084, 1, BattleScript_1D8D66 - jumpifcannotswitch USER, BattleScript_1D8D66 +BattleScript_FaintedMonTryChooseAnother: @ 81D8CC2 + openpartyscreen 3, BattleScript_FaintedMonEnd + switchhandleorder 3, 2 + jumpifnotbattletype BATTLE_TYPE_TRAINER, BattleScript_FaintedMonChooseAnother + jumpifbattletype BATTLE_TYPE_LINK, BattleScript_FaintedMonChooseAnother + jumpifbattletype BATTLE_TYPE_BATTLE_TOWER, BattleScript_FaintedMonChooseAnother + jumpifbattletype BATTLE_TYPE_DOUBLE, BattleScript_FaintedMonChooseAnother + jumpifword COMMON_BITS, gHitMarker, HITMARKER_x400000, BattleScript_FaintedMonChooseAnother + jumpifbyte EQUAL, sBATTLE_STYLE, 1, BattleScript_FaintedMonChooseAnother + jumpifcantswitch USER, BattleScript_FaintedMonChooseAnother printstring BATTLE_TEXT_WillSwitch setbyte gBattleCommunication, 0 - atk67 - jumpifbyte 0, gUnknown_02024D1F, 1, BattleScript_1D8D66 - atk6e - openpartyscreen 129, BattleScript_1D8D66 - atk51 USER, 2 - jumpifbyte 0, gBattleCommunication, 6, BattleScript_1D8D66 - atk6b - atk76 USER, 5 - atk74 1 + yesnobox + jumpifbyte EQUAL, gUnknown_02024D1F, 1, BattleScript_FaintedMonChooseAnother + setatktoplayer0 + openpartyscreen 129, BattleScript_FaintedMonChooseAnother + switchhandleorder USER, 2 + jumpifbyte EQUAL, gBattleCommunication, 6, BattleScript_FaintedMonChooseAnother + atknameinbuff1 + resetintrimidatetracebits USER + hpthresholds2 USER printstring 2 - atke2 USER - waitstateatk - atk4b - waitstateatk - atk61 1 - switch1 USER - switch2 USER - atk73 USER + switchoutabilities USER + waitstate + returnatktoball + waitstate + drawpartystatussummary 1 + getswitchedmondata USER + switchindataupdate USER + hpthresholds USER printstring 3 atk62 1 - switch3 USER, 0 - waitstateatk - atk52 USER - atk6d - -BattleScript_1D8D66: @ 81D8D66 - atk61 3 - switch1 3 - switch2 3 - atk73 3 + switchinanim USER, 0 + waitstate + switchineffects USER + resetsentmonsvalue + +BattleScript_FaintedMonChooseAnother: @ 81D8D66 + drawpartystatussummary 3 + getswitchedmondata 3 + switchindataupdate 3 + hpthresholds 3 printstring 3 atk62 3 - switch3 3, 0 - waitstateatk - atk52 3 - jumpifhalfword 4, gBattleTypeFlags, 1, BattleScript_1D8D86 - atk68 + switchinanim 3, 0 + waitstate + switchineffects 3 + jumpifbattletype BATTLE_TYPE_DOUBLE, BattleScript_FaintedMonEnd + cancelallactions -BattleScript_1D8D86: @ 81D8D86 +BattleScript_FaintedMonEnd: @ 81D8D86 end2 BattleScript_1D8D87: @ 81D8D87 openpartyscreen 5, BattleScript_1D8D8D BattleScript_1D8D8D: @ 81D8D8D - atk51 3, 0 + switchhandleorder 3, 0 openpartyscreen 6, BattleScript_1D8DBD - atk51 3, 0 + switchhandleorder 3, 0 BattleScript_1D8D99: @ 81D8D99 - atk51 3, 2 - atk61 3 - switch1 3 - switch2 3 - atk73 3 + switchhandleorder 3, 2 + drawpartystatussummary 3 + getswitchedmondata 3 + switchindataupdate 3 + hpthresholds 3 printstring 3 atk62 3 - switch3 3, 0 - waitstateatk - atk52 5 - jumpifarraynotequal gBank1, gNoOfAllBanks, 1, BattleScript_1D8D99 + switchinanim 3, 0 + waitstate + switchineffects 5 + jumpifbytenotequal gBank1, gNoOfAllBanks, BattleScript_1D8D99 BattleScript_1D8DBD: @ 81D8DBD end2 -gUnknown_081D8DBE:: @ 81D8DBE +BattleScript_LocalTrainerBattleWon:: @ 81D8DBE printstring BATTLE_TEXT_PlayerDefeatedTrainer2 - atk53 1 - waitstateatk + trainerslidein 1 + waitstate printstring BATTLE_TEXT_UnknownString - atk5d + getmoneyreward printstring BATTLE_TEXT_WinningPrize waitmessage 64 -gUnknown_081D8DCE:: @ 81D8DCE - givemoney - pickupitemcalculation +BattleScript_PayDayMoneyAndPickUpItems:: @ 81D8DCE + givepaydaymoney + pickup end2 -gUnknown_081D8DD1:: @ 81D8DD1 - jumpifhalfword 4, gBattleTypeFlags, 256, BattleScript_1D8E01 - jumpifhalfword 4, gBattleTypeFlags, 2048, BattleScript_1D8E01 - jumpifhalfword 0, gTrainerBattleOpponent, 1024, BattleScript_1D8E01 +BattleScript_LocalBattleLost:: @ 81D8DD1 + jumpifbattletype BATTLE_TYPE_BATTLE_TOWER, BattleScript_LocalBattleLostEnd + jumpifbattletype BATTLE_TYPE_EREADER_TRAINER, BattleScript_LocalBattleLostEnd + jumpifhalfword EQUAL, gTrainerBattleOpponent, 1024, BattleScript_LocalBattleLostEnd printstring BATTLE_TEXT_OutOfUsablePoke waitmessage 64 printstring BATTLE_TEXT_WhitedOut waitmessage 64 -BattleScript_1D8E01: @ 81D8E01 +BattleScript_LocalBattleLostEnd: @ 81D8E01 end2 gUnknown_081D8E02:: @ 81D8E02 @@ -3077,116 +3074,116 @@ gUnknown_081D8E02:: @ 81D8E02 gUnknown_081D8E0D:: @ 81D8E0D printstring BATTLE_TEXT_PlayerDefeatedTrainer2 - atk53 1 - waitstateatk + trainerslidein 1 + waitstate end2 -gUnknown_081D8E14:: @ 81D8E14 - playanimation USER, B_ANIM_SMOKEBALL_ESCAPE, 0x0 +BattleScript_SmokeBallEscape:: @ 81D8E14 + playanimation USER, B_ANIM_SMOKEBALL_ESCAPE, NULL printstring BATTLE_TEXT_FledUsingItem waitmessage 64 end2 -gUnknown_081D8E22:: @ 81D8E22 +BattleScript_RanAwayUsingMonAbility:: @ 81D8E22 printstring BATTLE_TEXT_FledUsingOther waitmessage 64 end2 -gUnknown_081D8E29:: @ 81D8E29 +BattleScript_GotAwaySafely:: @ 81D8E29 printstring BATTLE_TEXT_GotAwaySafely waitmessage 64 end2 -gUnknown_081D8E30:: @ 81D8E30 +BattleScript_WildMonFled:: @ 81D8E30 printstring BATTLE_TEXT_FledWild waitmessage 64 end2 -gUnknown_081D8E37:: @ 81D8E37 +BattleScript_PrintCantRunFromTrainer:: @ 81D8E37 printstring BATTLE_TEXT_NoRunning end2 -gUnknown_081D8E3B:: @ 81D8E3B - printfromtable BattleTextList_401512 +BattleScript_PrintFailedToRunString:: @ 81D8E3B + printfromtable gNoEscapeStringIds waitmessage 64 end2 -gUnknown_081D8E44:: @ 81D8E44 - printfromtable2 BattleTextList_401512 - atk44 +BattleScript_PrintCantEscapeFromBattle:: @ 81D8E44 + printselectionstringfromtable gNoEscapeStringIds + endselectionscript -gUnknown_081D8E4A:: @ 81D8E4A - printstring2 BATTLE_TEXT_BoxFull - atk44 +BattleScript_PrintFullBox:: @ 81D8E4A + printselectionstring BATTLE_TEXT_BoxFull + endselectionscript -gUnknown_081D8E4E:: @ 81D8E4E - atk74 1 +BattleScript_ActionSwitch:: @ 81D8E4E + hpthresholds2 USER printstring 2 - setbyte gSharedMem + 0x1601F, 2 - jumpifbyte 4, gBattleTypeFlags, 1, BattleScript_1D8E6B - atk26 1 - jump BattleScript_1D8E6D + setbyte sDMG_MULTIPLIER, 2 + jumpifbyte COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_DOUBLE, BattleScript_PursuitSwitchDmgSetMultihit + setmultihit 1 + goto BattleScript_PursuitSwitchDmgLoop -BattleScript_1D8E6B: @ 81D8E6B - atk26 2 +BattleScript_PursuitSwitchDmgSetMultihit: @ 81D8E6B + setmultihit 2 -BattleScript_1D8E6D: @ 81D8E6D - atkba BattleScript_1D8E7A +BattleScript_PursuitSwitchDmgLoop: @ 81D8E6D + jumpifnopursuitswitchdmg BattleScript_DoSwitchOut atk5f - atkab - callatk BattleScript_1D8EAD + trysetdestinybondtohappen + call BattleScript_PursuitDmgOnSwitchOut atk5f -BattleScript_1D8E7A: @ 81D8E7A - atk27 BattleScript_1D8E6D - atke2 USER - waitstateatk - atk4b - waitstateatk - atk61 1 - atk51 USER, 1 - switch1 USER - switch2 USER - atk73 USER +BattleScript_DoSwitchOut: @ 81D8E7A + decrementmultihit BattleScript_PursuitSwitchDmgLoop + switchoutabilities USER + waitstate + returnatktoball + waitstate + drawpartystatussummary 1 + switchhandleorder USER, 1 + getswitchedmondata USER + switchindataupdate USER + hpthresholds USER printstring 3 atk62 1 - switch3 USER, 0 - waitstateatk - atk52 USER - setbyte gSharedMem + 0x1600C, 4 - atk49 1, 0 - setbyte gSharedMem + 0x1600C, 15 - atk49 1, 0 + switchinanim USER, 0 + waitstate + switchineffects USER + setbyte sMOVEEND_STATE, 4 + moveend 1, 0 + setbyte sMOVEEND_STATE, 15 + moveend 1, 0 end2 -BattleScript_1D8EAD: @ 81D8EAD +BattleScript_PursuitDmgOnSwitchOut: @ 81D8EAD pause 32 attackstring ppreduce critcalc - atk5 - atk6 - atk7 + damagecalc + typecalc + adjustnormaldamage attackanimation waitanimation - missmessage - atk5c TARGET - waitstateatk - graphicalhpupdate TARGET + effectivenesssound + hitanimation TARGET + waitstate + healthbarupdate TARGET datahpupdate TARGET critmessage waitmessage 64 resultmessage waitmessage 64 - faintpokemon TARGET, 0, 0x0 - setbyte gSharedMem + 0x1600C, 3 - atk49 2, 6 - atk76 TARGET, 4 - jumpifbyte 0, gBattleCommunication, 0, BattleScript_1D8EEE - setbyte gSharedMem + 0x1600F, 0 - atk23 0 + tryfaintmon TARGET, FALSE, NULL + setbyte sMOVEEND_STATE, 3 + moveend 2, 6 + various TARGET, 4 + jumpifbyte EQUAL, gBattleCommunication, 0, BattleScript_PursuitDmgOnSwitchOutRet + setbyte sGIVEEXP_STATE, 0 + getexp TARGET -BattleScript_1D8EEE: @ 81D8EEE +BattleScript_PursuitDmgOnSwitchOutRet: @ 81D8EEE return BattleScript_Pausex20:: @ 81D8EEF @@ -3194,197 +3191,197 @@ BattleScript_Pausex20:: @ 81D8EEF return BattleScript_LevelUp:: @ 81D8EF3 - atk55 0xe10016f - attackcanceler - setbyte gSharedMem + 0x1609C, 0 - atk6c - checkiflearnmoveinbattle BattleScript_1D8F4F, BattleScript_1D8F61, 1 - jump BattleScript_1D8F19 - -BattleScript_1D8F0F: @ 81D8F0F - checkiflearnmoveinbattle BattleScript_1D8F4F, BattleScript_1D8F61, 0 - -BattleScript_1D8F19: @ 81D8F19 - atk71 + fanfare BGM_FANFA1 + printstring BATTLE_TEXT_GrewLevel + setbyte sLVLBOX_STATE, 0 + drawlvlupbox + handlelearnnewmove BattleScript_LearnedNewMove, BattleScript_LearnMoveReturn, 1 + goto BattleScript_AskToLearnMove + +BattleScript_TryLearnMoveLoop: @ 81D8F0F + handlelearnnewmove BattleScript_LearnedNewMove, BattleScript_LearnMoveReturn, 0 + +BattleScript_AskToLearnMove: @ 81D8F19 + buffermovetolearn printstring BATTLE_TEXT_TryingToLearnMove printstring BATTLE_TEXT_CantLearnMore printstring BATTLE_TEXT_DeleteMove - waitstateatk - setbyte gSharedMem + 0x1601A, 0 - atk5a BattleScript_1D8F46 + waitstate + setbyte sLEARNMOVE_STATE, 0 + yesnoboxlearnmove BattleScript_ForgotAndLearnedNewMove printstring BATTLE_TEXT_StopLearning - waitstateatk - setbyte gSharedMem + 0x1601A, 0 - atk5b BattleScript_1D8F19 + waitstate + setbyte sLEARNMOVE_STATE, 0 + yesnoboxstoplearningmove BattleScript_AskToLearnMove printstring BATTLE_TEXT_DidNotLearn - jump BattleScript_1D8F0F + goto BattleScript_TryLearnMoveLoop -BattleScript_1D8F46: @ 81D8F46 +BattleScript_ForgotAndLearnedNewMove: @ 81D8F46 printstring BATTLE_TEXT_MoveForget123 printstring BATTLE_TEXT_DeletedMove printstring BATTLE_TEXT_MoveForgetAnd -BattleScript_1D8F4F: @ 81D8F4F - atk71 - atk55 0xf10016f - attackcanceler +BattleScript_LearnedNewMove: @ 81D8F4F + buffermovetolearn + fanfare BGM_FANFA1 + printstring BATTLE_TEXT_LearnedMove waitmessage 64 - atk76 USER, 6 - jump BattleScript_1D8F0F + updatechoicemoveonlvlup USER + goto BattleScript_TryLearnMoveLoop -BattleScript_1D8F61: @ 81D8F61 +BattleScript_LearnMoveReturn: @ 81D8F61 return -gUnknown_081D8F62:: @ 81D8F62 - printfromtable BattleTextList_401534 +BattleScript_RainContinuesOrEnds:: @ 81D8F62 + printfromtable gRainContinuesStringIds waitmessage 64 - jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D8F7C - playanimation USER, B_ANIM_RAIN_CONTINUES, 0x0 + jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_RainContinuesOrEndsEnd + playanimation USER, B_ANIM_RAIN_CONTINUES, NULL -BattleScript_1D8F7C: @ 81D8F7C +BattleScript_RainContinuesOrEndsEnd: @ 81D8F7C end2 -gUnknown_081D8F7D:: @ 81D8F7D - printfromtable BattleTextList_401528 +BattleScript_DamagingWeatherContinues:: @ 81D8F7D + printfromtable gSandStormHailContinuesStringIds waitmessage 64 - atk46 1, gSharedMem + 0x160A4, 0x0 + playanimation2 USER, sANIM_ARG1, NULL setbyte gBattleCommunication, 0 -BattleScript_1D8F95: @ 81D8F95 - atk32 gBankAttacker, gTurnOrder, gBattleCommunication, 1 +BattleScript_DamagingWeatherLoop: @ 81D8F95 + copyarraywithindex gBankAttacker, gTurnOrder, gBattleCommunication, 1 weatherdamage - jumpifword 0, gBattleMoveDamage, 0x0, BattleScript_1D8FD6 - printfromtable BattleTextList_40152C + jumpifword EQUAL, gBattleMoveDamage, 0x0, BattleScript_DamagingWeatherLoopIncrement + printfromtable gSandStormHailDmgStringIds waitmessage 64 - orword gHitMarker, 0x1100120 - missmessage - atk5c USER - graphicalhpupdate USER + orword gHitMarker, HITMARKER_x20 | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 | HITMARKER_GRUDGE + effectivenesssound + hitanimation USER + healthbarupdate USER datahpupdate USER - faintpokemon USER, 0, 0x0 - atk24 BattleScript_1D8FD6 + tryfaintmon USER, FALSE, NULL + atk24 BattleScript_DamagingWeatherLoopIncrement -BattleScript_1D8FD6: @ 81D8FD6 - jumpifbyte 1, gBattleOutcome, 0, BattleScript_1D8FF5 +BattleScript_DamagingWeatherLoopIncrement: @ 81D8FD6 + jumpifbyte NOT_EQUAL, gBattleOutcome, 0, BattleScript_DamagingWeatherContinuesEnd addbyte gBattleCommunication, 1 - jumpifarraynotequal gBattleCommunication, gNoOfAllBanks, 1, BattleScript_1D8F95 + jumpifbytenotequal gBattleCommunication, gNoOfAllBanks, BattleScript_DamagingWeatherLoop -BattleScript_1D8FF5: @ 81D8FF5 - bicword gHitMarker, 0x1100120 +BattleScript_DamagingWeatherContinuesEnd: @ 81D8FF5 + bicword gHitMarker, HITMARKER_x20 | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 | HITMARKER_GRUDGE end2 -gUnknown_081D8FFF:: @ 81D8FFF - printfromtable BattleTextList_401530 +BattleScript_SandStormHailEnds:: @ 81D8FFF + printfromtable gSandStormHailEndStringIds waitmessage 64 end2 -gUnknown_081D9008:: @ 81D9008 +BattleScript_SunlightContinues:: @ 81D9008 printstring BATTLE_TEXT_SunStrong waitmessage 64 - playanimation USER, B_ANIM_SUN_CONTINUES, 0x0 + playanimation USER, B_ANIM_SUN_CONTINUES, NULL end2 -gUnknown_081D9016:: @ 81D9016 +BattleScript_SunlightFaded:: @ 81D9016 printstring BATTLE_TEXT_SunFaded waitmessage 64 end2 -gUnknown_081D901D:: @ 81D901D - printfromtable BattleTextList_4015EE +BattleScript_OverworldWeatherStarts:: @ 81D901D + printfromtable gWeatherContinuesStringIds waitmessage 64 - atk46 1, gSharedMem + 0x160A4, 0x0 + playanimation2 USER, sANIM_ARG1, NULL end3 -gUnknown_081D9030:: @ 81D9030 +BattleScript_SideStatusWoreOff:: @ 81D9030 printstring BATTLE_TEXT_WoreOff waitmessage 64 end2 -BattleScript_1D9037: @ 81D9037 +BattleScript_SafeguardProtected: @ 81D9037 pause 32 printstring BATTLE_TEXT_SafeguardActive waitmessage 64 end2 -gUnknown_081D9041:: @ 81D9041 +BattleScript_SafeguardEnds:: @ 81D9041 pause 32 printstring BATTLE_TEXT_SafeguardFaded waitmessage 64 end2 BattleScript_LeechSeedTurnDrain:: @ 81D904B - playanimation USER, B_ANIM_LEECH_SEED_DRAIN, gSharedMem + 0x160A4 - orword gHitMarker, 0x100100 - graphicalhpupdate USER + playanimation USER, B_ANIM_LEECH_SEED_DRAIN, sANIM_ARG1 + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 + healthbarupdate USER datahpupdate USER - copyarray gBattleMoveDamage, gHP_dealt, 4 - jumpifability USER, ABILITY_LIQUID_OOZE, BattleScript_1D907D + copyword gBattleMoveDamage, gHP_dealt + jumpifability USER, ABILITY_LIQUID_OOZE, BattleScript_LeechSeedTurnPrintLiquidOoze manipulatedamage 0 - setbyte gUnknown_02024D1F + 0x4, 3 - jump BattleScript_1D9083 + setbyte cMULTISTRING_CHOOSER, 3 + goto BattleScript_LeechSeedTurnPrintAndUpdateHp -BattleScript_1D907D: @ 81D907D - setbyte gUnknown_02024D1F + 0x4, 4 +BattleScript_LeechSeedTurnPrintLiquidOoze: @ 81D907D + setbyte cMULTISTRING_CHOOSER, 4 -BattleScript_1D9083: @ 81D9083 - orword gHitMarker, 0x100100 - graphicalhpupdate TARGET +BattleScript_LeechSeedTurnPrintAndUpdateHp: @ 81D9083 + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 + healthbarupdate TARGET datahpupdate TARGET - printfromtable BattleTextList_40154C + printfromtable gLeechSeedStringIds waitmessage 64 - faintpokemon USER, 0, 0x0 - faintpokemon TARGET, 0, 0x0 + tryfaintmon USER, FALSE, NULL + tryfaintmon TARGET, FALSE, NULL end2 BattleScript_BideStoringEnergy:: @ 81D90A7 printstring BATTLE_TEXT_StoringEnergy waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd BattleScript_BideAttack:: @ 81D90B2 printstring BATTLE_TEXT_UnleashedEnergy waitmessage 64 - accuracycheck BattleScript_1D6F77, 0 - atk6 - bicbyte gBattleMoveFlags, 6 - copyarray gBattleMoveDamage, gSharedMem + 0x16090, 4 - atk69 - setbyte gSharedMem + 0x16002, 1 + accuracycheck BattleScript_MoveMissed, ACC_CURR_MOVE + typecalc + bicbyte gBattleMoveFlags, MOVESTATUS_SUPEREFFECTIVE | MOVESTATUS_NOTVERYEFFECTIVE + copyword gBattleMoveDamage, sBIDE_DMG + adjustsetdamage + setbyte sANIM_TURN, 1 attackanimation waitanimation - missmessage - atk5c TARGET - waitstateatk - graphicalhpupdate TARGET + effectivenesssound + hitanimation TARGET + waitstate + healthbarupdate TARGET datahpupdate TARGET resultmessage waitmessage 64 - faintpokemon TARGET, 0, 0x0 - jump BattleScript_EndTurn + tryfaintmon TARGET, FALSE, NULL + goto BattleScript_MoveEnd BattleScript_BideNoEnergyToAttack:: @ 81D90F1 printstring BATTLE_TEXT_UnleashedEnergy waitmessage 64 - jump BattleScript_ButItFailed + goto BattleScript_ButItFailed -gUnknown_081D90FC:: @ 81D90FC +BattleScript_SuccessForceOut:: @ 81D90FC attackanimation waitanimation - atke2 TARGET - atk58 TARGET - waitstateatk - jumpifhalfword 4, gBattleTypeFlags, 8, BattleScript_1D9116 + switchoutabilities TARGET + returntoball TARGET + waitstate + jumpifbattletype BATTLE_TYPE_TRAINER, BattleScript_TrainerBattleForceOut setbyte gBattleOutcome, 5 - atkf6 + finishaction -BattleScript_1D9116: @ 81D9116 - switch1 TARGET - switch2 TARGET - switch3 TARGET, 0 - waitstateatk +BattleScript_TrainerBattleForceOut: @ 81D9116 + getswitchedmondata TARGET + switchindataupdate TARGET + switchinanim TARGET, 0 + waitstate printstring BATTLE_TEXT_DraggedOut - atk52 TARGET - jump BattleScript_EndTurn + switchineffects TARGET + goto BattleScript_MoveEnd BattleScript_MistProtected:: @ 81D9128 pause 32 @@ -3392,7 +3389,7 @@ BattleScript_MistProtected:: @ 81D9128 waitmessage 64 return -gUnknown_081D9132:: @ 81D9132 +BattleScript_RageIsBuilding:: @ 81D9132 printstring BATTLE_TEXT_RageBuilding waitmessage 64 return @@ -3400,11 +3397,11 @@ gUnknown_081D9132:: @ 81D9132 BattleScript_MoveUsedIsDisabled:: @ 81D9139 printstring BATTLE_TEXT_MoveIsDisabled waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd BattleScript_MoveSelectionDisabledMove:: @ 81D9144 - printstring2 BATTLE_TEXT_MoveIsDisabled - atk44 + printselectionstring BATTLE_TEXT_MoveIsDisabled + endselectionscript BattleScript_DisabledNoMore:: @ 81D9148 printstring BATTLE_TEXT_DisabledNoMore @@ -3416,58 +3413,58 @@ BattleScript_EncoredNoMore:: @ 81D914F waitmessage 64 end2 -gUnknown_081D9156:: @ 81D9156 +BattleScript_DestinyBondTakesLife:: @ 81D9156 printstring BATTLE_TEXT_DestinyBondTaken waitmessage 64 - orword gHitMarker, 0x100100 - graphicalhpupdate USER + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 + healthbarupdate USER datahpupdate USER - faintpokemon USER, 0, 0x0 + tryfaintmon USER, FALSE, NULL return -gUnknown_081D9171:: @ 81D9171 - orword gHitMarker, 0x100100 - graphicalhpupdate USER +BattleScript_SpikesOnAttacker:: @ 81D9171 + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 + healthbarupdate USER datahpupdate USER - callatk BattleScript_1D91FB - faintpokemon USER, 0, 0x0 - faintpokemon USER, 1, BattleScript_1D9192 + call BattleScript_PrintHurtBySpikes + tryfaintmon USER, FALSE, NULL + tryfaintmon USER, TRUE, BattleScript_SpikesOnAttackerFainted return -BattleScript_1D9192: @ 81D9192 - setbyte gSharedMem + 0x1600F, 0 - atk23 1 - jump gUnknown_081D8C7B +BattleScript_SpikesOnAttackerFainted: @ 81D9192 + setbyte sGIVEEXP_STATE, 0 + getexp USER + goto BattleScript_HandleFaintedMon -gUnknown_081D919F:: @ 81D919F - orword gHitMarker, 0x100100 - graphicalhpupdate TARGET +BattleScript_SpikesOnTarget:: @ 81D919F + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 + healthbarupdate TARGET datahpupdate TARGET - callatk BattleScript_1D91FB - faintpokemon TARGET, 0, 0x0 - faintpokemon TARGET, 1, BattleScript_1D91C0 + call BattleScript_PrintHurtBySpikes + tryfaintmon TARGET, FALSE, NULL + tryfaintmon TARGET, TRUE, BattleScript_SpikesOnTargetFainted return -BattleScript_1D91C0: @ 81D91C0 - setbyte gSharedMem + 0x1600F, 0 - atk23 0 - jump gUnknown_081D8C7B +BattleScript_SpikesOnTargetFainted: @ 81D91C0 + setbyte sGIVEEXP_STATE, 0 + getexp TARGET + goto BattleScript_HandleFaintedMon -gUnknown_081D91CD:: @ 81D91CD - orword gHitMarker, 0x100100 - graphicalhpupdate 3 +BattleScript_SpikesOngBank1:: @ 81D91CD + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 + healthbarupdate 3 datahpupdate 3 - callatk BattleScript_1D91FB - faintpokemon 3, 0, 0x0 - faintpokemon 3, 1, BattleScript_1D91EE + call BattleScript_PrintHurtBySpikes + tryfaintmon GBANK_1, FALSE, NULL + tryfaintmon GBANK_1, TRUE, BattleScript_SpikesOngBank1Fainted return -BattleScript_1D91EE: @ 81D91EE - setbyte gSharedMem + 0x1600F, 0 - atk23 3 - jump gUnknown_081D8C7B +BattleScript_SpikesOngBank1Fainted: @ 81D91EE + setbyte sGIVEEXP_STATE, 0 + getexp 3 + goto BattleScript_HandleFaintedMon -BattleScript_1D91FB: @ 81D91FB +BattleScript_PrintHurtBySpikes: @ 81D91FB printstring BATTLE_TEXT_SpikesHurt waitmessage 64 return @@ -3475,10 +3472,10 @@ BattleScript_1D91FB: @ 81D91FB BattleScript_PerishSongHits:: @ 81D9202 printstring BATTLE_TEXT_PerishSongFell waitmessage 64 - orword gHitMarker, 0x100100 - graphicalhpupdate USER + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 + healthbarupdate USER datahpupdate USER - faintpokemon USER, 0, 0x0 + tryfaintmon USER, FALSE, NULL end2 BattleScript_PerishSongTimerGoesDown:: @ 81D921D @@ -3487,49 +3484,49 @@ BattleScript_PerishSongTimerGoesDown:: @ 81D921D end2 BattleScript_AllStatsUp:: @ 81D9224 - jumpifstat USER, 3, 1, 12, BattleScript_1D9251 - jumpifstat USER, 3, 2, 12, BattleScript_1D9251 - jumpifstat USER, 3, 3, 12, BattleScript_1D9251 - jumpifstat USER, 3, 4, 12, BattleScript_1D9251 - jumpifstat USER, 0, 5, 12, BattleScript_1D92BF - -BattleScript_1D9251: @ 81D9251 - setbyte gSharedMem + 0x160DC, 0 + jumpifstat USER, LESS_THAN, ATTACK, 12, BattleScript_AllStatsUpAtk + jumpifstat USER, LESS_THAN, DEFENSE, 12, BattleScript_AllStatsUpAtk + jumpifstat USER, LESS_THAN, SPEED, 12, BattleScript_AllStatsUpAtk + jumpifstat USER, LESS_THAN, SP_ATTACK, 12, BattleScript_AllStatsUpAtk + jumpifstat USER, EQUAL, SP_DEFENSE, 12, BattleScript_AllStatsUpRet + +BattleScript_AllStatsUpAtk: @ 81D9251 + setbyte sFIELD_1B, 0 playstatchangeanimation USER, 62, 0 - setbyte gSharedMem + 0x1601E, 17 - statbuffchange 65, BattleScript_1D926F - printfromtable BattleTextList_401570 + setstatchanger ATTACK, 1, FALSE + statbuffchange AFFECTS_USER | 0x1, BattleScript_AllStatsUpDef + printfromtable gStatUpStringIds waitmessage 64 -BattleScript_1D926F: @ 81D926F - setbyte gSharedMem + 0x1601E, 18 - statbuffchange 65, BattleScript_1D9283 - printfromtable BattleTextList_401570 +BattleScript_AllStatsUpDef: @ 81D926F + setstatchanger DEFENSE, 1, FALSE + statbuffchange AFFECTS_USER | 0x1, BattleScript_AllStatsUpSpeed + printfromtable gStatUpStringIds waitmessage 64 -BattleScript_1D9283: @ 81D9283 - setbyte gSharedMem + 0x1601E, 19 - statbuffchange 65, BattleScript_1D9297 - printfromtable BattleTextList_401570 +BattleScript_AllStatsUpSpeed: @ 81D9283 + setstatchanger SPEED, 1, FALSE + statbuffchange AFFECTS_USER | 0x1, BattleScript_AllStatsUpSpAtk + printfromtable gStatUpStringIds waitmessage 64 -BattleScript_1D9297: @ 81D9297 - setbyte gSharedMem + 0x1601E, 20 - statbuffchange 65, BattleScript_1D92AB - printfromtable BattleTextList_401570 +BattleScript_AllStatsUpSpAtk: @ 81D9297 + setstatchanger SP_ATTACK, 1, FALSE + statbuffchange AFFECTS_USER | 0x1, BattleScript_AllStatsUpSpDef + printfromtable gStatUpStringIds waitmessage 64 -BattleScript_1D92AB: @ 81D92AB - setbyte gSharedMem + 0x1601E, 21 - statbuffchange 65, BattleScript_1D92BF - printfromtable BattleTextList_401570 +BattleScript_AllStatsUpSpDef: @ 81D92AB + setstatchanger SP_DEFENSE, 1, FALSE + statbuffchange AFFECTS_USER | 0x1, BattleScript_AllStatsUpRet + printfromtable gStatUpStringIds waitmessage 64 -BattleScript_1D92BF: @ 81D92BF +BattleScript_AllStatsUpRet: @ 81D92BF return BattleScript_RapidSpinAway:: @ 81D92C0 - breakfree + rapidspinfree return BattleScript_WrapFree:: @ 81D92C2 @@ -3547,97 +3544,97 @@ BattleScript_SpikesFree:: @ 81D92D0 waitmessage 64 return -BattleScript_FutureSightHits:: @ 81D92D7 +BattleScript_MonTookFutureAttack:: @ 81D92D7 printstring BATTLE_TEXT_TookAttack waitmessage 64 - jumpifbyte 1, gUnknown_02024D1F + 0x4, 0, BattleScript_1D92F4 - accuracycheck BattleScript_1D934B, 248 - jump BattleScript_1D92FB + jumpifbyte NOT_EQUAL, cMULTISTRING_CHOOSER, 0, BattleScript_CheckDoomDesireMiss + accuracycheck BattleScript_FutureAttackMiss, 248 + goto BattleScript_FutureAttackAnimate -BattleScript_1D92F4: @ 81D92F4 - accuracycheck BattleScript_1D934B, 353 +BattleScript_CheckDoomDesireMiss: @ 81D92F4 + accuracycheck BattleScript_FutureAttackMiss, 353 -BattleScript_1D92FB: @ 81D92FB - atk8 - jumpifbyte 1, gUnknown_02024D1F + 0x4, 0, BattleScript_1D9313 - playanimation USER, B_ANIM_FUTURE_SIGHT_HIT, 0x0 - jump BattleScript_1D931A +BattleScript_FutureAttackAnimate: @ 81D92FB + adjustnormaldamage2 + jumpifbyte NOT_EQUAL, cMULTISTRING_CHOOSER, 0, BattleScript_FutureHitAnimDoomDesire + playanimation USER, B_ANIM_FUTURE_SIGHT_HIT, NULL + goto BattleScript_DoFutureAttackHit -BattleScript_1D9313: @ 81D9313 - playanimation USER, B_ANIM_DOOM_DESIRE_HIT, 0x0 +BattleScript_FutureHitAnimDoomDesire: @ 81D9313 + playanimation USER, B_ANIM_DOOM_DESIRE_HIT, NULL -BattleScript_1D931A: @ 81D931A - missmessage - atk5c TARGET - waitstateatk - graphicalhpupdate TARGET +BattleScript_DoFutureAttackHit: @ 81D931A + effectivenesssound + hitanimation TARGET + waitstate + healthbarupdate TARGET datahpupdate TARGET resultmessage waitmessage 64 - faintpokemon TARGET, 0, 0x0 - atk24 BattleScript_1D9332 + tryfaintmon TARGET, FALSE, NULL + atk24 BattleScript_FutureAttackEnd -BattleScript_1D9332: @ 81D9332 - setbyte gSharedMem + 0x1600C, 0 - atk49 1, 0 - setbyte gSharedMem + 0x1600C, 8 - atk49 2, 14 +BattleScript_FutureAttackEnd: @ 81D9332 + setbyte sMOVEEND_STATE, 0 + moveend 1, 0 + setbyte sMOVEEND_STATE, 8 + moveend 2, 14 setbyte gBattleMoveFlags, 0 end2 -BattleScript_1D934B: @ 81D934B +BattleScript_FutureAttackMiss: @ 81D934B pause 32 setbyte gBattleMoveFlags, 0 - orbyte gBattleMoveFlags, 32 + orbyte gBattleMoveFlags, MOVESTATUS_FAILED resultmessage waitmessage 64 setbyte gBattleMoveFlags, 0 end2 BattleScript_NoMovesLeft:: @ 81D9365 - printstring2 BATTLE_TEXT_NoMovesLeft - atk44 + printselectionstring BATTLE_TEXT_NoMovesLeft + endselectionscript BattleScript_MoveSelectionNoPP:: @ 81D9369 - printstring2 BATTLE_TEXT_NoPP1 - atk44 + printselectionstring BATTLE_TEXT_NoPP1 + endselectionscript BattleScript_NoPPForMove:: @ 81D936D attackstring pause 32 printstring BATTLE_TEXT_NoPP2 waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd BattleScript_MoveSelectionTormented:: @ 81D937C - printstring2 BATTLE_TEXT_TormentNoUse - atk44 + printselectionstring BATTLE_TEXT_TormentNoUse + endselectionscript printstring BATTLE_TEXT_TormentNoUse waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd BattleScript_MoveSelectionTaunted:: @ 81D938B - printstring2 BATTLE_TEXT_TauntNoUse - atk44 + printselectionstring BATTLE_TEXT_TauntNoUse + endselectionscript BattleScript_MoveUsedIsTaunted:: @ 81D938F printstring BATTLE_TEXT_TauntNoUse waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd BattleScript_WishComesTrue:: @ 81D939A - atkd4 1, BattleScript_1D93C1 - playanimation TARGET, B_ANIM_WISH_HEAL, 0x0 + trywish 1, BattleScript_WishButFullHp + playanimation TARGET, B_ANIM_WISH_HEAL, NULL printstring BATTLE_TEXT_WishTrue waitmessage 64 - orword gHitMarker, 0x100 - graphicalhpupdate TARGET + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE + healthbarupdate TARGET datahpupdate TARGET printstring BATTLE_TEXT_RegainedHealth waitmessage 64 end2 -BattleScript_1D93C1: @ 81D93C1 +BattleScript_WishButFullHp: @ 81D93C1 printstring BATTLE_TEXT_WishTrue waitmessage 64 pause 32 @@ -3646,43 +3643,43 @@ BattleScript_1D93C1: @ 81D93C1 end2 BattleScript_IngrainTurnHeal:: @ 81D93D1 - playanimation USER, B_ANIM_INGRAIN_HEAL, 0x0 + playanimation USER, B_ANIM_INGRAIN_HEAL, NULL printstring BATTLE_TEXT_AbsorbNutrients waitmessage 64 - orword gHitMarker, 0x100 - graphicalhpupdate USER + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE + healthbarupdate USER datahpupdate USER end2 -BattleScript_1D93EC: @ 81D93EC +BattleScript_PrintMonIsRooted: @ 81D93EC pause 32 printstring BATTLE_TEXT_AnchoredItself waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd BattleScript_AtkDefDown:: @ 81D93FA - setbyte gSharedMem + 0x160DC, 0 + setbyte sFIELD_1B, 0 playstatchangeanimation USER, 6, 13 playstatchangeanimation USER, 2, 9 - setbyte gSharedMem + 0x1601E, 145 - statbuffchange 193, BattleScript_1D9427 - jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D9427 - printfromtable BattleTextList_40157C + setstatchanger ATTACK, 1, TRUE + statbuffchange AFFECTS_USER | CERTAIN | 0x1, BattleScript_1D9427 + jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_1D9427 + printfromtable gStatDownStringIds waitmessage 64 BattleScript_1D9427: @ 81D9427 playstatchangeanimation USER, 4, 9 - setbyte gSharedMem + 0x1601E, 146 - statbuffchange 193, BattleScript_1D944A - jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D944A - printfromtable BattleTextList_40157C + setstatchanger DEFENSE, 1, TRUE + statbuffchange AFFECTS_USER | CERTAIN | 0x1, BattleScript_1D944A + jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_1D944A + printfromtable gStatDownStringIds waitmessage 64 BattleScript_1D944A: @ 81D944A return BattleScript_KnockedOff:: @ 81D944B - playanimation TARGET, B_ANIM_ITEM_KNOCKOFF, 0x0 + playanimation TARGET, B_ANIM_ITEM_KNOCKOFF, NULL printstring BATTLE_TEXT_KnockedOffItem waitmessage 64 return @@ -3690,13 +3687,13 @@ BattleScript_KnockedOff:: @ 81D944B BattleScript_MoveUsedIsImprisoned:: @ 81D9459 printstring BATTLE_TEXT_SealedNoUse waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd BattleScript_MoveSelectionImprisoned:: @ 81D9464 - printstring2 BATTLE_TEXT_SealedNoUse - atk44 + printselectionstring BATTLE_TEXT_SealedNoUse + endselectionscript -gUnknown_081D9468:: @ 81D9468 +BattleScript_SelectingImprisionedMoveInPalace:: @ 81D9468 printstring BATTLE_TEXT_GrudgeLosePP waitmessage 64 return @@ -3707,18 +3704,18 @@ BattleScript_MagicCoatBounce:: @ 81D946F pause 32 printstring BATTLE_TEXT_MagicCoatBounce waitmessage 64 - orword gHitMarker, 0x800c00 - atk76 USER, 1 + orword gHitMarker, HITMARKER_ATTACKSTRING_PRINTED | HITMARKER_NO_PPDEDUCT | HITMARKER_x800000 + setmagiccoattarget USER return BattleScript_SnatchedMove:: @ 81D9487 attackstring ppreduce - snatchmove - playanimation TARGET, B_ANIM_SNATCH_MOVE, 0x0 + snatchsetbanks + playanimation TARGET, B_ANIM_SNATCH_MOVE, NULL printstring BATTLE_TEXT_SnatchedMove waitmessage 64 - orword gHitMarker, 0x800c00 + orword gHitMarker, HITMARKER_ATTACKSTRING_PRINTED | HITMARKER_NO_PPDEDUCT | HITMARKER_x800000 atk5f return @@ -3733,12 +3730,12 @@ BattleScript_OneHitKOMsg:: @ 81D94A9 return BattleScript_SAtkDown2:: @ 81D94B0 - setbyte gSharedMem + 0x160DC, 0 + setbyte sFIELD_1B, 0 playstatchangeanimation USER, 16, 11 - setbyte gSharedMem + 0x1601E, 164 - statbuffchange 193, BattleScript_1D94D9 - jumpifbyte 0, gUnknown_02024D1F + 0x4, 2, BattleScript_1D94D9 - printfromtable BattleTextList_40157C + setstatchanger SP_ATTACK, 2, TRUE + statbuffchange AFFECTS_USER | CERTAIN | 0x1, BattleScript_1D94D9 + jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_1D94D9 + printfromtable gStatDownStringIds waitmessage 64 BattleScript_1D94D9: @ 81D94D9 @@ -3747,7 +3744,7 @@ BattleScript_1D94D9: @ 81D94D9 BattleScript_FocusPunchSetUp:: @ 81D94DA printstring BATTLE_TEXT_Terminator2 waitmessage 1 - playanimation USER, B_ANIM_FOCUS_PUNCH_SET_UP, 0x0 + playanimation USER, B_ANIM_FOCUS_PUNCH_SET_UP, NULL printstring BATTLE_TEXT_TightenFocus waitmessage 64 end2 @@ -3756,79 +3753,79 @@ BattleScript_MoveUsedIsAsleep:: @ 81D94EE printstring BATTLE_TEXT_FastAsleep waitmessage 64 statusanimation USER - jump BattleScript_EndTurn + goto BattleScript_MoveEnd BattleScript_MoveUsedWokeUp:: @ 81D94FB - bicword gHitMarker, 0x10 - printfromtable BattleTextList_401562 + bicword gHitMarker, HITMARKER_x10 + printfromtable gWokeUpStringIds waitmessage 64 - atk98 1 + updatestatusicon USER return -gUnknown_081D950F:: @ 81D950F +BattleScript_MonWokeUpInUproar:: @ 81D950F printstring BATTLE_TEXT_UproarWoke waitmessage 64 - atk98 1 + updatestatusicon USER end2 BattleScript_PoisonTurnDmg:: @ 81D9518 printstring BATTLE_TEXT_PoisonHurt waitmessage 64 -BattleScript_1D951E: @ 81D951E +BattleScript_DoStatusTurnDmg: @ 81D951E statusanimation USER -BattleScript_1D9520: @ 81D9520 - orword gHitMarker, 0x100100 - graphicalhpupdate USER +BattleScript_DoTurnDmg: @ 81D9520 + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 + healthbarupdate USER datahpupdate USER - faintpokemon USER, 0, 0x0 - atk24 BattleScript_1D9539 + tryfaintmon USER, FALSE, NULL + atk24 BattleScript_DoTurnDmgEnd -BattleScript_1D9539: @ 81D9539 +BattleScript_DoTurnDmgEnd: @ 81D9539 end2 BattleScript_BurnTurnDmg:: @ 81D953A printstring BATTLE_TEXT_BurnHurt waitmessage 64 - jump BattleScript_1D951E + goto BattleScript_DoStatusTurnDmg BattleScript_MoveUsedIsFrozen:: @ 81D9545 printstring BATTLE_TEXT_FrozenSolid waitmessage 64 statusanimation USER - jump BattleScript_EndTurn + goto BattleScript_MoveEnd BattleScript_MoveUsedUnfroze:: @ 81D9552 - printfromtable BattleTextList_4015C4 + printfromtable gGotDefrostedStringIds waitmessage 64 - atk98 1 + updatestatusicon USER return -gUnknown_081D955D:: @ 81D955D +BattleScript_DefrostedViaFireMove:: @ 81D955D printstring BATTLE_TEXT_DefendingDefrosted waitmessage 64 - atk98 0 + updatestatusicon TARGET return BattleScript_MoveUsedIsParalyzed:: @ 81D9566 printstring BATTLE_TEXT_Paralyzed3 waitmessage 64 statusanimation USER - jump BattleScript_EndTurn + goto BattleScript_MoveEnd BattleScript_MoveUsedFlinched:: @ 81D9573 printstring BATTLE_TEXT_Flinched waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -gUnknown_081D957E:: @ 81D957E - printfromtable BattleTextList_40155A +BattleScript_PrintUproarOverTurns:: @ 81D957E + printfromtable gUproarOverTurnStringIds waitmessage 64 end2 BattleScript_ThrashConfuses:: @ 81D9587 - atk66 1, 1, S_CONFUSED + chosenstatus2animation USER, STATUS2_CONFUSION printstring BATTLE_TEXT_FatigueConfuse waitmessage 64 end2 @@ -3836,24 +3833,24 @@ BattleScript_ThrashConfuses:: @ 81D9587 BattleScript_MoveUsedIsConfused:: @ 81D9595 printstring BATTLE_TEXT_Confused waitmessage 64 - atk65 1, 0x7 - jumpifbyte 0, gUnknown_02024D1F + 0x4, 0, BattleScript_1D95D3 + status2animation USER, STATUS2_CONFUSION + jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 0, BattleScript_MoveUsedIsConfusedRet -BattleScript_1D95AC: @ 81D95AC - atk76 USER, 0 - atk8 +BattleScript_DoSelfConfusionDmg: @ 81D95AC + cancelmultiturnmoves USER + adjustnormaldamage2 printstring BATTLE_TEXT_HurtItself waitmessage 64 - missmessage - atk5c USER - waitstateatk - orword gHitMarker, 0x100100 - graphicalhpupdate USER + effectivenesssound + hitanimation USER + waitstate + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 + healthbarupdate USER datahpupdate USER - faintpokemon USER, 0, 0x0 - jump BattleScript_EndTurn + tryfaintmon USER, FALSE, NULL + goto BattleScript_MoveEnd -BattleScript_1D95D3: @ 81D95D3 +BattleScript_MoveUsedIsConfusedRet: @ 81D95D3 return BattleScript_MoveUsedIsConfusedNoMore:: @ 81D95D4 @@ -3861,16 +3858,16 @@ BattleScript_MoveUsedIsConfusedNoMore:: @ 81D95D4 waitmessage 64 return -gUnknown_081D95DB:: @ 81D95DB +BattleScript_PrintPayDayMoneyString:: @ 81D95DB printstring BATTLE_TEXT_PickedUpYen waitmessage 64 return BattleScript_WrapTurnDmg:: @ 81D95E2 - playanimation USER, B_ANIM_TURN_TRAP, gSharedMem + 0x160A4 + playanimation USER, B_ANIM_TURN_TRAP, sANIM_ARG1 printstring BATTLE_TEXT_HurtBy waitmessage 64 - jump BattleScript_1D9520 + goto BattleScript_DoTurnDmg BattleScript_WrapEnds:: @ 81D95F4 printstring BATTLE_TEXT_FreedFrom @@ -3880,119 +3877,119 @@ BattleScript_WrapEnds:: @ 81D95F4 BattleScript_MoveUsedIsInLove:: @ 81D95FB printstring BATTLE_TEXT_InLoveWith waitmessage 64 - atk65 1, 0xf0000 + status2animation USER, STATUS2_INFATUATION return BattleScript_MoveUsedIsParalyzedCantAttack:: @ 81D9608 printstring BATTLE_TEXT_ImmobilizedBy waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd BattleScript_NightmareTurnDmg:: @ 81D9613 printstring BATTLE_TEXT_NightmareLock waitmessage 64 - atk65 1, Start - jump BattleScript_1D9520 + status2animation USER, STATUS2_NIGHTMARE + goto BattleScript_DoTurnDmg BattleScript_CurseTurnDmg:: @ 81D9624 printstring BATTLE_TEXT_CurseAfflict waitmessage 64 - atk65 1, 0x10000000 - jump BattleScript_1D9520 + status2animation USER, STATUS2_CURSED + goto BattleScript_DoTurnDmg BattleScript_TargetPRLZHeal:: @ 81D9635 printstring BATTLE_TEXT_ParalysisHealed waitmessage 64 - atk98 0 + updatestatusicon TARGET return -BattleScript_1D963E:: @ 81D963E - statusanimation 2 - printfromtable BattleTextList_4015B8 +BattleScript_MoveEffectSleep:: @ 81D963E + statusanimation EFFECT_BANK + printfromtable gFellAsleepStringIds waitmessage 64 -BattleScript_1D9648: @ 81D9648 - atk98 2 - waitstateatk +BattleScript_UpdateEffectStatusIconRet: @ 81D9648 + updatestatusicon EFFECT_BANK + waitstate return BattleScript_YawnMakesAsleep:: @ 81D964C - statusanimation 2 + statusanimation EFFECT_BANK printstring BATTLE_TEXT_FellAsleep waitmessage 64 - atk98 2 - waitstateatk - atk6f 2 + updatestatusicon EFFECT_BANK + waitstate + makevisible 2 end2 -BattleScript_1D965A:: @ 81D965A - statusanimation 2 - printfromtable BattleTextList_4015B0 +BattleScript_MoveEffectPoison:: @ 81D965A + statusanimation EFFECT_BANK + printfromtable gGotPoisonedStringIds waitmessage 64 - jump BattleScript_1D9648 + goto BattleScript_UpdateEffectStatusIconRet -BattleScript_1D9669:: @ 81D9669 - statusanimation 2 - printfromtable BattleTextList_4015BC +BattleScript_MoveEffectBurn:: @ 81D9669 + statusanimation EFFECT_BANK + printfromtable gGotBurnedStringIds waitmessage 64 - jump BattleScript_1D9648 + goto BattleScript_UpdateEffectStatusIconRet -BattleScript_1D9678:: @ 81D9678 - statusanimation 2 - printfromtable BattleTextList_4015C0 +BattleScript_MoveEffectFreeze:: @ 81D9678 + statusanimation EFFECT_BANK + printfromtable gGotFrozenStringIds waitmessage 64 - jump BattleScript_1D9648 + goto BattleScript_UpdateEffectStatusIconRet -BattleScript_1D9687:: @ 81D9687 - statusanimation 2 - printfromtable BattleTextList_4015B4 +BattleScript_MoveEffectParalysis:: @ 81D9687 + statusanimation EFFECT_BANK + printfromtable gGotParalyzedStringIds waitmessage 64 - jump BattleScript_1D9648 + goto BattleScript_UpdateEffectStatusIconRet -BattleScript_1D9696:: @ 81D9696 +BattleScript_MoveEffectUproar:: @ 81D9696 printstring BATTLE_TEXT_UproarCaused waitmessage 64 return -BattleScript_1D969D:: @ 81D969D - statusanimation 2 +BattleScript_MoveEffectToxic:: @ 81D969D + statusanimation EFFECT_BANK printstring BATTLE_TEXT_BadlyPoisoned waitmessage 64 - jump BattleScript_1D9648 + goto BattleScript_UpdateEffectStatusIconRet -BattleScript_1D96AA:: @ 81D96AA +BattleScript_MoveEffectPayDay:: @ 81D96AA printstring BATTLE_TEXT_CoinScatter waitmessage 64 return -BattleScript_1D96B1:: @ 81D96B1 - printfromtable BattleTextList_401594 +BattleScript_MoveEffectWrap:: @ 81D96B1 + printfromtable gWrappedStringIds waitmessage 64 return -BattleScript_1D96BA:: @ 81D96BA - atk66 2, 1, S_CONFUSED +BattleScript_MoveEffectConfusion:: @ 81D96BA + chosenstatus2animation EFFECT_BANK, STATUS2_CONFUSION printstring BATTLE_TEXT_BecameConfused waitmessage 64 return -BattleScript_1D96C8:: @ 81D96C8 - jumpifhalfword 0, gCurrentMove, 165, BattleScript_1D96DB - jumpifability USER, ABILITY_ROCK_HEAD, BattleScript_1D96F5 +BattleScript_MoveEffectRecoil33:: @ 81D96C8 + jumpifmove MOVE_STRUGGLE, BattleScript_DoRecoil33 + jumpifability USER, ABILITY_ROCK_HEAD, BattleScript_Recoil33End -BattleScript_1D96DB: @ 81D96DB - orword gHitMarker, 0x100100 - graphicalhpupdate USER +BattleScript_DoRecoil33: @ 81D96DB + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 + healthbarupdate USER datahpupdate USER printstring BATTLE_TEXT_HitRecoil waitmessage 64 - faintpokemon USER, 0, 0x0 + tryfaintmon USER, FALSE, NULL -BattleScript_1D96F5: @ 81D96F5 +BattleScript_Recoil33End: @ 81D96F5 return BattleScript_ItemSteal:: @ 81D96F6 - playanimation TARGET, B_ANIM_ITEM_STEAL, 0x0 + playanimation TARGET, B_ANIM_ITEM_STEAL, NULL printstring BATTLE_TEXT_StoleSomething waitmessage 64 return @@ -4000,13 +3997,13 @@ BattleScript_ItemSteal:: @ 81D96F6 BattleScript_DrizzleActivates:: @ 81D9704 pause 32 printstring BATTLE_TEXT_RainMade - waitstateatk - playanimation 7, B_ANIM_RAIN_CONTINUES, 0x0 - callatk BattleScript_1D9761 + waitstate + playanimation 7, B_ANIM_RAIN_CONTINUES, NULL + call BattleScript_WeatherFormChanges end3 BattleScript_SpeedBoostActivates:: @ 81D9718 - playanimation USER, B_ANIM_STATS_CHANGE, gSharedMem + 0x160A4 + playanimation USER, B_ANIM_STATS_CHANGE, sANIM_ARG1 printstring BATTLE_TEXT_SpeedRisen waitmessage 64 end3 @@ -4020,47 +4017,47 @@ BattleScript_TraceActivates:: @ 81D9726 BattleScript_RainDishActivates:: @ 81D9730 printstring BATTLE_TEXT_RestoredHPByItem waitmessage 64 - orword gHitMarker, 0x100 - graphicalhpupdate USER + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE + healthbarupdate USER datahpupdate USER end3 BattleScript_SandstreamActivates:: @ 81D9744 pause 32 printstring BATTLE_TEXT_WhipSandstorm - waitstateatk - playanimation 7, B_ANIM_SANDSTORM_CONTINUES, 0x0 - callatk BattleScript_1D9761 + waitstate + playanimation 7, B_ANIM_SANDSTORM_CONTINUES, NULL + call BattleScript_WeatherFormChanges end3 BattleScript_ShedSkinActivates:: @ 81D9758 printstring BATTLE_TEXT_CuredProblem waitmessage 64 - atk98 1 + updatestatusicon USER end3 -BattleScript_1D9761: @ 81D9761 - setbyte gSharedMem + 0x16003, 0 +BattleScript_WeatherFormChanges: @ 81D9761 + setbyte sBANK, 0 -BattleScript_1D9767: @ 81D9767 - castformswitch - addbyte gSharedMem + 0x16003, 1 - jumpifarraynotequal gSharedMem + 0x16003, gNoOfAllBanks, 1, BattleScript_1D9767 +BattleScript_WeatherFormChangesLoop: @ 81D9767 + trycastformdatachange + addbyte sBANK, 1 + jumpifbytenotequal sBANK, gNoOfAllBanks, BattleScript_WeatherFormChangesLoop return BattleScript_CastformChange:: @ 81D977D - callatk BattleScript_1D9783 + call BattleScript_1D9783 end3 BattleScript_1D9783: @ 81D9783 - actualcastformswitch - waitstateatk + docastformchangeanimation + waitstate printstring BATTLE_TEXT_Transformed2 waitmessage 64 return gUnknown_081D978C:: @ 81D978C - callatk BattleScript_1D9792 + call BattleScript_1D9792 end3 BattleScript_1D9792: @ 81D9792 @@ -4068,24 +4065,24 @@ BattleScript_1D9792: @ 81D9792 gUnknown_081D9795:: @ 81D9795 setbyte gBankTarget, 0 - setbyte gSharedMem + 0x1601E, 145 + setstatchanger ATTACK, 1, TRUE BattleScript_1D97A1: @ 81D97A1 - atke1 BattleScript_1D97EF - jumpifsecondarytstatus TARGET, S_SUBSTITUTE, BattleScript_1D97E4 + trygetintimidatetarget BattleScript_1D97EF + jumpifstatus2 TARGET, STATUS2_SUBSTITUTE, BattleScript_1D97E4 jumpifability TARGET, ABILITY_CLEAR_BODY, BattleScript_1D97F0 jumpifability TARGET, ABILITY_HYPER_CUTTER, BattleScript_1D97F0 jumpifability TARGET, ABILITY_WHITE_SMOKE, BattleScript_1D97F0 statbuffchange 33, BattleScript_1D97E4 - jumpifbyte 2, gUnknown_02024D1F + 0x4, 1, BattleScript_1D97E4 - atk47 - playanimation TARGET, B_ANIM_STATS_CHANGE, gSharedMem + 0x160A4 + jumpifbyte GREATER_THAN, cMULTISTRING_CHOOSER, 1, BattleScript_1D97E4 + setgraphicalstatchangevalues + playanimation TARGET, B_ANIM_STATS_CHANGE, sANIM_ARG1 printstring BATTLE_TEXT_CutsAttack waitmessage 64 BattleScript_1D97E4: @ 81D97E4 addbyte gBankTarget, 1 - jump BattleScript_1D97A1 + goto BattleScript_1D97A1 BattleScript_1D97EF: @ 81D97EF return @@ -4094,14 +4091,14 @@ BattleScript_1D97F0: @ 81D97F0 pause 32 printstring BATTLE_TEXT_PreventedOther waitmessage 64 - jump BattleScript_1D97E4 + goto BattleScript_1D97E4 BattleScript_DroughtActivates:: @ 81D97FE pause 32 printstring BATTLE_TEXT_SunIntensified - waitstateatk - playanimation 7, B_ANIM_SUN_CONTINUES, 0x0 - callatk BattleScript_1D9761 + waitstate + playanimation 7, B_ANIM_SUN_CONTINUES, NULL + call BattleScript_WeatherFormChanges end3 BattleScript_TookAttack:: @ 81D9812 @@ -4109,20 +4106,20 @@ BattleScript_TookAttack:: @ 81D9812 pause 32 printstring BATTLE_TEXT_TookAttack2 waitmessage 64 - orword gHitMarker, 0x400 + orword gHitMarker, HITMARKER_ATTACKSTRING_PRINTED return -gUnknown_081D9826:: @ 81D9826 +BattleScript_SturdyPreventsOHKO:: @ 81D9826 pause 32 printstring BATTLE_TEXT_ProtectedBy pause 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -gUnknown_081D9834:: @ 81D9834 +BattleScript_DampStopsExplosion:: @ 81D9834 pause 32 printstring BATTLE_TEXT_PreventedBy pause 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd BattleScript_MoveHPDrain_PPLoss:: @ 81D9842 ppreduce @@ -4130,13 +4127,13 @@ BattleScript_MoveHPDrain_PPLoss:: @ 81D9842 BattleScript_MoveHPDrain:: @ 81D9843 attackstring pause 32 - orword gHitMarker, 0x100 - graphicalhpupdate TARGET + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE + healthbarupdate TARGET datahpupdate TARGET printstring BATTLE_TEXT_HPRestoredUsing waitmessage 64 - orbyte gBattleMoveFlags, 8 - jump BattleScript_EndTurn + orbyte gBattleMoveFlags, MOVESTATUS_NOTAFFECTED + goto BattleScript_MoveEnd BattleScript_MoveHPDrain_FullHP_PPLoss:: @ 81D9865 ppreduce @@ -4146,8 +4143,8 @@ BattleScript_MoveHPDrain_FullHP:: @ 81D9866 pause 32 printstring BATTLE_TEXT_MadeUseless waitmessage 64 - orbyte gBattleMoveFlags, 8 - jump BattleScript_EndTurn + orbyte gBattleMoveFlags, MOVESTATUS_NOTAFFECTED + goto BattleScript_MoveEnd BattleScript_FlashFireBoost_PPLoss:: @ 81D987B ppreduce @@ -4155,15 +4152,15 @@ BattleScript_FlashFireBoost_PPLoss:: @ 81D987B BattleScript_FlashFireBoost:: @ 81D987C attackstring pause 32 - printfromtable BattleTextList_401648 + printfromtable gFlashFireStringIds waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -BattleScript_1D988D: @ 81D988D +BattleScript_AbilityPreventsPhasingOut: @ 81D988D pause 32 printstring BATTLE_TEXT_AnchorsItself waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd BattleScript_AbilityNoStatLoss:: @ 81D989B pause 32 @@ -4173,19 +4170,19 @@ BattleScript_AbilityNoStatLoss:: @ 81D989B BattleScript_BRNPrevention:: @ 81D98A5 pause 32 - printfromtable BattleTextList_401630 + printfromtable gBRNPreventionStringIds waitmessage 64 return BattleScript_PRLZPrevention:: @ 81D98B1 pause 32 - printfromtable BattleTextList_401636 + printfromtable gPRLZPreventionStringIds waitmessage 64 return BattleScript_PSNPrevention:: @ 81D98BD pause 32 - printfromtable BattleTextList_40163C + printfromtable gPSNPreventionStringIds waitmessage 64 return @@ -4193,19 +4190,19 @@ BattleScript_ObliviousPreventsAttraction:: @ 81D98C9 pause 32 printstring BATTLE_TEXT_PreventedRomance waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd BattleScript_FlinchPrevention:: @ 81D98D7 pause 32 printstring BATTLE_TEXT_PreventedFlinching waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd -BattleScript_1D98E5: @ 81D98E5 +BattleScript_OwnTempoPrevents: @ 81D98E5 pause 32 printstring BATTLE_TEXT_PreventedConfusion waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd BattleScript_SoundproofProtected:: @ 81D98F3 attackstring @@ -4213,20 +4210,20 @@ BattleScript_SoundproofProtected:: @ 81D98F3 pause 32 printstring BATTLE_TEXT_BlocksOther waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd BattleScript_AbilityNoSpecificStatLoss:: @ 81D9903 pause 32 printstring BATTLE_TEXT_PreventedLoss waitmessage 64 - setbyte gUnknown_02024D1F + 0x4, 3 + setbyte cMULTISTRING_CHOOSER, 3 return BattleScript_NoItemSteal:: @ 81D9913 pause 32 printstring BATTLE_TEXT_MadeIneffective waitmessage 64 - jump BattleScript_EndTurn + goto BattleScript_MoveEnd BattleScript_ColorChangeActivates:: @ 81D9921 printstring BATTLE_TEXT_MadeType @@ -4234,242 +4231,242 @@ BattleScript_ColorChangeActivates:: @ 81D9921 return BattleScript_RoughSkinActivates:: @ 81D9928 - orword gHitMarker, 0x100100 - graphicalhpupdate USER + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 + healthbarupdate USER datahpupdate USER printstring BATTLE_TEXT_HurtOther waitmessage 64 - faintpokemon USER, 0, 0x0 + tryfaintmon USER, FALSE, NULL return BattleScript_CuteCharmActivates:: @ 81D9943 - atk65 1, 0xf0000 + status2animation USER, STATUS2_INFATUATION printstring BATTLE_TEXT_InfatuatedPoke waitmessage 64 return BattleScript_ApplySecondaryEffect:: @ 81D9950 - waitstateatk - seteffectuser + waitstate + seteffectsecondary return BattleScript_SynchronizeActivates:: @ 81D9953 - waitstateatk - seteffecttarget + waitstate + seteffectprimary return -gUnknown_081D9956:: @ 81D9956 +BattleScript_AbilityCuredStatus:: @ 81D9956 printstring BATTLE_TEXT_CuredOfProblem waitmessage 64 - atk98 10 + updatestatusicon SCRIPTING_BANK return gUnknown_081D995F:: @ 81D995F printstring BATTLE_TEXT_IgnoredOrdersSLP waitmessage 64 - setbyte gSharedMem + 0x1600C, 0 - atk49 2, 16 + setbyte sMOVEEND_STATE, 0 + moveend 2, 16 end -gUnknown_081D996F:: @ 81D996F +BattleScript_IgnoresAndUsesRandomMove:: @ 81D996F printstring BATTLE_TEXT_IgnoredOrders waitmessage 64 - jumptoattack TARGET + jumptorandomattack TARGET BattleScript_MoveUsedLoafingAround:: @ 81D9977 - printfromtable BattleTextList_40160E + printfromtable gInobedientStringIds waitmessage 64 - setbyte gSharedMem + 0x1600C, 0 - atk49 2, 16 + setbyte sMOVEEND_STATE, 0 + moveend 2, 16 end -gUnknown_081D9989:: @ 81D9989 +BattleScript_IgnoresAndFallsAsleep:: @ 81D9989 printstring BATTLE_TEXT_BeganNap waitmessage 64 - setbyte gUnknown_02024D1F + 0x2, 65 - seteffecttarget - setbyte gSharedMem + 0x1600C, 0 - atk49 2, 16 + setmoveeffect EFFECT_SLEEP | AFFECTS_USER + seteffectprimary + setbyte sMOVEEND_STATE, 0 + moveend 2, 16 end gUnknown_081D99A0:: @ 81D99A0 printstring BATTLE_TEXT_WontObey waitmessage 64 - jump BattleScript_1D95AC + goto BattleScript_DoSelfConfusionDmg BattleScript_SubstituteFade:: @ 81D99AB - playanimation TARGET, B_ANIM_SUBSTITUTE_FADE, 0x0 + playanimation TARGET, B_ANIM_SUBSTITUTE_FADE, NULL printstring BATTLE_TEXT_SubFaded return BattleScript_BerryCurePrlzEnd2:: @ 81D99B6 - callatk BattleScript_BerryCureParRet + call BattleScript_BerryCureParRet end2 BattleScript_BerryCureParRet:: @ 81D99BC - playanimation 10, B_ANIM_ITEM_EFFECT, 0x0 + playanimation 10, B_ANIM_ITEM_EFFECT, NULL printstring BATTLE_TEXT_CuredParalysis waitmessage 64 - atk98 10 - removeitem 10 + updatestatusicon SCRIPTING_BANK + removeitem SCRIPTING_BANK return BattleScript_BerryCurePsnEnd2:: @ 81D99CE - callatk BattleScript_BerryCurePsnRet + call BattleScript_BerryCurePsnRet end2 BattleScript_BerryCurePsnRet:: @ 81D99D4 - playanimation 10, B_ANIM_ITEM_EFFECT, 0x0 + playanimation 10, B_ANIM_ITEM_EFFECT, NULL printstring BATTLE_TEXT_CuredPoison waitmessage 64 - atk98 10 - removeitem 10 + updatestatusicon SCRIPTING_BANK + removeitem SCRIPTING_BANK return BattleScript_BerryCureBrnEnd2:: @ 81D99E6 - callatk BattleScript_BerryCureBrnRet + call BattleScript_BerryCureBrnRet end2 BattleScript_BerryCureBrnRet:: @ 81D99EC - playanimation 10, B_ANIM_ITEM_EFFECT, 0x0 + playanimation 10, B_ANIM_ITEM_EFFECT, NULL printstring BATTLE_TEXT_CuredBurn waitmessage 64 - atk98 10 - removeitem 10 + updatestatusicon SCRIPTING_BANK + removeitem SCRIPTING_BANK return BattleScript_BerryCureFrzEnd2:: @ 81D99FE - callatk BattleScript_BerryCureFrzRet + call BattleScript_BerryCureFrzRet end2 BattleScript_BerryCureFrzRet:: @ 81D9A04 - playanimation 10, B_ANIM_ITEM_EFFECT, 0x0 + playanimation 10, B_ANIM_ITEM_EFFECT, NULL printstring BATTLE_TEXT_CuredFreeze waitmessage 64 - atk98 10 - removeitem 10 + updatestatusicon SCRIPTING_BANK + removeitem SCRIPTING_BANK return BattleScript_BerryCureSlpEnd2:: @ 81D9A16 - callatk BattleScript_BerryCureSlpRet + call BattleScript_BerryCureSlpRet end2 BattleScript_BerryCureSlpRet:: @ 81D9A1C - playanimation 10, B_ANIM_ITEM_EFFECT, 0x0 + playanimation 10, B_ANIM_ITEM_EFFECT, NULL printstring BATTLE_TEXT_CuredSleep waitmessage 64 - atk98 10 - removeitem 10 + updatestatusicon SCRIPTING_BANK + removeitem SCRIPTING_BANK return BattleScript_BerryCureConfusionEnd2:: @ 81D9A2E - callatk BattleScript_BerryCureConfusionRet + call BattleScript_BerryCureConfusionRet end2 BattleScript_BerryCureConfusionRet:: @ 81D9A34 - playanimation 10, B_ANIM_ITEM_EFFECT, 0x0 + playanimation 10, B_ANIM_ITEM_EFFECT, NULL printstring BATTLE_TEXT_CuredConfusion waitmessage 64 - removeitem 10 + removeitem SCRIPTING_BANK return -gUnknown_081D9A44:: @ 81D9A44 - callatk gUnknown_081D9A4A +BattleScript_BerryCureChosenStatusEnd2:: @ 81D9A44 + call BattleScript_BerryCureChosenStatusRet end2 -gUnknown_081D9A4A:: @ 81D9A4A - playanimation 10, B_ANIM_ITEM_EFFECT, 0x0 - printfromtable BattleTextList_40162C +BattleScript_BerryCureChosenStatusRet:: @ 81D9A4A + playanimation 10, B_ANIM_ITEM_EFFECT, NULL + printfromtable gBerryEffectStringIds waitmessage 64 - atk98 10 - removeitem 10 + updatestatusicon SCRIPTING_BANK + removeitem SCRIPTING_BANK return BattleScript_WhiteHerbEnd2:: @ 81D9A5E - callatk BattleScript_WhiteHerbRet + call BattleScript_WhiteHerbRet end2 BattleScript_WhiteHerbRet:: @ 81D9A64 - playanimation 10, B_ANIM_ITEM_EFFECT, 0x0 + playanimation 10, B_ANIM_ITEM_EFFECT, NULL printstring BATTLE_TEXT_RestoredStatus waitmessage 64 - removeitem 10 + removeitem SCRIPTING_BANK return BattleScript_ItemHealHP_RemoveItem:: @ 81D9A74 - playanimation USER, B_ANIM_ITEM_EFFECT, 0x0 + playanimation USER, B_ANIM_ITEM_EFFECT, NULL printstring BATTLE_TEXT_RestoredHealth waitmessage 64 - orword gHitMarker, 0x100 - graphicalhpupdate USER + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE + healthbarupdate USER datahpupdate USER removeitem USER end2 BattleScript_BerryPPHealEnd2:: @ 81D9A91 - playanimation USER, B_ANIM_ITEM_EFFECT, 0x0 + playanimation USER, B_ANIM_ITEM_EFFECT, NULL printstring BATTLE_TEXT_RestoredPP waitmessage 64 removeitem USER end2 BattleScript_ItemHealHP_End2:: @ 81D9AA1 - callatk BattleScript_ItemHealHP_Ret + call BattleScript_ItemHealHP_Ret end2 BattleScript_ItemHealHP_Ret:: @ 81D9AA7 - playanimation USER, B_ANIM_ITEM_EFFECT, 0x0 + playanimation USER, B_ANIM_ITEM_EFFECT, NULL printstring BATTLE_TEXT_RestoredHPLittle waitmessage 64 - orword gHitMarker, 0x100 - graphicalhpupdate USER + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE + healthbarupdate USER datahpupdate USER return BattleScript_MoveSelectionChoiceBanded:: @ 81D9AC2 - printstring2 BATTLE_TEXT_ChoiceBand - atk44 + printselectionstring BATTLE_TEXT_ChoiceBand + endselectionscript BattleScript_HangedOnMsg:: @ 81D9AC6 - playanimation TARGET, B_ANIM_HANGED_ON, 0x0 + playanimation TARGET, B_ANIM_HANGED_ON, NULL printstring BATTLE_TEXT_FocusSash waitmessage 64 return BattleScript_BerryConfuseHealEnd2:: @ 81D9AD4 - playanimation USER, B_ANIM_ITEM_EFFECT, 0x0 + playanimation USER, B_ANIM_ITEM_EFFECT, NULL printstring BATTLE_TEXT_RestoredHealth waitmessage 64 - orword gHitMarker, 0x100 - graphicalhpupdate USER + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE + healthbarupdate USER datahpupdate USER printstring BATTLE_TEXT_UnknownString2 waitmessage 64 - setbyte gUnknown_02024D1F + 0x2, 71 - seteffecttarget + setmoveeffect EFFECT_CONFUSION | AFFECTS_USER + seteffectprimary removeitem USER end2 BattleScript_BerryStatRaiseEnd2:: @ 81D9AFE - playanimation USER, B_ANIM_ITEM_EFFECT, 0x0 - statbuffchange 65, BattleScript_1D9B0B + playanimation USER, B_ANIM_ITEM_EFFECT, NULL + statbuffchange AFFECTS_USER | 0x1, BattleScript_1D9B0B BattleScript_1D9B0B: @ 81D9B0B - setbyte gUnknown_02024D1F + 0x4, 4 - callatk BattleScript_StatUp + setbyte cMULTISTRING_CHOOSER, 0x4 + call BattleScript_StatUp removeitem USER end2 BattleScript_BerryFocusEnergyEnd2:: @ 81D9B19 - playanimation USER, B_ANIM_ITEM_EFFECT, 0x0 + playanimation USER, B_ANIM_ITEM_EFFECT, NULL printstring BATTLE_TEXT_HustleUse waitmessage 64 removeitem USER end2 -gUnknown_081D9B29:: @ 81D9B29 - printstring2 BATTLE_TEXT_CantUseItems - atk44 +BattleScript_ActionSelectionItemsCantBeUsed:: @ 81D9B29 + printselectionstring BATTLE_TEXT_CantUseItems + endselectionscript gUnknown_081D9B2D:: @ 81D9B2D printstring BATTLE_TEXT_Terminator2 diff --git a/data/battle_scripts_2.s b/data/battle_scripts_2.s index 22ecc7769..26f28726d 100644 --- a/data/battle_scripts_2.s +++ b/data/battle_scripts_2.s @@ -1,97 +1,101 @@ +#include "constants/battle_constants.h" +#include "constants/items.h" +#include "constants/songs.h" .include "asm/macros.inc" - .include "constants/constants.inc" .include "asm/macros/battle_script.inc" + .include "constants/constants.inc" + .include "constants/battle_script_constants.inc" .section script_data, "aw", %progbits .align 2 gBattlescriptsForBallThrow:: @ 81D9E48 - .4byte BattleScript_1D9EA8 - .4byte BattleScript_1D9EA8 - .4byte BattleScript_1D9EA8 - .4byte BattleScript_1D9EA8 - .4byte BattleScript_1D9EA8 - .4byte BattleScript_1D9EBC - .4byte BattleScript_1D9EA8 - .4byte BattleScript_1D9EA8 - .4byte BattleScript_1D9EA8 - .4byte BattleScript_1D9EA8 - .4byte BattleScript_1D9EA8 - .4byte BattleScript_1D9EA8 - .4byte BattleScript_1D9EA8 - -gUnknown_081D9E7C:: @ 81D9E7C - .4byte BattleScript_1D9F45 - .4byte BattleScript_1D9F4F - .4byte BattleScript_1D9F4F - .4byte BattleScript_1D9F7B - .4byte BattleScript_1D9F9C - .4byte BattleScript_1D9FBB + .4byte BattleScript_BallThrow + .4byte BattleScript_BallThrow + .4byte BattleScript_BallThrow + .4byte BattleScript_BallThrow + .4byte BattleScript_BallThrow + .4byte BattleScript_SafariBallThrow + .4byte BattleScript_BallThrow + .4byte BattleScript_BallThrow + .4byte BattleScript_BallThrow + .4byte BattleScript_BallThrow + .4byte BattleScript_BallThrow + .4byte BattleScript_BallThrow + .4byte BattleScript_BallThrow + +gBattlescriptsForUsingItem:: @ 81D9E7C + .4byte BattleScript_PlayerUsesItem + .4byte BattleScript_OpponentUsesHealItem + .4byte BattleScript_OpponentUsesHealItem + .4byte BattleScript_OpponentUsesStatusCureItem + .4byte BattleScript_OpponentUsesXItem + .4byte BattleScript_OpponentUsesGuardSpecs gBattlescriptsForRunningByItem:: @ 81D9E94 - .4byte BattleScript_1D9FDA + .4byte BattleScript_RunByUsingItem gBattlescriptsForSafariActions:: @ 81D9E98 - .4byte BattleScript_1D9FE4 - .4byte BattleScript_1D9FEB - .4byte BattleScript_1D9FF4 + .4byte BattleScript_ActionWatchesCarefully + .4byte BattleScript_ActionGetNear + .4byte BattleScript_ActionThrowPokeblock .4byte BattleScript_1DA00A -BattleScript_1D9EA8: @ 81D9EA8 - jumpifhalfword 4, gBattleTypeFlags, 512, BattleScript_1D9EB8 +BattleScript_BallThrow: @ 81D9EA8 + jumpifhalfword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_WALLY_TUTORIAL, BattleScript_BallThrowByWally printstring BATTLE_TEXT_Used1 - pokemoncatchfunction + handleballthrow -BattleScript_1D9EB8: @ 81D9EB8 +BattleScript_BallThrowByWally: @ 81D9EB8 printstring BATTLE_TEXT_TutorialUsed - pokemoncatchfunction + handleballthrow -BattleScript_1D9EBC: @ 81D9EBC +BattleScript_SafariBallThrow: @ 81D9EBC printstring BATTLE_TEXT_Used1 - atk98 1 - pokemoncatchfunction + updatestatusicon USER + handleballthrow BattleScript_SuccessBallThrow:: @ 81D9EC2 - jumpifhalfword 0, gLastUsedItem, 5, BattleScript_1D9ED0 - atk60 11 + jumpifhalfword EQUAL, gLastUsedItem, ITEM_SAFARI_BALL, BattleScript_PrintCaughtMonInfo + incrementgamestat 11 -BattleScript_1D9ED0: @ 81D9ED0 +BattleScript_PrintCaughtMonInfo: @ 81D9ED0 printstring BATTLE_TEXT_BallCaught1 - capturesomethingf1 BattleScript_1D9EE3 + trysetcaughtmondexflags BattleScript_TryNicknameCaughtMon printstring BATTLE_TEXT_AddedToDex - waitstateatk + waitstate setbyte gBattleCommunication, 0 - capturesomethingf2 + displaydexinfo -BattleScript_1D9EE3: @ 81D9EE3 +BattleScript_TryNicknameCaughtMon: @ 81D9EE3 printstring BATTLE_TEXT_GiveNickname - waitstateatk + waitstate setbyte gBattleCommunication, 0 - capturesomethingf3 BattleScript_1D9EF8 + trygivecaughtmonnick BattleScript_GiveCaughtMonEnd printstring BATTLE_TEXT_SentToPC waitmessage 64 -BattleScript_1D9EF8: @ 81D9EF8 - catchpoke - setbyte gBattleOutcome, 7 - activesidesomething +BattleScript_GiveCaughtMonEnd: @ 81D9EF8 + givecaughtmon + setbyte gBattleOutcome, BATTLE_CAUGHT + finishturn BattleScript_WallyBallThrow:: @ 81D9F00 printstring BATTLE_TEXT_BallCaught2 - setbyte gBattleOutcome, 7 - activesidesomething + setbyte gBattleOutcome, BATTLE_CAUGHT + finishturn BattleScript_ShakeBallThrow:: @ 81D9F0A - printfromtable BattleTextList_4015E6 + printfromtable gBallEscapeStringIds waitmessage 64 - jumpifbyte 5, gBattleTypeFlags, 128, BattleScript_1D9F34 - jumpifbyte 1, gNumSafariBalls, 0, BattleScript_1D9F34 + jumpifbyte NO_COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_SAFARI, BattleScript_ShakeBallThrowEnd + jumpifbyte NOT_EQUAL, gNumSafariBalls, 0, BattleScript_ShakeBallThrowEnd printstring BATTLE_TEXT_SafariOver waitmessage 64 - setbyte gBattleOutcome, 8 + setbyte gBattleOutcome, BATTLE_OUT_OF_BALLS -BattleScript_1D9F34: @ 81D9F34 - atkf6 +BattleScript_ShakeBallThrowEnd: @ 81D9F34 + finishaction BattleScript_TrainerBallBlock:: @ 81D9F35 waitmessage 64 @@ -99,96 +103,96 @@ BattleScript_TrainerBallBlock:: @ 81D9F35 waitmessage 64 printstring BATTLE_TEXT_DontBeAThief waitmessage 64 - atkf6 + finishaction -BattleScript_1D9F45: @ 81D9F45 - setbyte gSharedMem + 0x1600C, 15 - atk49 1, 0 +BattleScript_PlayerUsesItem: @ 81D9F45 + setbyte sMOVEEND_STATE, 15 + moveend 1, 0 end -BattleScript_1D9F4F: @ 81D9F4F +BattleScript_OpponentUsesHealItem: @ 81D9F4F pause 48 - atk54 1 + playse SE_KAIFUKU printstring BATTLE_TEXT_Used2 waitmessage 64 - atk75 - orword gHitMarker, 0x100 - graphicalhpupdate USER + useitemonopponent + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE + healthbarupdate USER datahpupdate USER printstring BATTLE_TEXT_RestoredHealth waitmessage 64 - atk98 1 - setbyte gSharedMem + 0x1600C, 15 - atk49 1, 0 - atkf6 + updatestatusicon USER + setbyte sMOVEEND_STATE, 15 + moveend 1, 0 + finishaction -BattleScript_1D9F7B: @ 81D9F7B +BattleScript_OpponentUsesStatusCureItem: @ 81D9F7B pause 48 - atk54 1 + playse SE_KAIFUKU printstring BATTLE_TEXT_Used2 waitmessage 64 - atk75 - printfromtable BattleTextList_401620 + useitemonopponent + printfromtable gTrainerItemCuredStatusStringIds waitmessage 64 - atk98 1 - setbyte gSharedMem + 0x1600C, 15 - atk49 1, 0 - atkf6 + updatestatusicon USER + setbyte sMOVEEND_STATE, 15 + moveend 1, 0 + finishaction -BattleScript_1D9F9C: @ 81D9F9C +BattleScript_OpponentUsesXItem: @ 81D9F9C pause 48 - atk54 1 + playse SE_KAIFUKU printstring BATTLE_TEXT_Used2 waitmessage 64 - atk75 - printfromtable BattleTextList_401570 + useitemonopponent + printfromtable gStatUpStringIds waitmessage 64 - setbyte gSharedMem + 0x1600C, 15 - atk49 1, 0 - atkf6 + setbyte sMOVEEND_STATE, 15 + moveend 1, 0 + finishaction -BattleScript_1D9FBB: @ 81D9FBB +BattleScript_OpponentUsesGuardSpecs: @ 81D9FBB pause 48 - atk54 1 + playse SE_KAIFUKU printstring BATTLE_TEXT_Used2 waitmessage 64 - atk75 - printfromtable BattleTextList_4015A0 + useitemonopponent + printfromtable gMistUsedStringIds waitmessage 64 - setbyte gSharedMem + 0x1600C, 15 - atk49 1, 0 - atkf6 + setbyte sMOVEEND_STATE, 15 + moveend 1, 0 + finishaction -BattleScript_1D9FDA: @ 81D9FDA - atk54 17 - setbyte gBattleOutcome, 4 - activesidesomething +BattleScript_RunByUsingItem: @ 81D9FDA + playse 17 + setbyte gBattleOutcome, BATTLE_RAN + finishturn -BattleScript_1D9FE4: @ 81D9FE4 +BattleScript_ActionWatchesCarefully: @ 81D9FE4 printstring BATTLE_TEXT_WatchingCarefully waitmessage 64 end2 -BattleScript_1D9FEB: @ 81D9FEB - printfromtable BattleTextList_401616 +BattleScript_ActionGetNear: @ 81D9FEB + printfromtable gSafariGetNearStringIds waitmessage 64 end2 -BattleScript_1D9FF4: @ 81D9FF4 +BattleScript_ActionThrowPokeblock: @ 81D9FF4 printstring BATTLE_TEXT_ThrewBlock waitmessage 64 playanimation USER, B_ANIM_POKEBLOCK_THROW, 0x0 - printfromtable BattleTextList_40161A + printfromtable gSafariPokeblockResultStringIds waitmessage 64 end2 BattleScript_1DA00A: @ 81DA00A printstring 2 waitmessage 64 - atk4b - waitstateatk - atk53 0 - waitstateatk + returnatktoball + waitstate + trainerslidein TARGET + waitstate printstring BATTLE_TEXT_WallyBall waitmessage 64 end2 |