From 12f0e46372e02f88f315e18177dbad53c04ab6dc Mon Sep 17 00:00:00 2001 From: Deukhoofd Date: Sun, 24 Oct 2021 16:34:58 +0200 Subject: [PATCH] Update tester, implements attract --- Moves.json | 3592 ++++++++++++++++---- Scripts/Interfaces/Pokemon.astypedef | 1 + Scripts/Interfaces/TestFunctions.astypedef | 21 +- Scripts/Moves/Attract.as | 100 + Scripts/Pokemon/Flinch.as | 4 +- Scripts/Pokemon/Infatuated.as | 10 + fetch_tester.sh | 2 +- 7 files changed, 3081 insertions(+), 649 deletions(-) create mode 100644 Scripts/Moves/Attract.as create mode 100644 Scripts/Pokemon/Infatuated.as diff --git a/Moves.json b/Moves.json index 551c976..ac75a63 100644 --- a/Moves.json +++ b/Moves.json @@ -21,11 +21,17 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "heal"], + "flags": [ + "protect", + "mirror", + "heal" + ], "effect": { "name": "drain", "chance": -1, - "parameters": [0.5] + "parameters": [ + 0.5 + ] } }, { @@ -37,7 +43,11 @@ "priority": 1, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "acid", @@ -48,11 +58,16 @@ "priority": 0, "target": "AllOpponent", "category": "special", - "flags": ["protect", "mirror"], + "flags": [ + "protect", + "mirror" + ], "effect": { "name": "ChangeTargetSpDef", "chance": 10, - "parameters": [-1] + "parameters": [ + -1 + ] } }, { @@ -64,11 +79,15 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"], + "flags": [ + "snatch" + ], "effect": { "name": "ChangeTargetDef", "chance": -1, - "parameters": [2] + "parameters": [ + 2 + ] } }, { @@ -102,11 +121,17 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "ballistics"], + "flags": [ + "protect", + "mirror", + "ballistics" + ], "effect": { "name": "ChangeTargetSpDef", "chance": -1, - "parameters": [-2] + "parameters": [ + -2 + ] } }, { @@ -118,7 +143,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "distance"], + "flags": [ + "contact", + "protect", + "mirror", + "distance" + ], "effect": { "name": "Acrobatics", "chance": -1 @@ -148,7 +178,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "distance"] + "flags": [ + "contact", + "protect", + "mirror", + "distance" + ] }, { "name": "aeroblast", @@ -159,7 +194,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "distance"], + "flags": [ + "protect", + "mirror", + "distance" + ], "effect": { "name": "IncreasedCriticalStage" } @@ -173,7 +212,9 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["ignore-substitute"], + "flags": [ + "ignore-substitute" + ], "effect": { "name": "AfterYou" } @@ -187,10 +228,14 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"], + "flags": [ + "snatch" + ], "effect": { "name": "ChangeTargetSpeed", - "parameters": [2] + "parameters": [ + 2 + ] } }, { @@ -202,7 +247,10 @@ "priority": 0, "target": "AllOpponent", "category": "special", - "flags": ["protect", "mirror"], + "flags": [ + "protect", + "mirror" + ], "effect": { "name": "IncreasedCriticalStage" } @@ -216,7 +264,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "distance"], + "flags": [ + "protect", + "mirror", + "distance" + ], "effect": { "name": "Flinch", "chance": 30 @@ -267,10 +319,14 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"], + "flags": [ + "snatch" + ], "effect": { "name": "ChangeTargetSpDef", - "parameters": [2] + "parameters": [ + 2 + ] } }, { @@ -282,7 +338,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"], + "flags": [ + "contact", + "protect", + "mirror" + ], "effect": { "name": "PreventFoeRunning" } @@ -296,11 +356,16 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"], + "flags": [ + "protect", + "mirror" + ], "effect": { "name": "ChangeAllTargetStats", "chance": 10, - "parameters": [1] + "parameters": [ + 1 + ] } }, { @@ -312,7 +377,11 @@ "priority": 1, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "aqua_ring", @@ -323,10 +392,14 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"], + "flags": [ + "snatch" + ], "effect": { "name": "HealEachEndOfTurn", - "parameters": [6.25] + "parameters": [ + 6.25 + ] } }, { @@ -338,7 +411,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "arm_thrust", @@ -349,7 +426,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"], + "flags": [ + "contact", + "protect", + "mirror" + ], "effect": { "name": "2_5HitMove" } @@ -363,7 +444,10 @@ "priority": 0, "target": "AdjacentAllySelf", "category": "status", - "flags": ["snatch", "distance"], + "flags": [ + "snatch", + "distance" + ], "effect": { "name": "CurePartyStatus" } @@ -377,10 +461,14 @@ "priority": 0, "target": "AdjacentAlly", "category": "status", - "flags": ["ignore-substitute"], + "flags": [ + "ignore-substitute" + ], "effect": { "name": "ChangeTargetSpDef", - "parameters": [1] + "parameters": [ + 1 + ] } }, { @@ -406,7 +494,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"], + "flags": [ + "contact", + "protect", + "mirror" + ], "effect": { "name": "Assurance" } @@ -420,7 +512,15 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ], + "effect": { + "name": "flinch", + "chance": 30 + } }, { "name": "attack_order", @@ -431,7 +531,13 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ], + "effect": { + "name": "IncreasedCriticalStage" + } }, { "name": "attract", @@ -448,7 +554,10 @@ "mirror", "ignore-substitute", "mental" - ] + ], + "effect": { + "name": "Infatuated" + } }, { "name": "aura_sphere", @@ -459,7 +568,13 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "distance", "pulse", "ballistics"] + "flags": [ + "protect", + "mirror", + "distance", + "pulse", + "ballistics" + ] }, { "name": "aurora_beam", @@ -470,7 +585,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "aurora_veil", @@ -481,7 +599,9 @@ "priority": 0, "target": "AllAlly", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "autotomize", @@ -492,7 +612,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "avalanche", @@ -503,7 +625,11 @@ "priority": -4, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "baby_doll_eyes", @@ -514,7 +640,11 @@ "priority": 1, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "baneful_bunker", @@ -536,7 +666,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror", "ballistics"] + "flags": [ + "protect", + "mirror", + "ballistics" + ] }, { "name": "barrier", @@ -547,7 +681,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "baton_pass", @@ -569,7 +705,9 @@ "priority": -3, "target": "Any", "category": "physical", - "flags": ["protect"] + "flags": [ + "protect" + ] }, { "name": "beat_up", @@ -580,7 +718,10 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "belch", @@ -591,7 +732,9 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect"] + "flags": [ + "protect" + ] }, { "name": "belly_drum", @@ -602,7 +745,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "bestow", @@ -613,7 +758,10 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["mirror", "ignore-substitute"] + "flags": [ + "mirror", + "ignore-substitute" + ] }, { "name": "bide", @@ -624,7 +772,10 @@ "priority": 1, "target": "Self", "category": "physical", - "flags": ["contact", "protect"] + "flags": [ + "contact", + "protect" + ] }, { "name": "bind", @@ -635,7 +786,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "bite", @@ -646,7 +801,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "bite"] + "flags": [ + "contact", + "protect", + "mirror", + "bite" + ] }, { "name": "black_hole_eclipse__physical", @@ -679,7 +839,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["recharge", "protect", "mirror"] + "flags": [ + "recharge", + "protect", + "mirror" + ] }, { "name": "blaze_kick", @@ -690,7 +854,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "blizzard", @@ -701,7 +869,10 @@ "priority": 0, "target": "AllOpponent", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "block", @@ -712,7 +883,10 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["reflectable", "mirror"] + "flags": [ + "reflectable", + "mirror" + ] }, { "name": "bloom_doom__physical", @@ -745,7 +919,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "body_slam", @@ -756,7 +933,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "nonskybattle"] + "flags": [ + "contact", + "protect", + "mirror", + "nonskybattle" + ] }, { "name": "bolt_strike", @@ -767,7 +949,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "bone_club", @@ -778,7 +964,10 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "bone_rush", @@ -789,7 +978,10 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "bonemerang", @@ -800,7 +992,10 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "boomburst", @@ -811,7 +1006,12 @@ "priority": 0, "target": "All", "category": "special", - "flags": ["protect", "mirror", "sound", "ignore-substitute"] + "flags": [ + "protect", + "mirror", + "sound", + "ignore-substitute" + ] }, { "name": "bounce", @@ -822,7 +1022,14 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "charge", "protect", "mirror", "gravity", "distance"] + "flags": [ + "contact", + "charge", + "protect", + "mirror", + "gravity", + "distance" + ] }, { "name": "brave_bird", @@ -833,7 +1040,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "distance"] + "flags": [ + "contact", + "protect", + "mirror", + "distance" + ] }, { "name": "breakneck_blitz__physical", @@ -866,7 +1078,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "brine", @@ -877,7 +1093,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "brutal_swing", @@ -888,7 +1107,11 @@ "priority": 0, "target": "All", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "bubble", @@ -899,7 +1122,10 @@ "priority": 0, "target": "AllOpponent", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "bubble_beam", @@ -910,7 +1136,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "bug_bite", @@ -921,7 +1150,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "bug_buzz", @@ -932,7 +1165,12 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "sound", "ignore-substitute"] + "flags": [ + "protect", + "mirror", + "sound", + "ignore-substitute" + ] }, { "name": "bulk_up", @@ -943,7 +1181,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "bulldoze", @@ -954,7 +1194,11 @@ "priority": 0, "target": "All", "category": "physical", - "flags": ["protect", "mirror", "nonskybattle"] + "flags": [ + "protect", + "mirror", + "nonskybattle" + ] }, { "name": "bullet_punch", @@ -965,7 +1209,12 @@ "priority": 1, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "punch"] + "flags": [ + "contact", + "protect", + "mirror", + "punch" + ] }, { "name": "bullet_seed", @@ -976,7 +1225,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror", "ballistics"] + "flags": [ + "protect", + "mirror", + "ballistics" + ] }, { "name": "burn_up", @@ -987,7 +1240,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "defrost"] + "flags": [ + "protect", + "mirror", + "defrost" + ] }, { "name": "calm_mind", @@ -998,7 +1255,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "camouflage", @@ -1009,7 +1268,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "captivate", @@ -1020,7 +1281,11 @@ "priority": 0, "target": "AllOpponent", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "catastropika", @@ -1031,7 +1296,9 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact"] + "flags": [ + "contact" + ] }, { "name": "celebrate", @@ -1053,7 +1320,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "charge_beam", @@ -1064,7 +1333,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "charm", @@ -1075,7 +1347,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "chatter", @@ -1086,7 +1362,13 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "sound", "distance", "ignore-substitute"] + "flags": [ + "protect", + "mirror", + "sound", + "distance", + "ignore-substitute" + ] }, { "name": "chip_away", @@ -1097,7 +1379,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "circle_throw", @@ -1108,7 +1394,11 @@ "priority": -6, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "clamp", @@ -1119,7 +1409,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "clanging_scales", @@ -1130,7 +1424,12 @@ "priority": 0, "target": "AllOpponent", "category": "special", - "flags": ["protect", "mirror", "sound", "ignore-substitute"] + "flags": [ + "protect", + "mirror", + "sound", + "ignore-substitute" + ] }, { "name": "clear_smog", @@ -1141,7 +1440,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "close_combat", @@ -1152,7 +1454,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "coil", @@ -1163,7 +1469,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "comet_punch", @@ -1174,7 +1482,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "punch"] + "flags": [ + "contact", + "protect", + "mirror", + "punch" + ] }, { "name": "confide", @@ -1185,7 +1498,12 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["reflectable", "mirror", "sound", "ignore-substitute"] + "flags": [ + "reflectable", + "mirror", + "sound", + "ignore-substitute" + ] }, { "name": "confuse_ray", @@ -1196,7 +1514,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "confusion", @@ -1207,7 +1529,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "constrict", @@ -1218,7 +1543,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "continental_crush__physical", @@ -1251,7 +1580,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "conversion_2", @@ -1262,7 +1593,9 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["ignore-substitute"] + "flags": [ + "ignore-substitute" + ] }, { "name": "copycat", @@ -1284,7 +1617,10 @@ "priority": 0, "target": "AllOpponent", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "corkscrew_crash__physical", @@ -1317,7 +1653,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "cotton_guard", @@ -1328,7 +1666,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "cotton_spore", @@ -1339,7 +1679,12 @@ "priority": 0, "target": "AllOpponent", "category": "status", - "flags": ["protect", "reflectable", "mirror", "powder"] + "flags": [ + "protect", + "reflectable", + "mirror", + "powder" + ] }, { "name": "counter", @@ -1350,7 +1695,10 @@ "priority": -5, "target": "Self", "category": "physical", - "flags": ["contact", "protect"] + "flags": [ + "contact", + "protect" + ] }, { "name": "covet", @@ -1361,7 +1709,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "crabhammer", @@ -1372,7 +1724,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "crafty_shield", @@ -1394,7 +1750,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "cross_poison", @@ -1405,7 +1765,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "crunch", @@ -1416,7 +1780,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "bite"] + "flags": [ + "contact", + "protect", + "mirror", + "bite" + ] }, { "name": "crush_claw", @@ -1427,7 +1796,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "crush_grip", @@ -1438,7 +1811,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "curse", @@ -1449,7 +1826,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["ignore-substitute"] + "flags": [ + "ignore-substitute" + ] }, { "name": "cut", @@ -1460,7 +1839,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "dark_pulse", @@ -1471,7 +1854,12 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "distance", "pulse"] + "flags": [ + "protect", + "mirror", + "distance", + "pulse" + ] }, { "name": "dark_void", @@ -1482,7 +1870,11 @@ "priority": 0, "target": "AllOpponent", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "darkest_lariat", @@ -1493,7 +1885,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "dazzling_gleam", @@ -1504,7 +1900,10 @@ "priority": 0, "target": "AllOpponent", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "defend_order", @@ -1515,7 +1914,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "defense_curl", @@ -1526,7 +1927,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "defog", @@ -1537,7 +1940,12 @@ "priority": 0, "target": "Adjacent", "category": "status", - "flags": ["protect", "reflectable", "mirror", "ignore-substitute"] + "flags": [ + "protect", + "reflectable", + "mirror", + "ignore-substitute" + ] }, { "name": "destiny_bond", @@ -1548,7 +1956,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["ignore-substitute"] + "flags": [ + "ignore-substitute" + ] }, { "name": "detect", @@ -1592,7 +2002,10 @@ "priority": 0, "target": "AllOpponent", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "dig", @@ -1603,7 +2016,13 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "charge", "protect", "mirror", "nonskybattle"] + "flags": [ + "contact", + "charge", + "protect", + "mirror", + "nonskybattle" + ] }, { "name": "disable", @@ -1614,7 +2033,12 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror", "ignore-substitute"] + "flags": [ + "protect", + "reflectable", + "mirror", + "ignore-substitute" + ] }, { "name": "disarming_voice", @@ -1625,7 +2049,12 @@ "priority": 0, "target": "AllOpponent", "category": "special", - "flags": ["protect", "mirror", "sound", "ignore-substitute"] + "flags": [ + "protect", + "mirror", + "sound", + "ignore-substitute" + ] }, { "name": "discharge", @@ -1636,7 +2065,10 @@ "priority": 0, "target": "AllAdjacent", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "dive", @@ -1647,7 +2079,13 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "charge", "protect", "mirror", "nonskybattle"] + "flags": [ + "contact", + "charge", + "protect", + "mirror", + "nonskybattle" + ] }, { "name": "dizzy_punch", @@ -1658,7 +2096,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "punch"] + "flags": [ + "contact", + "protect", + "mirror", + "punch" + ] }, { "name": "doom_desire", @@ -1680,7 +2123,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "double_hit", @@ -1691,7 +2138,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "double_kick", @@ -1702,7 +2153,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "double_slap", @@ -1713,7 +2168,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "double_team", @@ -1724,7 +2183,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "draco_meteor", @@ -1735,7 +2196,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "dragon_ascent", @@ -1746,7 +2210,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "distance"] + "flags": [ + "contact", + "protect", + "mirror", + "distance" + ] }, { "name": "dragon_breath", @@ -1757,7 +2226,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "dragon_claw", @@ -1768,7 +2240,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "dragon_dance", @@ -1779,7 +2255,10 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch", "dance"] + "flags": [ + "snatch", + "dance" + ] }, { "name": "dragon_hammer", @@ -1790,7 +2269,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "dragon_pulse", @@ -1801,7 +2284,12 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "distance", "pulse"] + "flags": [ + "protect", + "mirror", + "distance", + "pulse" + ] }, { "name": "dragon_rage", @@ -1812,7 +2300,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "dragon_rush", @@ -1823,7 +2314,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "dragon_tail", @@ -1834,7 +2329,11 @@ "priority": -6, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "drain_punch", @@ -1845,7 +2344,13 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "punch", "heal"] + "flags": [ + "contact", + "protect", + "mirror", + "punch", + "heal" + ] }, { "name": "draining_kiss", @@ -1856,7 +2361,12 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["contact", "protect", "mirror", "heal"] + "flags": [ + "contact", + "protect", + "mirror", + "heal" + ] }, { "name": "dream_eater", @@ -1867,7 +2377,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "heal"] + "flags": [ + "protect", + "mirror", + "heal" + ] }, { "name": "drill_peck", @@ -1878,7 +2392,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "distance"] + "flags": [ + "contact", + "protect", + "mirror", + "distance" + ] }, { "name": "drill_run", @@ -1889,7 +2408,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "dual_chop", @@ -1900,7 +2423,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "dynamic_punch", @@ -1911,7 +2438,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "punch"] + "flags": [ + "contact", + "protect", + "mirror", + "punch" + ] }, { "name": "earth_power", @@ -1922,7 +2454,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "nonskybattle"] + "flags": [ + "protect", + "mirror", + "nonskybattle" + ] }, { "name": "earthquake", @@ -1933,7 +2469,11 @@ "priority": 0, "target": "All", "category": "physical", - "flags": ["protect", "mirror", "nonskybattle"] + "flags": [ + "protect", + "mirror", + "nonskybattle" + ] }, { "name": "echoed_voice", @@ -1944,7 +2484,12 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "sound", "ignore-substitute"] + "flags": [ + "protect", + "mirror", + "sound", + "ignore-substitute" + ] }, { "name": "eerie_impulse", @@ -1955,7 +2500,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "egg_bomb", @@ -1966,7 +2515,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror", "ballistics"] + "flags": [ + "protect", + "mirror", + "ballistics" + ] }, { "name": "electric_terrain", @@ -1977,7 +2530,9 @@ "priority": 0, "target": "All", "category": "status", - "flags": ["nonskybattle"] + "flags": [ + "nonskybattle" + ] }, { "name": "electrify", @@ -1988,7 +2543,10 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "electro_ball", @@ -1999,7 +2557,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "ballistics"] + "flags": [ + "protect", + "mirror", + "ballistics" + ] }, { "name": "electroweb", @@ -2010,7 +2572,10 @@ "priority": 0, "target": "AllOpponent", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "embargo", @@ -2021,7 +2586,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "ember", @@ -2032,7 +2601,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "encore", @@ -2060,7 +2632,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "endure", @@ -2082,7 +2658,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "ballistics"] + "flags": [ + "protect", + "mirror", + "ballistics" + ] }, { "name": "entrainment", @@ -2093,7 +2673,11 @@ "priority": 0, "target": "Adjacent", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "eruption", @@ -2104,7 +2688,10 @@ "priority": 0, "target": "AllOpponent", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "explosion", @@ -2115,7 +2702,10 @@ "priority": 0, "target": "All", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "extrasensory", @@ -2126,7 +2716,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "extreme_evoboost", @@ -2148,7 +2741,11 @@ "priority": 2, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "facade", @@ -2159,7 +2756,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "fairy_lock", @@ -2170,7 +2771,10 @@ "priority": 0, "target": "All", "category": "status", - "flags": ["mirror", "ignore-substitute"] + "flags": [ + "mirror", + "ignore-substitute" + ] }, { "name": "fairy_wind", @@ -2181,7 +2785,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "fake_out", @@ -2192,7 +2799,11 @@ "priority": 3, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "fake_tears", @@ -2203,7 +2814,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "false_swipe", @@ -2214,7 +2829,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "feather_dance", @@ -2225,7 +2844,12 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror", "dance"] + "flags": [ + "protect", + "reflectable", + "mirror", + "dance" + ] }, { "name": "feint", @@ -2236,7 +2860,9 @@ "priority": 2, "target": "Any", "category": "physical", - "flags": ["mirror"] + "flags": [ + "mirror" + ] }, { "name": "feint_attack", @@ -2247,7 +2873,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "fell_stinger", @@ -2258,7 +2888,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "fiery_dance", @@ -2269,7 +2903,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "dance"] + "flags": [ + "protect", + "mirror", + "dance" + ] }, { "name": "final_gambit", @@ -2280,7 +2918,9 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect"] + "flags": [ + "protect" + ] }, { "name": "fire_blast", @@ -2291,7 +2931,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "fire_fang", @@ -2302,7 +2945,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "bite"] + "flags": [ + "contact", + "protect", + "mirror", + "bite" + ] }, { "name": "fire_lash", @@ -2313,7 +2961,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "fire_pledge", @@ -2324,7 +2976,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "nonskybattle"] + "flags": [ + "protect", + "mirror", + "nonskybattle" + ] }, { "name": "fire_punch", @@ -2335,7 +2991,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "punch"] + "flags": [ + "contact", + "protect", + "mirror", + "punch" + ] }, { "name": "fire_spin", @@ -2346,7 +3007,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "first_impression", @@ -2357,7 +3021,11 @@ "priority": 2, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "fissure", @@ -2368,7 +3036,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror", "nonskybattle"] + "flags": [ + "protect", + "mirror", + "nonskybattle" + ] }, { "name": "flail", @@ -2379,7 +3051,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "flame_burst", @@ -2390,7 +3066,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "flame_charge", @@ -2401,7 +3080,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "flame_wheel", @@ -2412,7 +3095,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "defrost"] + "flags": [ + "contact", + "protect", + "mirror", + "defrost" + ] }, { "name": "flamethrower", @@ -2423,7 +3111,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "flare_blitz", @@ -2434,7 +3125,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "defrost"] + "flags": [ + "contact", + "protect", + "mirror", + "defrost" + ] }, { "name": "flash", @@ -2445,7 +3141,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "flash_cannon", @@ -2456,7 +3156,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "flatter", @@ -2467,7 +3170,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "fleur_cannon", @@ -2478,7 +3185,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "fling", @@ -2489,7 +3199,10 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "floral_healing", @@ -2500,7 +3213,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "heal"] + "flags": [ + "protect", + "reflectable", + "heal" + ] }, { "name": "flower_shield", @@ -2511,7 +3228,9 @@ "priority": 0, "target": "All", "category": "status", - "flags": ["distance"] + "flags": [ + "distance" + ] }, { "name": "fly", @@ -2522,7 +3241,14 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "charge", "protect", "mirror", "gravity", "distance"] + "flags": [ + "contact", + "charge", + "protect", + "mirror", + "gravity", + "distance" + ] }, { "name": "flying_press", @@ -2551,7 +3277,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "ballistics"] + "flags": [ + "protect", + "mirror", + "ballistics" + ] }, { "name": "focus_energy", @@ -2562,7 +3292,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "focus_punch", @@ -2573,7 +3305,11 @@ "priority": -3, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "punch"] + "flags": [ + "contact", + "protect", + "punch" + ] }, { "name": "follow_me", @@ -2595,7 +3331,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "foresight", @@ -2606,7 +3346,12 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror", "ignore-substitute"] + "flags": [ + "protect", + "reflectable", + "mirror", + "ignore-substitute" + ] }, { "name": "forests_curse", @@ -2617,7 +3362,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "foul_play", @@ -2628,7 +3377,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "freeze_dry", @@ -2639,7 +3392,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "freeze_shock", @@ -2650,7 +3406,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["charge", "protect", "mirror"] + "flags": [ + "charge", + "protect", + "mirror" + ] }, { "name": "frenzy_plant", @@ -2661,7 +3421,12 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["recharge", "protect", "mirror", "nonskybattle"] + "flags": [ + "recharge", + "protect", + "mirror", + "nonskybattle" + ] }, { "name": "frost_breath", @@ -2672,7 +3437,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "frustration", @@ -2683,7 +3451,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "fury_attack", @@ -2694,7 +3466,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "fury_cutter", @@ -2705,7 +3481,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "fury_swipes", @@ -2716,7 +3496,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "fusion_bolt", @@ -2727,7 +3511,10 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "fusion_flare", @@ -2738,7 +3525,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "defrost"] + "flags": [ + "protect", + "mirror", + "defrost" + ] }, { "name": "future_sight", @@ -2760,7 +3551,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "gear_grind", @@ -2771,7 +3566,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "gear_up", @@ -2782,7 +3581,10 @@ "priority": 0, "target": "AdjacentAllySelf", "category": "status", - "flags": ["snatch", "ignore-substitute"] + "flags": [ + "snatch", + "ignore-substitute" + ] }, { "name": "genesis_supernova", @@ -2804,7 +3606,10 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["charge", "nonskybattle"] + "flags": [ + "charge", + "nonskybattle" + ] }, { "name": "giga_drain", @@ -2815,7 +3620,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "heal"] + "flags": [ + "protect", + "mirror", + "heal" + ] }, { "name": "giga_impact", @@ -2826,7 +3635,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "recharge", "protect", "mirror"] + "flags": [ + "contact", + "recharge", + "protect", + "mirror" + ] }, { "name": "gigavolt_havoc__physical", @@ -2859,7 +3673,10 @@ "priority": 0, "target": "AllOpponent", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "glare", @@ -2870,7 +3687,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "grass_knot", @@ -2881,7 +3702,12 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["contact", "protect", "mirror", "nonskybattle"] + "flags": [ + "contact", + "protect", + "mirror", + "nonskybattle" + ] }, { "name": "grass_pledge", @@ -2892,7 +3718,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "nonskybattle"] + "flags": [ + "protect", + "mirror", + "nonskybattle" + ] }, { "name": "grass_whistle", @@ -2920,7 +3750,9 @@ "priority": 0, "target": "All", "category": "status", - "flags": ["nonskybattle"] + "flags": [ + "nonskybattle" + ] }, { "name": "gravity", @@ -2931,7 +3763,9 @@ "priority": 0, "target": "All", "category": "status", - "flags": ["nonskybattle"] + "flags": [ + "nonskybattle" + ] }, { "name": "growl", @@ -2952,7 +3786,9 @@ "effect": { "name": "ChangeTargetAtt", "chance": -1, - "parameters": [-1] + "parameters": [ + -1 + ] } }, { @@ -2964,7 +3800,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "grudge", @@ -2975,7 +3813,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["ignore-substitute"] + "flags": [ + "ignore-substitute" + ] }, { "name": "guard_split", @@ -2986,7 +3826,9 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect"] + "flags": [ + "protect" + ] }, { "name": "guard_swap", @@ -2997,7 +3839,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "mirror", "ignore-substitute"] + "flags": [ + "protect", + "mirror", + "ignore-substitute" + ] }, { "name": "guardian_of_alola", @@ -3019,7 +3865,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "gunk_shot", @@ -3030,7 +3880,10 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "gust", @@ -3041,7 +3894,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "distance"] + "flags": [ + "protect", + "mirror", + "distance" + ] }, { "name": "gyro_ball", @@ -3052,7 +3909,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "ballistics"] + "flags": [ + "contact", + "protect", + "mirror", + "ballistics" + ] }, { "name": "hail", @@ -3074,7 +3936,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "punch"] + "flags": [ + "contact", + "protect", + "mirror", + "punch" + ] }, { "name": "happy_hour", @@ -3096,7 +3963,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "haze", @@ -3107,7 +3976,9 @@ "priority": 0, "target": "All", "category": "status", - "flags": ["ignore-substitute"] + "flags": [ + "ignore-substitute" + ] }, { "name": "head_charge", @@ -3118,7 +3989,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "head_smash", @@ -3129,7 +4004,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "headbutt", @@ -3140,7 +4019,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "heal_bell", @@ -3151,7 +4034,12 @@ "priority": 0, "target": "AdjacentAllySelf", "category": "status", - "flags": ["snatch", "sound", "distance", "ignore-substitute"] + "flags": [ + "snatch", + "sound", + "distance", + "ignore-substitute" + ] }, { "name": "heal_block", @@ -3162,7 +4050,11 @@ "priority": 0, "target": "AllOpponent", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "heal_order", @@ -3173,7 +4065,10 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch", "heal"] + "flags": [ + "snatch", + "heal" + ] }, { "name": "heal_pulse", @@ -3184,7 +4079,13 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "distance", "heal", "pulse"] + "flags": [ + "protect", + "reflectable", + "distance", + "heal", + "pulse" + ] }, { "name": "healing_wish", @@ -3195,7 +4096,10 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch", "heal"] + "flags": [ + "snatch", + "heal" + ] }, { "name": "heart_stamp", @@ -3206,7 +4110,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "heart_swap", @@ -3217,7 +4125,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "mirror", "ignore-substitute"] + "flags": [ + "protect", + "mirror", + "ignore-substitute" + ] }, { "name": "heat_crash", @@ -3228,7 +4140,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "nonskybattle"] + "flags": [ + "contact", + "protect", + "mirror", + "nonskybattle" + ] }, { "name": "heat_wave", @@ -3239,7 +4156,10 @@ "priority": 0, "target": "AllOpponent", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "heavy_slam", @@ -3250,7 +4170,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "nonskybattle"] + "flags": [ + "contact", + "protect", + "mirror", + "nonskybattle" + ] }, { "name": "helping_hand", @@ -3261,7 +4186,9 @@ "priority": 5, "target": "AdjacentAlly", "category": "status", - "flags": ["ignore-substitute"] + "flags": [ + "ignore-substitute" + ] }, { "name": "hex", @@ -3272,7 +4199,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "hidden_power", @@ -3283,7 +4213,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "high_horsepower", @@ -3294,7 +4227,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "high_jump_kick", @@ -3305,7 +4242,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "gravity"] + "flags": [ + "contact", + "protect", + "mirror", + "gravity" + ] }, { "name": "hold_back", @@ -3316,7 +4258,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "hold_hands", @@ -3327,7 +4273,9 @@ "priority": 0, "target": "AdjacentAlly", "category": "status", - "flags": ["ignore-substitute"] + "flags": [ + "ignore-substitute" + ] }, { "name": "hone_claws", @@ -3338,7 +4286,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "horn_attack", @@ -3349,7 +4299,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "horn_drill", @@ -3360,7 +4314,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "horn_leech", @@ -3371,7 +4329,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "heal"] + "flags": [ + "contact", + "protect", + "mirror", + "heal" + ] }, { "name": "howl", @@ -3382,7 +4345,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "hurricane", @@ -3393,7 +4358,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "distance"] + "flags": [ + "protect", + "mirror", + "distance" + ] }, { "name": "hydro_cannon", @@ -3404,7 +4373,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["recharge", "protect", "mirror"] + "flags": [ + "recharge", + "protect", + "mirror" + ] }, { "name": "hydro_pump", @@ -3415,7 +4388,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "hydro_vortex__physical", @@ -3448,7 +4424,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["recharge", "protect", "mirror"] + "flags": [ + "recharge", + "protect", + "mirror" + ] }, { "name": "hyper_fang", @@ -3459,7 +4439,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "hyper_voice", @@ -3470,7 +4454,12 @@ "priority": 0, "target": "AllOpponent", "category": "special", - "flags": ["protect", "mirror", "sound", "ignore-substitute"] + "flags": [ + "protect", + "mirror", + "sound", + "ignore-substitute" + ] }, { "name": "hyperspace_fury", @@ -3481,7 +4470,10 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["mirror", "ignore-substitute"] + "flags": [ + "mirror", + "ignore-substitute" + ] }, { "name": "hyperspace_hole", @@ -3492,7 +4484,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["mirror", "ignore-substitute"] + "flags": [ + "mirror", + "ignore-substitute" + ] }, { "name": "hypnosis", @@ -3503,7 +4498,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "ice_ball", @@ -3514,7 +4513,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "ballistics"] + "flags": [ + "contact", + "protect", + "mirror", + "ballistics" + ] }, { "name": "ice_beam", @@ -3525,7 +4529,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "ice_burn", @@ -3536,7 +4543,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["charge", "protect", "mirror"] + "flags": [ + "charge", + "protect", + "mirror" + ] }, { "name": "ice_fang", @@ -3547,7 +4558,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "bite"] + "flags": [ + "contact", + "protect", + "mirror", + "bite" + ] }, { "name": "ice_hammer", @@ -3558,7 +4574,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "punch"] + "flags": [ + "contact", + "protect", + "mirror", + "punch" + ] }, { "name": "ice_punch", @@ -3569,7 +4590,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "punch"] + "flags": [ + "contact", + "protect", + "mirror", + "punch" + ] }, { "name": "ice_shard", @@ -3580,7 +4606,10 @@ "priority": 1, "target": "Any", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "icicle_crash", @@ -3591,7 +4620,10 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "icicle_spear", @@ -3602,7 +4634,10 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "icy_wind", @@ -3613,7 +4648,10 @@ "priority": 0, "target": "AllOpponent", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "imprison", @@ -3624,7 +4662,10 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch", "ignore-substitute"] + "flags": [ + "snatch", + "ignore-substitute" + ] }, { "name": "incinerate", @@ -3635,7 +4676,10 @@ "priority": 0, "target": "AllOpponent", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "inferno", @@ -3646,7 +4690,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "inferno_overdrive__physical", @@ -3679,7 +4726,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "ingrain", @@ -3690,7 +4741,10 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch", "nonskybattle"] + "flags": [ + "snatch", + "nonskybattle" + ] }, { "name": "instruct", @@ -3701,7 +4755,10 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "ignore-substitute"] + "flags": [ + "protect", + "ignore-substitute" + ] }, { "name": "ion_deluge", @@ -3723,7 +4780,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "iron_head", @@ -3734,7 +4793,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "iron_tail", @@ -3745,7 +4808,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "judgment", @@ -3756,7 +4823,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "jump_kick", @@ -3767,7 +4837,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "gravity"] + "flags": [ + "contact", + "protect", + "mirror", + "gravity" + ] }, { "name": "karate_chop", @@ -3778,7 +4853,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "kinesis", @@ -3789,7 +4868,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "kings_shield", @@ -3811,7 +4894,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "lands_wrath", @@ -3822,7 +4909,11 @@ "priority": 0, "target": "AllOpponent", "category": "physical", - "flags": ["protect", "mirror", "nonskybattle"] + "flags": [ + "protect", + "mirror", + "nonskybattle" + ] }, { "name": "laser_focus", @@ -3833,7 +4924,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "last_resort", @@ -3844,7 +4937,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "lava_plume", @@ -3855,7 +4952,10 @@ "priority": 0, "target": "All", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "leaf_blade", @@ -3866,7 +4966,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "leaf_storm", @@ -3877,7 +4981,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "leaf_tornado", @@ -3888,7 +4995,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "leafage", @@ -3899,7 +5009,10 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "leech_life", @@ -3910,7 +5023,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "heal"] + "flags": [ + "contact", + "protect", + "mirror", + "heal" + ] }, { "name": "leech_seed", @@ -3921,7 +5039,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "leer", @@ -3932,11 +5054,17 @@ "priority": 0, "target": "AllOpponent", "category": "status", - "flags": ["protect", "reflectable", "mirror"], + "flags": [ + "protect", + "reflectable", + "mirror" + ], "effect": { "name": "ChangeTargetDef", "chance": -1, - "parameters": [-1] + "parameters": [ + -1 + ] } }, { @@ -3948,7 +5076,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "light_of_ruin", @@ -3959,7 +5091,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "light_screen", @@ -3970,7 +5105,9 @@ "priority": 0, "target": "AllAlly", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "liquidation", @@ -3981,7 +5118,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "lock_on", @@ -3992,7 +5133,10 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "lovely_kiss", @@ -4003,7 +5147,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "low_kick", @@ -4014,7 +5162,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "low_sweep", @@ -4025,7 +5177,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "lucky_chant", @@ -4036,7 +5192,9 @@ "priority": 0, "target": "AllAlly", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "lunar_dance", @@ -4047,7 +5205,11 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch", "heal", "dance"] + "flags": [ + "snatch", + "heal", + "dance" + ] }, { "name": "lunge", @@ -4058,7 +5220,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "luster_purge", @@ -4069,7 +5235,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "mach_punch", @@ -4080,7 +5249,12 @@ "priority": 1, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "punch"] + "flags": [ + "contact", + "protect", + "mirror", + "punch" + ] }, { "name": "magic_coat", @@ -4102,7 +5276,9 @@ "priority": 0, "target": "All", "category": "status", - "flags": ["mirror"] + "flags": [ + "mirror" + ] }, { "name": "magical_leaf", @@ -4113,7 +5289,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "magma_storm", @@ -4124,7 +5303,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "magnet_bomb", @@ -4135,7 +5317,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror", "ballistics"] + "flags": [ + "protect", + "mirror", + "ballistics" + ] }, { "name": "magnet_rise", @@ -4146,7 +5332,10 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch", "gravity"] + "flags": [ + "snatch", + "gravity" + ] }, { "name": "magnetic_flux", @@ -4157,7 +5346,11 @@ "priority": 0, "target": "AdjacentAllySelf", "category": "status", - "flags": ["snatch", "distance", "ignore-substitute"] + "flags": [ + "snatch", + "distance", + "ignore-substitute" + ] }, { "name": "magnitude", @@ -4168,7 +5361,11 @@ "priority": 0, "target": "All", "category": "physical", - "flags": ["protect", "mirror", "nonskybattle"] + "flags": [ + "protect", + "mirror", + "nonskybattle" + ] }, { "name": "malicious_moonsault", @@ -4179,7 +5376,9 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact"] + "flags": [ + "contact" + ] }, { "name": "mat_block", @@ -4190,7 +5389,10 @@ "priority": 0, "target": "AllAlly", "category": "status", - "flags": ["snatch", "nonskybattle"] + "flags": [ + "snatch", + "nonskybattle" + ] }, { "name": "me_first", @@ -4201,7 +5403,10 @@ "priority": 0, "target": "AdjacentOpponent", "category": "status", - "flags": ["protect", "ignore-substitute"] + "flags": [ + "protect", + "ignore-substitute" + ] }, { "name": "mean_look", @@ -4212,7 +5417,10 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["reflectable", "mirror"] + "flags": [ + "reflectable", + "mirror" + ] }, { "name": "meditate", @@ -4223,7 +5431,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "mega_drain", @@ -4234,7 +5444,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "heal"] + "flags": [ + "protect", + "mirror", + "heal" + ] }, { "name": "mega_kick", @@ -4245,7 +5459,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "mega_punch", @@ -4256,7 +5474,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "punch"] + "flags": [ + "contact", + "protect", + "mirror", + "punch" + ] }, { "name": "megahorn", @@ -4267,7 +5490,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "memento", @@ -4278,7 +5505,10 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "metal_burst", @@ -4289,7 +5519,10 @@ "priority": 0, "target": "Self", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "metal_claw", @@ -4300,7 +5533,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "metal_sound", @@ -4328,7 +5565,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "punch"] + "flags": [ + "contact", + "protect", + "mirror", + "punch" + ] }, { "name": "metronome", @@ -4350,7 +5592,10 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch", "heal"] + "flags": [ + "snatch", + "heal" + ] }, { "name": "mimic", @@ -4361,7 +5606,10 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "ignore-substitute"] + "flags": [ + "protect", + "ignore-substitute" + ] }, { "name": "mind_reader", @@ -4372,7 +5620,10 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "minimize", @@ -4383,7 +5634,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "miracle_eye", @@ -4394,7 +5647,12 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror", "ignore-substitute"] + "flags": [ + "protect", + "reflectable", + "mirror", + "ignore-substitute" + ] }, { "name": "mirror_coat", @@ -4405,7 +5663,9 @@ "priority": -5, "target": "Self", "category": "special", - "flags": ["protect"] + "flags": [ + "protect" + ] }, { "name": "mirror_move", @@ -4427,7 +5687,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "mist", @@ -4438,7 +5701,9 @@ "priority": 0, "target": "AllAlly", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "mist_ball", @@ -4449,7 +5714,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "misty_terrain", @@ -4460,7 +5728,9 @@ "priority": 0, "target": "All", "category": "status", - "flags": ["nonskybattle"] + "flags": [ + "nonskybattle" + ] }, { "name": "moonblast", @@ -4471,7 +5741,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "moongeist_beam", @@ -4482,7 +5755,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "moonlight", @@ -4493,7 +5769,10 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch", "heal"] + "flags": [ + "snatch", + "heal" + ] }, { "name": "morning_sun", @@ -4504,7 +5783,10 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch", "heal"] + "flags": [ + "snatch", + "heal" + ] }, { "name": "mud_bomb", @@ -4515,7 +5797,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "ballistics"] + "flags": [ + "protect", + "mirror", + "ballistics" + ] }, { "name": "mud_shot", @@ -4526,7 +5812,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "mud_slap", @@ -4537,7 +5826,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "mud_sport", @@ -4548,7 +5840,9 @@ "priority": 0, "target": "All", "category": "status", - "flags": ["nonskybattle"] + "flags": [ + "nonskybattle" + ] }, { "name": "muddy_water", @@ -4559,7 +5853,11 @@ "priority": 0, "target": "AllOpponent", "category": "special", - "flags": ["protect", "mirror", "nonskybattle"] + "flags": [ + "protect", + "mirror", + "nonskybattle" + ] }, { "name": "multi_attack", @@ -4570,7 +5868,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "mystical_fire", @@ -4581,7 +5883,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "nasty_plot", @@ -4592,7 +5897,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "natural_gift", @@ -4603,7 +5910,10 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "nature_power", @@ -4625,7 +5935,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "needle_arm", @@ -4636,7 +5949,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "never_ending_nightmare__physical", @@ -4669,7 +5986,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "night_shade", @@ -4680,7 +6000,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "night_slash", @@ -4691,7 +6014,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "nightmare", @@ -4702,7 +6029,10 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "noble_roar", @@ -4730,7 +6060,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "oblivion_wing", @@ -4741,7 +6075,12 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "distance", "heal"] + "flags": [ + "protect", + "mirror", + "distance", + "heal" + ] }, { "name": "oceanic_operetta", @@ -4763,7 +6102,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "ballistics"] + "flags": [ + "protect", + "mirror", + "ballistics" + ] }, { "name": "odor_sleuth", @@ -4774,7 +6117,12 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror", "ignore-substitute"] + "flags": [ + "protect", + "reflectable", + "mirror", + "ignore-substitute" + ] }, { "name": "ominous_wind", @@ -4785,7 +6133,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "origin_pulse", @@ -4796,7 +6147,10 @@ "priority": 0, "target": "AllOpponent", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "outrage", @@ -4807,7 +6161,11 @@ "priority": 0, "target": "RandomOpponent", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "overheat", @@ -4818,7 +6176,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "pain_split", @@ -4829,7 +6190,10 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "parabolic_charge", @@ -4840,7 +6204,11 @@ "priority": 0, "target": "All", "category": "special", - "flags": ["protect", "mirror", "heal"] + "flags": [ + "protect", + "mirror", + "heal" + ] }, { "name": "parting_shot", @@ -4868,7 +6236,10 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "payback", @@ -4879,7 +6250,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "peck", @@ -4890,7 +6265,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "distance"] + "flags": [ + "contact", + "protect", + "mirror", + "distance" + ] }, { "name": "perish_song", @@ -4901,7 +6281,11 @@ "priority": 0, "target": "All", "category": "status", - "flags": ["sound", "distance", "ignore-substitute"] + "flags": [ + "sound", + "distance", + "ignore-substitute" + ] }, { "name": "petal_blizzard", @@ -4912,7 +6296,10 @@ "priority": 0, "target": "All", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "petal_dance", @@ -4923,7 +6310,12 @@ "priority": 0, "target": "RandomOpponent", "category": "special", - "flags": ["contact", "protect", "mirror", "dance"] + "flags": [ + "contact", + "protect", + "mirror", + "dance" + ] }, { "name": "phantom_force", @@ -4934,7 +6326,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "charge", "mirror"] + "flags": [ + "contact", + "charge", + "mirror" + ] }, { "name": "pin_missile", @@ -4945,7 +6341,10 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "play_nice", @@ -4956,7 +6355,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["reflectable", "mirror", "ignore-substitute"] + "flags": [ + "reflectable", + "mirror", + "ignore-substitute" + ] }, { "name": "play_rough", @@ -4967,7 +6370,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "pluck", @@ -4978,7 +6385,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "distance"] + "flags": [ + "contact", + "protect", + "mirror", + "distance" + ] }, { "name": "poison_fang", @@ -4989,7 +6401,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "bite"] + "flags": [ + "contact", + "protect", + "mirror", + "bite" + ] }, { "name": "poison_gas", @@ -5000,7 +6417,11 @@ "priority": 0, "target": "AllOpponent", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "poison_jab", @@ -5011,7 +6432,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "poison_powder", @@ -5022,7 +6447,12 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror", "powder"] + "flags": [ + "protect", + "reflectable", + "mirror", + "powder" + ] }, { "name": "poison_sting", @@ -5033,7 +6463,10 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "poison_tail", @@ -5044,7 +6477,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "pollen_puff", @@ -5055,7 +6492,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "pound", @@ -5066,7 +6506,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "powder", @@ -5094,7 +6538,10 @@ "priority": 0, "target": "AllOpponent", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "power_gem", @@ -5105,7 +6552,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "power_split", @@ -5116,7 +6566,9 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect"] + "flags": [ + "protect" + ] }, { "name": "power_swap", @@ -5127,7 +6579,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "mirror", "ignore-substitute"] + "flags": [ + "protect", + "mirror", + "ignore-substitute" + ] }, { "name": "power_trick", @@ -5138,7 +6594,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "power_trip", @@ -5149,7 +6607,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "power_up_punch", @@ -5160,7 +6622,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "punch"] + "flags": [ + "contact", + "protect", + "mirror", + "punch" + ] }, { "name": "power_whip", @@ -5171,7 +6638,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "precipice_blades", @@ -5182,7 +6653,11 @@ "priority": 0, "target": "AllOpponent", "category": "physical", - "flags": ["protect", "mirror", "nonskybattle"] + "flags": [ + "protect", + "mirror", + "nonskybattle" + ] }, { "name": "present", @@ -5193,7 +6668,10 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "prismatic_laser", @@ -5204,7 +6682,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["recharge", "protect", "mirror"] + "flags": [ + "recharge", + "protect", + "mirror" + ] }, { "name": "protect", @@ -5226,7 +6708,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "psych_up", @@ -5237,7 +6722,9 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["ignore-substitute"] + "flags": [ + "ignore-substitute" + ] }, { "name": "psychic", @@ -5248,7 +6735,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "psychic_fangs", @@ -5259,7 +6749,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "psychic_terrain", @@ -5270,7 +6764,9 @@ "priority": 0, "target": "All", "category": "status", - "flags": ["nonskybattle"] + "flags": [ + "nonskybattle" + ] }, { "name": "psycho_boost", @@ -5281,7 +6777,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "psycho_cut", @@ -5292,7 +6791,10 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "psycho_shift", @@ -5303,7 +6805,10 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "psyshock", @@ -5314,7 +6819,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "psystrike", @@ -5325,7 +6833,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "psywave", @@ -5336,7 +6847,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "pulverizing_pancake", @@ -5347,7 +6861,9 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact"] + "flags": [ + "contact" + ] }, { "name": "punishment", @@ -5358,7 +6874,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "purify", @@ -5369,7 +6889,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "heal"] + "flags": [ + "protect", + "reflectable", + "heal" + ] }, { "name": "pursuit", @@ -5380,7 +6904,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "quash", @@ -5391,7 +6919,10 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "quick_attack", @@ -5402,7 +6933,11 @@ "priority": 1, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "quick_guard", @@ -5413,7 +6948,9 @@ "priority": 3, "target": "AllAlly", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "quiver_dance", @@ -5424,7 +6961,10 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch", "dance"] + "flags": [ + "snatch", + "dance" + ] }, { "name": "rage", @@ -5435,7 +6975,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "rage_powder", @@ -5446,7 +6990,9 @@ "priority": 2, "target": "Self", "category": "status", - "flags": ["powder"] + "flags": [ + "powder" + ] }, { "name": "rain_dance", @@ -5468,7 +7014,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "razor_leaf", @@ -5479,7 +7029,10 @@ "priority": 0, "target": "AllOpponent", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "razor_shell", @@ -5490,7 +7043,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "razor_wind", @@ -5501,7 +7058,11 @@ "priority": 0, "target": "AllOpponent", "category": "special", - "flags": ["charge", "protect", "mirror"] + "flags": [ + "charge", + "protect", + "mirror" + ] }, { "name": "recover", @@ -5512,7 +7073,10 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch", "heal"] + "flags": [ + "snatch", + "heal" + ] }, { "name": "recycle", @@ -5523,7 +7087,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "reflect", @@ -5534,7 +7100,9 @@ "priority": 0, "target": "AllAlly", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "reflect_type", @@ -5545,7 +7113,10 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "ignore-substitute"] + "flags": [ + "protect", + "ignore-substitute" + ] }, { "name": "refresh", @@ -5556,7 +7127,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "relic_song", @@ -5567,7 +7140,12 @@ "priority": 0, "target": "AllOpponent", "category": "special", - "flags": ["protect", "mirror", "sound", "ignore-substitute"] + "flags": [ + "protect", + "mirror", + "sound", + "ignore-substitute" + ] }, { "name": "rest", @@ -5578,7 +7156,10 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch", "heal"] + "flags": [ + "snatch", + "heal" + ] }, { "name": "retaliate", @@ -5589,7 +7170,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "return", @@ -5600,7 +7185,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "revelation_dance", @@ -5611,7 +7200,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "dance"] + "flags": [ + "protect", + "mirror", + "dance" + ] }, { "name": "revenge", @@ -5622,7 +7215,11 @@ "priority": -4, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "reversal", @@ -5633,7 +7230,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "roar", @@ -5644,7 +7245,12 @@ "priority": -6, "target": "Any", "category": "status", - "flags": ["reflectable", "mirror", "sound", "ignore-substitute"] + "flags": [ + "reflectable", + "mirror", + "sound", + "ignore-substitute" + ] }, { "name": "roar_of_time", @@ -5655,7 +7261,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["recharge", "protect", "mirror"] + "flags": [ + "recharge", + "protect", + "mirror" + ] }, { "name": "rock_blast", @@ -5666,7 +7276,10 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "rock_climb", @@ -5677,7 +7290,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "rock_polish", @@ -5688,7 +7305,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "rock_slide", @@ -5699,7 +7318,10 @@ "priority": 0, "target": "AllOpponent", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "rock_smash", @@ -5710,7 +7332,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "rock_throw", @@ -5721,7 +7347,10 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "rock_tomb", @@ -5732,7 +7361,10 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "rock_wrecker", @@ -5743,7 +7375,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["recharge", "protect", "mirror"] + "flags": [ + "recharge", + "protect", + "mirror" + ] }, { "name": "role_play", @@ -5754,7 +7390,9 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["ignore-substitute"] + "flags": [ + "ignore-substitute" + ] }, { "name": "rolling_kick", @@ -5765,7 +7403,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "rollout", @@ -5776,7 +7418,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "roost", @@ -5787,7 +7433,10 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch", "heal"] + "flags": [ + "snatch", + "heal" + ] }, { "name": "rototiller", @@ -5798,7 +7447,10 @@ "priority": 0, "target": "All", "category": "status", - "flags": ["distance", "nonskybattle"] + "flags": [ + "distance", + "nonskybattle" + ] }, { "name": "round", @@ -5809,7 +7461,12 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "sound", "ignore-substitute"] + "flags": [ + "protect", + "mirror", + "sound", + "ignore-substitute" + ] }, { "name": "sacred_fire", @@ -5820,7 +7477,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror", "defrost"] + "flags": [ + "protect", + "mirror", + "defrost" + ] }, { "name": "sacred_sword", @@ -5831,7 +7492,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "safeguard", @@ -5842,7 +7507,9 @@ "priority": 0, "target": "AllAlly", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "sand_attack", @@ -5853,7 +7520,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "sand_tomb", @@ -5864,7 +7535,10 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "sandstorm", @@ -5908,7 +7582,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "defrost"] + "flags": [ + "protect", + "mirror", + "defrost" + ] }, { "name": "scary_face", @@ -5919,7 +7597,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "scratch", @@ -5930,7 +7612,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "screech", @@ -5958,7 +7644,10 @@ "priority": 0, "target": "All", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "secret_power", @@ -5969,7 +7658,10 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "secret_sword", @@ -5980,7 +7672,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "seed_bomb", @@ -5991,7 +7686,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror", "ballistics"] + "flags": [ + "protect", + "mirror", + "ballistics" + ] }, { "name": "seed_flare", @@ -6002,7 +7701,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "seismic_toss", @@ -6013,7 +7715,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "nonskybattle"] + "flags": [ + "contact", + "protect", + "mirror", + "nonskybattle" + ] }, { "name": "self_destruct", @@ -6024,7 +7731,10 @@ "priority": 0, "target": "All", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "shadow_ball", @@ -6035,7 +7745,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "ballistics"] + "flags": [ + "protect", + "mirror", + "ballistics" + ] }, { "name": "shadow_bone", @@ -6046,7 +7760,10 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "shadow_claw", @@ -6057,7 +7774,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "shadow_force", @@ -6068,7 +7789,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "charge", "mirror"] + "flags": [ + "contact", + "charge", + "mirror" + ] }, { "name": "shadow_punch", @@ -6079,7 +7804,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "punch"] + "flags": [ + "contact", + "protect", + "mirror", + "punch" + ] }, { "name": "shadow_sneak", @@ -6090,7 +7820,11 @@ "priority": 1, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "sharpen", @@ -6101,7 +7835,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "shattered_psyche__physical", @@ -6134,7 +7870,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "shell_smash", @@ -6145,7 +7884,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "shell_trap", @@ -6156,7 +7897,9 @@ "priority": -3, "target": "AllOpponent", "category": "special", - "flags": ["protect"] + "flags": [ + "protect" + ] }, { "name": "shift_gear", @@ -6167,7 +7910,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "shock_wave", @@ -6178,7 +7923,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "shore_up", @@ -6189,7 +7937,10 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch", "heal"] + "flags": [ + "snatch", + "heal" + ] }, { "name": "signal_beam", @@ -6200,7 +7951,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "silver_wind", @@ -6211,7 +7965,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "simple_beam", @@ -6222,7 +7979,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "sing", @@ -6261,7 +8022,9 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["ignore-substitute"] + "flags": [ + "ignore-substitute" + ] }, { "name": "skill_swap", @@ -6272,7 +8035,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "mirror", "ignore-substitute"] + "flags": [ + "protect", + "mirror", + "ignore-substitute" + ] }, { "name": "skull_bash", @@ -6283,7 +8050,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "charge", "protect", "mirror"] + "flags": [ + "contact", + "charge", + "protect", + "mirror" + ] }, { "name": "sky_attack", @@ -6294,7 +8066,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["charge", "protect", "mirror", "distance"] + "flags": [ + "charge", + "protect", + "mirror", + "distance" + ] }, { "name": "sky_drop", @@ -6305,7 +8082,14 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "charge", "protect", "mirror", "gravity", "distance"] + "flags": [ + "contact", + "charge", + "protect", + "mirror", + "gravity", + "distance" + ] }, { "name": "sky_uppercut", @@ -6316,7 +8100,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "punch"] + "flags": [ + "contact", + "protect", + "mirror", + "punch" + ] }, { "name": "slack_off", @@ -6327,7 +8116,10 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch", "heal"] + "flags": [ + "snatch", + "heal" + ] }, { "name": "slam", @@ -6338,7 +8130,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "nonskybattle"] + "flags": [ + "contact", + "protect", + "mirror", + "nonskybattle" + ] }, { "name": "slash", @@ -6349,7 +8146,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "sleep_powder", @@ -6360,7 +8161,12 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror", "powder"] + "flags": [ + "protect", + "reflectable", + "mirror", + "powder" + ] }, { "name": "sleep_talk", @@ -6382,7 +8188,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "sludge_bomb", @@ -6393,7 +8202,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "ballistics"] + "flags": [ + "protect", + "mirror", + "ballistics" + ] }, { "name": "sludge_wave", @@ -6404,7 +8217,10 @@ "priority": 0, "target": "All", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "smack_down", @@ -6415,7 +8231,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror", "nonskybattle"] + "flags": [ + "protect", + "mirror", + "nonskybattle" + ] }, { "name": "smart_strike", @@ -6426,7 +8246,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "smelling_salts", @@ -6437,7 +8261,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "smog", @@ -6448,7 +8276,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "smokescreen", @@ -6459,7 +8290,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "snarl", @@ -6470,7 +8305,12 @@ "priority": 0, "target": "AllOpponent", "category": "special", - "flags": ["protect", "mirror", "sound", "ignore-substitute"] + "flags": [ + "protect", + "mirror", + "sound", + "ignore-substitute" + ] }, { "name": "snatch", @@ -6481,7 +8321,9 @@ "priority": 4, "target": "Self", "category": "status", - "flags": ["ignore-substitute"] + "flags": [ + "ignore-substitute" + ] }, { "name": "snore", @@ -6492,7 +8334,12 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "sound", "ignore-substitute"] + "flags": [ + "protect", + "mirror", + "sound", + "ignore-substitute" + ] }, { "name": "soak", @@ -6503,7 +8350,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "soft_boiled", @@ -6514,7 +8365,10 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch", "heal"] + "flags": [ + "snatch", + "heal" + ] }, { "name": "solar_beam", @@ -6525,7 +8379,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["charge", "protect", "mirror"] + "flags": [ + "charge", + "protect", + "mirror" + ] }, { "name": "solar_blade", @@ -6536,7 +8394,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "charge", "protect", "mirror"] + "flags": [ + "contact", + "charge", + "protect", + "mirror" + ] }, { "name": "sonic_boom", @@ -6547,7 +8410,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "soul_stealing_7_star_strike", @@ -6558,7 +8424,9 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact"] + "flags": [ + "contact" + ] }, { "name": "spacial_rend", @@ -6569,7 +8437,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "spark", @@ -6580,7 +8451,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "sparkling_aria", @@ -6591,7 +8466,12 @@ "priority": 0, "target": "All", "category": "special", - "flags": ["protect", "mirror", "sound", "ignore-substitute"] + "flags": [ + "protect", + "mirror", + "sound", + "ignore-substitute" + ] }, { "name": "spectral_thief", @@ -6602,7 +8482,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "ignore-substitute"] + "flags": [ + "contact", + "protect", + "mirror", + "ignore-substitute" + ] }, { "name": "speed_swap", @@ -6613,7 +8498,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "mirror", "ignore-substitute"] + "flags": [ + "protect", + "mirror", + "ignore-substitute" + ] }, { "name": "spider_web", @@ -6624,7 +8513,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "spike_cannon", @@ -6635,7 +8528,10 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "spikes", @@ -6646,7 +8542,10 @@ "priority": 0, "target": "AllOpponent", "category": "status", - "flags": ["reflectable", "nonskybattle"] + "flags": [ + "reflectable", + "nonskybattle" + ] }, { "name": "spiky_shield", @@ -6668,7 +8567,10 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "spit_up", @@ -6679,7 +8581,9 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect"] + "flags": [ + "protect" + ] }, { "name": "spite", @@ -6690,7 +8594,12 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror", "ignore-substitute"] + "flags": [ + "protect", + "reflectable", + "mirror", + "ignore-substitute" + ] }, { "name": "splash", @@ -6701,7 +8610,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["gravity"] + "flags": [ + "gravity" + ] }, { "name": "spore", @@ -6712,7 +8623,12 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror", "powder"] + "flags": [ + "protect", + "reflectable", + "mirror", + "powder" + ] }, { "name": "spotlight", @@ -6723,7 +8639,10 @@ "priority": 3, "target": "Any", "category": "status", - "flags": ["protect", "reflectable"] + "flags": [ + "protect", + "reflectable" + ] }, { "name": "stealth_rock", @@ -6734,7 +8653,9 @@ "priority": 0, "target": "AllOpponent", "category": "status", - "flags": ["reflectable"] + "flags": [ + "reflectable" + ] }, { "name": "steam_eruption", @@ -6745,7 +8666,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "defrost"] + "flags": [ + "protect", + "mirror", + "defrost" + ] }, { "name": "steamroller", @@ -6756,7 +8681,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "steel_wing", @@ -6767,7 +8696,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "sticky_web", @@ -6778,7 +8711,9 @@ "priority": 0, "target": "AllOpponent", "category": "status", - "flags": ["reflectable"] + "flags": [ + "reflectable" + ] }, { "name": "stockpile", @@ -6789,7 +8724,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "stoked_sparksurfer", @@ -6811,7 +8748,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "nonskybattle"] + "flags": [ + "contact", + "protect", + "mirror", + "nonskybattle" + ] }, { "name": "stomping_tantrum", @@ -6822,7 +8764,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "stone_edge", @@ -6833,7 +8779,10 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "stored_power", @@ -6844,7 +8793,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "storm_throw", @@ -6855,7 +8807,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "strength", @@ -6866,7 +8822,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "strength_sap", @@ -6877,7 +8837,12 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror", "heal"] + "flags": [ + "protect", + "reflectable", + "mirror", + "heal" + ] }, { "name": "string_shot", @@ -6888,7 +8853,11 @@ "priority": 0, "target": "AllOpponent", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "struggle_bug", @@ -6899,7 +8868,10 @@ "priority": 0, "target": "AllOpponent", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "stun_spore", @@ -6910,7 +8882,12 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror", "powder"] + "flags": [ + "protect", + "reflectable", + "mirror", + "powder" + ] }, { "name": "submission", @@ -6921,7 +8898,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "substitute", @@ -6932,7 +8913,10 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch", "nonskybattle"] + "flags": [ + "snatch", + "nonskybattle" + ] }, { "name": "subzero_slammer__physical", @@ -6965,7 +8949,11 @@ "priority": 1, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "sunny_day", @@ -6987,7 +8975,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "super_fang", @@ -6998,7 +8990,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "superpower", @@ -7009,7 +9005,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "supersonic", @@ -7059,7 +9059,11 @@ "priority": 0, "target": "All", "category": "special", - "flags": ["protect", "mirror", "nonskybattle"] + "flags": [ + "protect", + "mirror", + "nonskybattle" + ] }, { "name": "swagger", @@ -7070,7 +9074,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "swallow", @@ -7081,7 +9089,10 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch", "heal"] + "flags": [ + "snatch", + "heal" + ] }, { "name": "sweet_kiss", @@ -7092,7 +9103,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "sweet_scent", @@ -7103,7 +9118,11 @@ "priority": 0, "target": "AllOpponent", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "swift", @@ -7114,7 +9133,10 @@ "priority": 0, "target": "AllOpponent", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "switcheroo", @@ -7125,7 +9147,10 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "swords_dance", @@ -7136,7 +9161,10 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch", "dance"] + "flags": [ + "snatch", + "dance" + ] }, { "name": "synchronoise", @@ -7147,7 +9175,10 @@ "priority": 0, "target": "All", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "synthesis", @@ -7158,7 +9189,10 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch", "heal"] + "flags": [ + "snatch", + "heal" + ] }, { "name": "tackle", @@ -7169,7 +9203,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "tail_glow", @@ -7180,7 +9218,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "tail_slap", @@ -7191,7 +9231,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "tail_whip", @@ -7202,7 +9246,11 @@ "priority": 0, "target": "AllOpponent", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "tailwind", @@ -7213,7 +9261,9 @@ "priority": 0, "target": "AllAlly", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "take_down", @@ -7224,7 +9274,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "taunt", @@ -7252,7 +9306,10 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["reflectable", "mirror"] + "flags": [ + "reflectable", + "mirror" + ] }, { "name": "techno_blast", @@ -7263,7 +9320,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "tectonic_rage__physical", @@ -7296,7 +9356,11 @@ "priority": 0, "target": "All", "category": "status", - "flags": ["protect", "mirror", "dance"] + "flags": [ + "protect", + "mirror", + "dance" + ] }, { "name": "telekinesis", @@ -7307,7 +9371,12 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror", "gravity"] + "flags": [ + "protect", + "reflectable", + "mirror", + "gravity" + ] }, { "name": "teleport", @@ -7329,7 +9398,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "thousand_arrows", @@ -7340,7 +9413,11 @@ "priority": 0, "target": "AllOpponent", "category": "physical", - "flags": ["protect", "mirror", "nonskybattle"] + "flags": [ + "protect", + "mirror", + "nonskybattle" + ] }, { "name": "thousand_waves", @@ -7351,7 +9428,11 @@ "priority": 0, "target": "AllOpponent", "category": "physical", - "flags": ["protect", "mirror", "nonskybattle"] + "flags": [ + "protect", + "mirror", + "nonskybattle" + ] }, { "name": "thrash", @@ -7362,7 +9443,11 @@ "priority": 0, "target": "RandomOpponent", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "throat_chop", @@ -7373,7 +9458,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "thunder", @@ -7384,7 +9473,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "thunder_fang", @@ -7395,7 +9487,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "bite"] + "flags": [ + "contact", + "protect", + "mirror", + "bite" + ] }, { "name": "thunder_punch", @@ -7406,7 +9503,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "punch"] + "flags": [ + "contact", + "protect", + "mirror", + "punch" + ] }, { "name": "thunder_shock", @@ -7417,7 +9519,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "thunder_wave", @@ -7428,7 +9533,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "thunderbolt", @@ -7439,7 +9548,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "tickle", @@ -7450,7 +9562,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "topsy_turvy", @@ -7461,7 +9577,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "torment", @@ -7489,7 +9609,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "toxic_spikes", @@ -7500,7 +9624,10 @@ "priority": 0, "target": "AllOpponent", "category": "status", - "flags": ["reflectable", "nonskybattle"] + "flags": [ + "reflectable", + "nonskybattle" + ] }, { "name": "toxic_thread", @@ -7511,7 +9638,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "transform", @@ -7533,7 +9664,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "trick", @@ -7544,7 +9678,10 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "trick_or_treat", @@ -7555,7 +9692,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "trick_room", @@ -7566,7 +9707,9 @@ "priority": -7, "target": "All", "category": "status", - "flags": ["mirror"] + "flags": [ + "mirror" + ] }, { "name": "triple_kick", @@ -7577,7 +9720,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "trop_kick", @@ -7588,7 +9735,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "trump_card", @@ -7599,7 +9750,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "twineedle", @@ -7610,7 +9765,10 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "twinkle_tackle__physical", @@ -7643,7 +9801,10 @@ "priority": 0, "target": "AllOpponent", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "u_turn", @@ -7654,7 +9815,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "uproar", @@ -7665,7 +9830,12 @@ "priority": 0, "target": "RandomOpponent", "category": "special", - "flags": ["protect", "mirror", "sound", "ignore-substitute"] + "flags": [ + "protect", + "mirror", + "sound", + "ignore-substitute" + ] }, { "name": "v_create", @@ -7676,7 +9846,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "vacuum_wave", @@ -7687,7 +9861,10 @@ "priority": 1, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "venom_drench", @@ -7698,7 +9875,11 @@ "priority": 0, "target": "AllOpponent", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "venoshock", @@ -7709,7 +9890,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "vice_grip", @@ -7720,7 +9904,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "vine_whip", @@ -7731,7 +9919,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "vital_throw", @@ -7742,7 +9934,11 @@ "priority": -1, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "volt_switch", @@ -7753,7 +9949,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "volt_tackle", @@ -7764,7 +9963,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "wake_up_slap", @@ -7775,7 +9978,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "water_gun", @@ -7786,7 +9993,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "water_pledge", @@ -7797,7 +10007,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "nonskybattle"] + "flags": [ + "protect", + "mirror", + "nonskybattle" + ] }, { "name": "water_pulse", @@ -7808,7 +10022,12 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "distance", "pulse"] + "flags": [ + "protect", + "mirror", + "distance", + "pulse" + ] }, { "name": "water_shuriken", @@ -7819,7 +10038,10 @@ "priority": 1, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "water_sport", @@ -7830,7 +10052,9 @@ "priority": 0, "target": "All", "category": "status", - "flags": ["nonskybattle"] + "flags": [ + "nonskybattle" + ] }, { "name": "water_spout", @@ -7841,7 +10065,10 @@ "priority": 0, "target": "AllOpponent", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "waterfall", @@ -7852,7 +10079,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "weather_ball", @@ -7863,7 +10094,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "ballistics"] + "flags": [ + "protect", + "mirror", + "ballistics" + ] }, { "name": "whirlpool", @@ -7874,7 +10109,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror", "mental"] + "flags": [ + "protect", + "mirror", + "mental" + ] }, { "name": "whirlwind", @@ -7885,7 +10124,11 @@ "priority": -6, "target": "Any", "category": "status", - "flags": ["reflectable", "mirror", "ignore-substitute"] + "flags": [ + "reflectable", + "mirror", + "ignore-substitute" + ] }, { "name": "wide_guard", @@ -7896,7 +10139,9 @@ "priority": 3, "target": "AllAlly", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "wild_charge", @@ -7907,7 +10152,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "will_o_wisp", @@ -7918,7 +10167,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "wing_attack", @@ -7929,7 +10182,12 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror", "distance"] + "flags": [ + "contact", + "protect", + "mirror", + "distance" + ] }, { "name": "wish", @@ -7940,7 +10198,10 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch", "heal"] + "flags": [ + "snatch", + "heal" + ] }, { "name": "withdraw", @@ -7951,7 +10212,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "wonder_room", @@ -7962,7 +10225,9 @@ "priority": 0, "target": "All", "category": "status", - "flags": ["mirror"] + "flags": [ + "mirror" + ] }, { "name": "wood_hammer", @@ -7973,7 +10238,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "work_up", @@ -7984,7 +10253,9 @@ "priority": 0, "target": "Self", "category": "status", - "flags": ["snatch"] + "flags": [ + "snatch" + ] }, { "name": "worry_seed", @@ -7995,7 +10266,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "wrap", @@ -8006,7 +10281,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "wring_out", @@ -8017,7 +10296,11 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "x_scissor", @@ -8028,7 +10311,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "yawn", @@ -8039,7 +10326,11 @@ "priority": 0, "target": "Any", "category": "status", - "flags": ["protect", "reflectable", "mirror"] + "flags": [ + "protect", + "reflectable", + "mirror" + ] }, { "name": "zap_cannon", @@ -8050,7 +10341,10 @@ "priority": 0, "target": "Any", "category": "special", - "flags": ["protect", "mirror"] + "flags": [ + "protect", + "mirror" + ] }, { "name": "zen_headbutt", @@ -8061,7 +10355,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] }, { "name": "zing_zap", @@ -8072,7 +10370,11 @@ "priority": 0, "target": "Any", "category": "physical", - "flags": ["contact", "protect", "mirror"] + "flags": [ + "contact", + "protect", + "mirror" + ] } ] -} +} \ No newline at end of file diff --git a/Scripts/Interfaces/Pokemon.astypedef b/Scripts/Interfaces/Pokemon.astypedef index b8241a6..137aebd 100644 --- a/Scripts/Interfaces/Pokemon.astypedef +++ b/Scripts/Interfaces/Pokemon.astypedef @@ -30,6 +30,7 @@ type Pokemon { uint GetBoostedStat(Statistic stat) const; uint GetBaseStat(Statistic stat) const; int8 GetStatBoost(Statistic stat) const; + bool HasVolatile(const constString &in name); ref@ AddVolatile(const constString &in name); void RemoveVolatile(const constString &in name) const; void ClearStatus() const; diff --git a/Scripts/Interfaces/TestFunctions.astypedef b/Scripts/Interfaces/TestFunctions.astypedef index 568e006..8d4e91c 100644 --- a/Scripts/Interfaces/TestFunctions.astypedef +++ b/Scripts/Interfaces/TestFunctions.astypedef @@ -2,6 +2,7 @@ func bool Require(bool expression); func bool RequireEquals(int expected, int actual); func bool RequireEquals(const string &in expected, const string &in actual); +func Party@ CreateParty(const array&in species); func Party@ CreateSimpleParty(const array&in species, uint8 level); func Battle@ CreateSimpleBattle(uint seed, const constString&in species1, const constString&in species2, uint8 level); func Battle@ CreateSimpleBattle(uint seed, Party@ p1, Party@ p2); @@ -14,4 +15,22 @@ type Pokemon { bool UseMove(const constString&in move, uint8 side, uint8 index); bool PassTurn(); bool LearnMove(const constString&in move); -} \ No newline at end of file +} + +type PokemonBuilder { + PokemonBuilder@ WithForme(const constString&in forme); + PokemonBuilder@ WithGender(Gender gender); + PokemonBuilder@ IsShiny(bool value); + PokemonBuilder@ WithHeldItem(const constString&in item); + PokemonBuilder@ LearnMove(const constString&in move, MoveLearnMethod method); + PokemonBuilder@ WithIndividualValues(uint8 hp,uint8 att,uint8 def,uint8 spa,uint8 spd,uint8 speed); + PokemonBuilder@ WithEffortValues(uint8 hp,uint8 att,uint8 def,uint8 spa,uint8 spd,uint8 speed); + PokemonBuilder@ WithNature(const constString&in nature); + PokemonBuilder@ WithNickname(const string&in name); + + Pokemon@ Build(uint seed = 0); +} + +func PokemonBuilder@ CreatePokemonBuilder(const constString&in species, uint8 level); + + diff --git a/Scripts/Moves/Attract.as b/Scripts/Moves/Attract.as new file mode 100644 index 0000000..73fe60a --- /dev/null +++ b/Scripts/Moves/Attract.as @@ -0,0 +1,100 @@ +namespace Gen7 { + [Move effect=Attract] + shared class Attract : PkmnScript { + void OnSecondaryEffect(ExecutingMove@ move, Pokemon@ target, uint8 hit) override { + auto userGender = move.User.Gender; + // If the move is used on a Pokémon that is the same gender as the user, it will fail + if (target.Gender == userGender){ + move.GetHitData(target, hit).Fail(); + return; + } + // It will also fail if used by or on a gender-unknown Pokémon + if (userGender == Gender::Genderless || target.Gender == Gender::Genderless){ + move.GetHitData(target, hit).Fail(); + return; + } + // If the target is the opposite gender of the Pokémon who launched the move, the target becomes infatuated + target.AddVolatile("Infatuated"); + }; + } +} + +#if TESTS +[Test name="Attract: Adds Infatuated for different genders"] +void Attract_DifferentGenders(){ + auto mon1 = CreatePokemonBuilder("charizard", 100) + .WithGender(Gender::Male) + .Build(); + auto mon2 = CreatePokemonBuilder("venusaur", 100) + .WithGender(Gender::Female) + .Build(); + + auto p1 = CreateParty({mon1}); + auto p2 = CreateParty({mon2}); + + auto script = cast(CreateMoveScript("Attract")); + auto executingMove = CreateExecutingMove("Attract", mon1, mon2); + script.OnSecondaryEffect(executingMove, mon2, 0x0); + Require(!executingMove.GetHitData(mon2, 0).HasFailed); + Require(mon2.HasVolatile("Infatuated")); +} + +[Test name="Attract: Doesnt work on genderless target"] +void Attract_GenderlessTarget(){ + auto mon1 = CreatePokemonBuilder("charizard", 100) + .WithGender(Gender::Male) + .Build(); + auto mon2 = CreatePokemonBuilder("venusaur", 100) + .WithGender(Gender::Genderless) + .Build(); + + auto p1 = CreateParty({mon1}); + auto p2 = CreateParty({mon2}); + + auto script = cast(CreateMoveScript("Attract")); + auto executingMove = CreateExecutingMove("Attract", mon1, mon2); + script.OnSecondaryEffect(executingMove, mon2, 0x0); + Require(executingMove.GetHitData(mon2, 0).HasFailed); + Require(!mon2.HasVolatile("Infatuated")); +} + +[Test name="Attract: Doesnt work on genderless user"] +void Attract_GenderlessUser(){ + auto mon1 = CreatePokemonBuilder("charizard", 100) + .WithGender(Gender::Genderless) + .Build(); + auto mon2 = CreatePokemonBuilder("venusaur", 100) + .WithGender(Gender::Male) + .Build(); + + auto p1 = CreateParty({mon1}); + auto p2 = CreateParty({mon2}); + + auto script = cast(CreateMoveScript("Attract")); + auto executingMove = CreateExecutingMove("Attract", mon1, mon2); + script.OnSecondaryEffect(executingMove, mon2, 0x0); + Require(executingMove.GetHitData(mon2, 0).HasFailed); + Require(!mon2.HasVolatile("Infatuated")); +} + +[Test name="Attract: Doesnt work for same gender"] +void Attract_SameGender(){ + auto mon1 = CreatePokemonBuilder("charizard", 100) + .WithGender(Gender::Male) + .Build(); + auto mon2 = CreatePokemonBuilder("venusaur", 100) + .WithGender(Gender::Male) + .Build(); + + auto p1 = CreateParty({mon1}); + auto p2 = CreateParty({mon2}); + + auto script = cast(CreateMoveScript("Attract")); + auto executingMove = CreateExecutingMove("Attract", mon1, mon2); + script.OnSecondaryEffect(executingMove, mon2, 0x0); + Require(executingMove.GetHitData(mon2, 0).HasFailed); + Require(!mon2.HasVolatile("Infatuated")); +} + + +#endif \ No newline at end of file diff --git a/Scripts/Pokemon/Flinch.as b/Scripts/Pokemon/Flinch.as index e7a09b6..475e6e9 100644 --- a/Scripts/Pokemon/Flinch.as +++ b/Scripts/Pokemon/Flinch.as @@ -1,6 +1,6 @@ -namespace Pokemon{ +namespace Gen7 { [Pokemon effect=Flinch] - class Flinch : PkmnScript{ + class FlinchEffect : PkmnScript{ void PreventAttack(ExecutingMove@ attack, bool& result) override { result = true; attack.User.RemoveVolatile("flinch"); diff --git a/Scripts/Pokemon/Infatuated.as b/Scripts/Pokemon/Infatuated.as new file mode 100644 index 0000000..f01c87f --- /dev/null +++ b/Scripts/Pokemon/Infatuated.as @@ -0,0 +1,10 @@ +namespace Gen7 { + [Pokemon effect=Infatuated] + class Infatuated : PkmnScript{ + void PreventAttack(ExecutingMove@ attack, bool& result) override { + if (attack.User.Battle.Random.Get(2) == 0){ + result = true; + } + } + } +} \ No newline at end of file diff --git a/fetch_tester.sh b/fetch_tester.sh index 72bcaa6..ec86c3f 100755 --- a/fetch_tester.sh +++ b/fetch_tester.sh @@ -1,6 +1,6 @@ #!/bin/sh -TESTERVERSION=0.0.7 +TESTERVERSION=0.0.8 # Get the release information from the api for the specified version curl -X GET "https://git.p-epsilon.com/api/v1/repos/Deukhoofd/PokemonScriptTester/releases/tags/$TESTERVERSION" -H "accept: application/json" |