user.scene.unshiftPhase(newPokemonHealPhase(user.scene,user.isPlayer(),Math.max(Math.floor(user.turnData.damageDealt/2),1),getPokemonMessage(target,` had its\nenergy drained!`),false,true));
newAttackMove(Moves.GUILLOTINE,"Guillotine",Type.NORMAL,MoveCategory.PHYSICAL,-1,30,5,-1,"One-Hit-KO, if it hits.",-1,0,1,newOneHitKOAttr()),
newAttackMove(Moves.RAZOR_WIND,"Razor Wind",Type.NORMAL,MoveCategory.SPECIAL,80,100,10,-1,"Charges on first turn, attacks on second. High critical hit ratio.",-1,0,1,
newAttackMove(Moves.STOMP,"Stomp",Type.NORMAL,MoveCategory.PHYSICAL,65,100,20,-1,"May cause flinching.",30,0,1,newFlinchAttr()),
newAttackMove(Moves.DOUBLE_KICK,"Double Kick",Type.FIGHTING,MoveCategory.PHYSICAL,30,100,30,-1,"Hits twice in one turn.",-1,0,1,newMultiHitAttr(MultiHitType._2)),
newAttackMove(Moves.POISON_STING,"Poison Sting",Type.POISON,MoveCategory.PHYSICAL,15,100,35,-1,"May poison the opponent.",30,0,1,newStatusEffectAttr(StatusEffect.POISON)),
newAttackMove(Moves.TWINEEDLE,"Twineedle",Type.BUG,MoveCategory.PHYSICAL,25,100,20,-1,"Hits twice in one turn. May poison opponent.",20,0,1,newMultiHitAttr(MultiHitType._2),newStatusEffectAttr(StatusEffect.POISON)),
newStatusMove(Moves.DISABLE,"Disable",Type.NORMAL,100,20,-1,"Opponent can't use its last attack for a few turns.",-1,0,1),
newAttackMove(Moves.ACID,"Acid",Type.POISON,MoveCategory.SPECIAL,40,100,30,-1,"May lower opponent's Special Defense.",10,0,1,newStatChangeAttr(BattleStat.SPDEF,-1)),
newAttackMove(Moves.BLIZZARD,"Blizzard",Type.ICE,MoveCategory.SPECIAL,110,70,5,143,"May freeze opponent.",10,0,1,newBlizzardAccuracyAttr(),newStatusEffectAttr(StatusEffect.FREEZE)),// TODO: 30% chance to hit protect/detect in hail
newAttackMove(Moves.LOW_KICK,"Low Kick",Type.FIGHTING,MoveCategory.PHYSICAL,-1,100,20,12,"The heavier the opponent, the stronger the attack.",-1,0,1),
newAttackMove(Moves.COUNTER,"Counter",Type.FIGHTING,MoveCategory.PHYSICAL,-1,100,20,-1,"When hit by a Physical Attack, user strikes back with 2x power.",-1,-5,1),
newAttackMove(Moves.SEISMIC_TOSS,"Seismic Toss",Type.FIGHTING,MoveCategory.PHYSICAL,-1,100,20,-1,"Inflicts damage equal to user's level.",-1,0,1),
newAttackMove(Moves.ABSORB,"Absorb",Type.GRASS,MoveCategory.SPECIAL,20,100,25,-1,"User recovers half the HP inflicted on opponent.",-1,0,1,newHitHealAttr()),
newAttackMove(Moves.MEGA_DRAIN,"Mega Drain",Type.GRASS,MoveCategory.SPECIAL,40,100,15,-1,"User recovers half the HP inflicted on opponent.",-1,0,1,newHitHealAttr()),
newStatusMove(Moves.SLEEP_POWDER,"Sleep Powder",Type.GRASS,75,15,-1,"Puts opponent to sleep.",-1,0,1,newStatusEffectAttr(StatusEffect.SLEEP)),
newAttackMove(Moves.PETAL_DANCE,"Petal Dance",Type.GRASS,MoveCategory.SPECIAL,120,100,10,-1,"User attacks for 2-3 turns but then becomes confused.",-1,0,1,
newAttackMove(Moves.EARTHQUAKE,"Earthquake",Type.GROUND,MoveCategory.PHYSICAL,100,100,10,149,"Power is doubled if opponent is underground from using Dig.",-1,0,1,
newAttackMove(Moves.FISSURE,"Fissure",Type.GROUND,MoveCategory.PHYSICAL,-1,30,5,-1,"One-Hit-KO, if it hits.",-1,0,1,newOneHitKOAttr()),
newAttackMove(Moves.DIG,"Dig",Type.GROUND,MoveCategory.PHYSICAL,80,100,10,55,"Digs underground on first turn, attacks on second. Can also escape from caves.",-1,0,1,
newAttackMove(Moves.PSYCHIC,"Psychic",Type.PSYCHIC,MoveCategory.SPECIAL,90,100,10,120,"May lower opponent's Special Defense.",10,0,1,newStatChangeAttr(BattleStat.SPDEF,-1)),
newStatusMove(Moves.HYPNOSIS,"Hypnosis",Type.PSYCHIC,60,20,-1,"Puts opponent to sleep.",-1,0,1,newStatusEffectAttr(StatusEffect.SLEEP)),
newAttackMove(Moves.WATERFALL,"Waterfall",Type.WATER,MoveCategory.PHYSICAL,80,100,15,77,"May cause flinching.",20,0,1,newFlinchAttr()),
newAttackMove(Moves.CLAMP,"Clamp",Type.WATER,MoveCategory.PHYSICAL,35,85,15,-1,"Traps opponent, damaging them for 4-5 turns.",100,0,1),
newAttackMove(Moves.SWIFT,"Swift",Type.NORMAL,MoveCategory.SPECIAL,60,999,20,32,"Ignores Accuracy and Evasiveness.",-1,0,1),
newAttackMove(Moves.SKULL_BASH,"Skull Bash",Type.NORMAL,MoveCategory.PHYSICAL,130,100,10,-1,"Raises Defense on first turn, attacks on second.",100,0,1,
newAttackMove(Moves.SPIKE_CANNON,"Spike Cannon",Type.NORMAL,MoveCategory.PHYSICAL,20,100,15,-1,"Hits 2-5 times in one turn.",-1,0,1,newMultiHitAttr()),
newAttackMove(Moves.CONSTRICT,"Constrict",Type.NORMAL,MoveCategory.PHYSICAL,10,100,35,-1,"May lower opponent's Speed by one stage.",10,0,1,newStatChangeAttr(BattleStat.SPD,-1)),
newStatusMove(Moves.AMNESIA,"Amnesia",Type.PSYCHIC,-1,20,128,"Sharply raises user's Special Defense.",-1,0,1,newStatChangeAttr(BattleStat.SPDEF,2,true)),
newAttackMove(Moves.HIGH_JUMP_KICK,"High Jump Kick",Type.FIGHTING,MoveCategory.PHYSICAL,130,90,10,-1,"If it misses, the user loses half their HP.",-1,0,1,
newAttackMove(Moves.DREAM_EATER,"Dream Eater",Type.PSYCHIC,MoveCategory.SPECIAL,100,100,15,-1,"User recovers half the HP inflicted on a sleeping opponent.",-1,0,1,
newAttackMove(Moves.LEECH_LIFE,"Leech Life",Type.BUG,MoveCategory.PHYSICAL,80,100,10,95,"User recovers half the HP inflicted on opponent.",-1,0,1,newHitHealAttr()),
newStatusMove(Moves.LOVELY_KISS,"Lovely Kiss",Type.NORMAL,75,10,-1,"Puts opponent to sleep.",-1,0,1,newStatusEffectAttr(StatusEffect.SLEEP)),
newAttackMove(Moves.SKY_ATTACK,"Sky Attack",Type.FLYING,MoveCategory.PHYSICAL,140,90,5,-1,"Charges on first turn, attacks on second. May cause flinching. High critical hit ratio.",30,0,1,
newAttackMove(Moves.FURY_SWIPES,"Fury Swipes",Type.NORMAL,MoveCategory.PHYSICAL,18,80,15,-1,"Hits 2-5 times in one turn.",-1,0,1,newMultiHitAttr()),
newAttackMove(Moves.BONEMERANG,"Bonemerang",Type.GROUND,MoveCategory.PHYSICAL,50,90,10,-1,"Hits twice in one turn.",-1,0,1,newMultiHitAttr(MultiHitType._2)),
newStatusMove(Moves.CURSE,"Curse",Type.GHOST,-1,10,-1,"Ghosts lose 50% of max HP and curse the opponent; Non-Ghosts raise Attack, Defense and lower Speed.",-1,0,2),
newAttackMove(Moves.FLAIL,"Flail",Type.NORMAL,MoveCategory.PHYSICAL,-1,100,15,-1,"The lower the user's HP, the higher the power.",-1,0,2),
newStatusMove(Moves.CONVERSION_2,"Conversion 2",Type.NORMAL,-1,30,-1,"User changes type to become resistant to opponent's last move.",-1,0,2),
newAttackMove(Moves.AEROBLAST,"Aeroblast",Type.FLYING,MoveCategory.SPECIAL,100,95,5,-1,"High critical hit ratio.",-1,0,2,newHighCritAttr()),
newStatusMove(Moves.FORESIGHT,"Foresight",Type.NORMAL,-1,40,-1,"Resets opponent's Evasiveness, and allows Normal- and Fighting-type attacks to hit Ghosts.",-1,0,2),// TODO
newStatusMove(Moves.DESTINY_BOND,"Destiny Bond",Type.GHOST,-1,5,-1,"If the user faints, the opponent also faints.",-1,0,2),
newStatusMove(Moves.PERISH_SONG,"Perish Song",Type.NORMAL,-1,5,-1,"Any Pokémon in play when this attack is used faints in 3 turns.",-1,0,2),
newStatusMove(Moves.SANDSTORM,"Sandstorm",Type.ROCK,-1,10,51,"Creates a sandstorm for 5 turns.",-1,0,2,newWeatherConditionalMoveAttr(WeatherType.SANDSTORM),newWeatherChangeAttr(WeatherType.SANDSTORM)),
newAttackMove(Moves.GIGA_DRAIN,"Giga Drain",Type.GRASS,MoveCategory.SPECIAL,75,100,10,111,"User recovers half the HP inflicted on opponent.",-1,4,2,newHitHealAttr()),
newAttackMove(Moves.ROLLOUT,"Rollout",Type.ROCK,MoveCategory.PHYSICAL,30,90,20,-1,"Doubles in power each turn for 5 turns.",-1,0,2),
newAttackMove(Moves.FALSE_SWIPE,"False Swipe",Type.NORMAL,MoveCategory.PHYSICAL,40,100,40,57,"Always leaves opponent with at least 1 HP.",-1,0,2),
newStatusMove(Moves.SWAGGER,"Swagger",Type.NORMAL,85,15,-1,"Confuses opponent, but sharply raises its Attack.",-1,0,2,newStatChangeAttr(BattleStat.ATK,2),newConfuseAttr()),
newStatusMove(Moves.BATON_PASS,"Baton Pass",Type.NORMAL,-1,40,132,"User switches out and gives stat changes to the incoming Pokémon.",-1,0,2),
newStatusMove(Moves.ENCORE,"Encore",Type.NORMAL,100,5,122,"Forces opponent to keep using its last move for 3 turns.",-1,0,2),
newAttackMove(Moves.PURSUIT,"Pursuit",Type.DARK,MoveCategory.PHYSICAL,40,100,20,-1,"Double power if the opponent is switching out.",-1,0,2),
newAttackMove(Moves.RAPID_SPIN,"Rapid Spin",Type.NORMAL,MoveCategory.PHYSICAL,50,100,40,-1,"Raises user's Speed and removes entry hazards and trap move effects.",100,0,2,newStatChangeAttr(BattleStat.SPD,1,true)),// TODO
newAttackMove(Moves.VITAL_THROW,"Vital Throw",Type.FIGHTING,MoveCategory.PHYSICAL,70,999,10,-1,"User attacks last, but ignores Accuracy and Evasiveness.",-1,-1,2),
newAttackMove(Moves.HIDDEN_POWER,"Hidden Power",Type.NORMAL,MoveCategory.SPECIAL,60,100,15,-1,"Type and power depends on user's IVs.",-1,0,2),
newAttackMove(Moves.CROSS_CHOP,"Cross Chop",Type.FIGHTING,MoveCategory.PHYSICAL,100,80,5,-1,"High critical hit ratio.",-1,0,2,newHighCritAttr()),
newAttackMove(Moves.TWISTER,"Twister",Type.DRAGON,MoveCategory.SPECIAL,40,100,20,-1,"May cause flinching. Hits Pokémon using Fly/Bounce with double power.",20,0,2,
newStatusMove(Moves.RAIN_DANCE,"Rain Dance",Type.WATER,-1,5,50,"Makes it rain for 5 turns.",-1,0,2,newWeatherConditionalMoveAttr(WeatherType.RAIN),newWeatherChangeAttr(WeatherType.RAIN)),
newStatusMove(Moves.SUNNY_DAY,"Sunny Day",Type.FIRE,-1,5,49,"Makes it sunny for 5 turns.",-1,0,2,newWeatherConditionalMoveAttr(WeatherType.SUNNY),newWeatherChangeAttr(WeatherType.SUNNY)),
newAttackMove(Moves.MIRROR_COAT,"Mirror Coat",Type.PSYCHIC,MoveCategory.SPECIAL,-1,100,20,-1,"When hit by a Special Attack, user strikes back with 2x power.",-1,-5,2),
newStatusMove(Moves.PSYCH_UP,"Psych Up",Type.NORMAL,-1,10,-1,"Copies the opponent's stat changes.",-1,0,2),
newAttackMove(Moves.FAKE_OUT,"Fake Out",Type.NORMAL,MoveCategory.PHYSICAL,40,100,10,-1,"User attacks first, foe flinches. Only usable on first turn.",100,3,3,
newAttackMove(Moves.UPROAR,"Uproar",Type.NORMAL,MoveCategory.SPECIAL,90,100,10,-1,"User attacks for 3 turns and prevents sleep.",-1,0,3),// TODO
newStatusMove(Moves.STOCKPILE,"Stockpile",Type.NORMAL,-1,20,-1,"Stores energy for use with Spit Up and Swallow.",-1,0,3),
newAttackMove(Moves.SPIT_UP,"Spit Up",Type.NORMAL,MoveCategory.SPECIAL,-1,100,10,-1,"Power depends on how many times the user performed Stockpile.",-1,0,3),
newStatusMove(Moves.SWALLOW,"Swallow",Type.NORMAL,-1,10,-1,"The more times the user has performed Stockpile, the more HP is recovered.",-1,0,3),
newStatusMove(Moves.HAIL,"Hail",Type.ICE,-1,10,-1,"Non-Ice types are damaged for 5 turns.",-1,0,3,newWeatherConditionalMoveAttr(WeatherType.HAIL),newWeatherChangeAttr(WeatherType.HAIL)),
newStatusMove(Moves.TORMENT,"Torment",Type.DARK,100,15,-1,"Opponent cannot use the same move in a row.",-1,0,3),
newStatusMove(Moves.FLATTER,"Flatter",Type.DARK,100,15,-1,"Confuses opponent, but raises its Special Attack.",-1,0,3,newStatChangeAttr(BattleStat.SPATK,1),newConfuseAttr()),
newAttackMove(Moves.FACADE,"Facade",Type.NORMAL,MoveCategory.PHYSICAL,70,100,20,25,"Power doubles if user is burned, poisoned, or paralyzed.",-1,0,3),
newAttackMove(Moves.FOCUS_PUNCH,"Focus Punch",Type.FIGHTING,MoveCategory.PHYSICAL,150,100,20,-1,"If the user is hit before attacking, it flinches instead.",-1,-3,3),
newAttackMove(Moves.SMELLING_SALTS,"Smelling Salts",Type.NORMAL,MoveCategory.PHYSICAL,70,100,10,-1,"Power doubles if opponent is paralyzed, but cures it.",-1,0,3),
newStatusMove(Moves.NATURE_POWER,"Nature Power",Type.NORMAL,-1,20,-1,"Uses a certain move based on the current terrain.",-1,0,3),
newStatusMove(Moves.CHARGE,"Charge",Type.ELECTRIC,-1,20,-1,"Raises user's Special Defense and next Electric move's power increases.",-1,0,3,newStatChangeAttr(BattleStat.SPDEF,1,true)),// TODO
newStatusMove(Moves.TAUNT,"Taunt",Type.DARK,100,20,87,"Opponent can only use moves that attack.",-1,0,3),
newStatusMove(Moves.HELPING_HAND,"Helping Hand",Type.NORMAL,-1,20,130,"In Double Battles, boosts the power of the partner's move.",-1,5,3),
newStatusMove(Moves.TRICK,"Trick",Type.PSYCHIC,100,10,109,"Swaps held items with the opponent.",-1,0,3),
newStatusMove(Moves.ROLE_PLAY,"Role Play",Type.PSYCHIC,-1,10,-1,"User copies the opponent's Ability.",-1,0,3),
newStatusMove(Moves.WISH,"Wish",Type.NORMAL,-1,10,-1,"The user recovers HP in the following turn.",-1,0,3),
newStatusMove(Moves.ASSIST,"Assist",Type.NORMAL,-1,20,-1,"User performs a move known by its allies at random.",-1,0,3),
newStatusMove(Moves.INGRAIN,"Ingrain",Type.GRASS,-1,20,-1,"User restores HP each turn. User cannot escape/switch.",-1,0,3),
newAttackMove(Moves.SUPERPOWER,"Superpower",Type.FIGHTING,MoveCategory.PHYSICAL,120,100,5,-1,"Lowers user's Attack and Defense.",100,0,3,
newStatusMove(Moves.MAGIC_COAT,"Magic Coat",Type.PSYCHIC,-1,15,-1,"Reflects moves that cause status conditions back to the attacker.",-1,4,3),
newStatusMove(Moves.RECYCLE,"Recycle",Type.NORMAL,-1,10,-1,"User's used hold item is restored.",-1,0,3),
newAttackMove(Moves.REVENGE,"Revenge",Type.FIGHTING,MoveCategory.PHYSICAL,60,100,10,-1,"Power increases if user was hit first.",-1,-4,3),
newAttackMove(Moves.BRICK_BREAK,"Brick Break",Type.FIGHTING,MoveCategory.PHYSICAL,75,100,15,58,"Breaks through Reflect and Light Screen barriers.",-1,0,3),
newStatusMove(Moves.YAWN,"Yawn",Type.NORMAL,-1,10,-1,"Puts opponent to sleep in the next turn.",-1,0,3),// TODO
newAttackMove(Moves.KNOCK_OFF,"Knock Off",Type.DARK,MoveCategory.PHYSICAL,65,100,20,-1,"Removes opponent's held item for the rest of the battle.",-1,0,3),
newAttackMove(Moves.ENDEAVOR,"Endeavor",Type.NORMAL,MoveCategory.PHYSICAL,-1,100,5,-1,"Reduces opponent's HP to same as user's.",-1,0,3),
newAttackMove(Moves.ERUPTION,"Eruption",Type.FIRE,MoveCategory.SPECIAL,150,100,5,-1,"Stronger when the user's HP is higher.",-1,0,3),
newStatusMove(Moves.SKILL_SWAP,"Skill Swap",Type.PSYCHIC,-1,10,98,"The user swaps Abilities with the opponent.",-1,0,3),
newStatusMove(Moves.IMPRISON,"Imprison",Type.PSYCHIC,-1,10,92,"Opponent is unable to use moves that the user also knows.",-1,0,3),
newStatusMove(Moves.REFRESH,"Refresh",Type.NORMAL,-1,20,-1,"Cures paralysis, poison, and burns.",-1,0,3),
newStatusMove(Moves.GRUDGE,"Grudge",Type.GHOST,-1,5,-1,"If the users faints after using this move, the PP for the opponent's last move is depleted.",-1,0,3),
newStatusMove(Moves.SNATCH,"Snatch",Type.DARK,-1,10,-1,"Steals the effects of the opponent's next move.",-1,4,3),
newAttackMove(Moves.SECRET_POWER,"Secret Power",Type.NORMAL,MoveCategory.PHYSICAL,70,100,20,-1,"Effects of the attack vary with the location.",30,0,3),
newAttackMove(Moves.DIVE,"Dive",Type.WATER,MoveCategory.PHYSICAL,80,100,10,-1,"Dives underwater on first turn, attacks on second turn.",-1,0,3,
newStatusMove(Moves.TEETER_DANCE,"Teeter Dance",Type.NORMAL,100,20,-1,"Confuses all Pokémon.",-1,0,3,newConfuseAttr(true),newConfuseAttr()),
newAttackMove(Moves.BLAZE_KICK,"Blaze Kick",Type.FIRE,MoveCategory.PHYSICAL,85,90,10,-1,"High critical hit ratio. May burn opponent.",10,0,3,newHighCritAttr(),newStatusEffectAttr(StatusEffect.BURN)),
newStatusMove(Moves.MUD_SPORT,"Mud Sport",Type.GROUND,-1,15,-1,"Weakens the power of Electric-type moves.",-1,0,3),
newAttackMove(Moves.ICE_BALL,"Ice Ball",Type.ICE,MoveCategory.PHYSICAL,30,90,20,-1,"Doubles in power each turn for 5 turns.",-1,0,3),
newAttackMove(Moves.NEEDLE_ARM,"Needle Arm",Type.GRASS,MoveCategory.PHYSICAL,60,100,15,-1,"May cause flinching.",30,0,3,newFlinchAttr()),
newAttackMove(Moves.ASTONISH,"Astonish",Type.GHOST,MoveCategory.PHYSICAL,30,100,15,-1,"May cause flinching.",30,0,3,newFlinchAttr()),
newAttackMove(Moves.WEATHER_BALL,"Weather Ball",Type.NORMAL,MoveCategory.SPECIAL,50,100,10,-1,"Move's power and type changes with the weather.",-1,0,3),
newStatusMove(Moves.AROMATHERAPY,"Aromatherapy",Type.GRASS,-1,5,-1,"Cures all status problems in your party.",-1,0,3),
newStatusMove(Moves.FAKE_TEARS,"Fake Tears",Type.DARK,100,20,3,"Sharply lowers opponent's Special Defense.",-1,0,3,newStatChangeAttr(BattleStat.SPDEF,-2)),
newAttackMove(Moves.AIR_CUTTER,"Air Cutter",Type.FLYING,MoveCategory.SPECIAL,60,95,25,40,"High critical hit ratio.",-1,0,3,newHighCritAttr()),
newAttackMove(Moves.OVERHEAT,"Overheat",Type.FIRE,MoveCategory.SPECIAL,130,90,5,157,"Sharply lowers user's Special Attack.",100,0,3,newStatChangeAttr(BattleStat.SPATK,-2,true)),
newStatusMove(Moves.ODOR_SLEUTH,"Odor Sleuth",Type.NORMAL,-1,40,-1,"Resets opponent's Evasiveness, and allows Normal- and Fighting-type attacks to hit Ghosts.",-1,0,3),
newAttackMove(Moves.WATER_SPOUT,"Water Spout",Type.WATER,MoveCategory.SPECIAL,150,100,5,-1,"The higher the user's HP, the higher the damage caused.",-1,0,3),
newAttackMove(Moves.SHADOW_PUNCH,"Shadow Punch",Type.GHOST,MoveCategory.PHYSICAL,60,999,20,-1,"Ignores Accuracy and Evasiveness.",-1,0,3),
newAttackMove(Moves.EXTRASENSORY,"Extrasensory",Type.PSYCHIC,MoveCategory.SPECIAL,80,100,20,-1,"May cause flinching.",10,0,3,newFlinchAttr()),
newAttackMove(Moves.SKY_UPPERCUT,"Sky Uppercut",Type.FIGHTING,MoveCategory.PHYSICAL,85,90,15,-1,"Hits the opponent, even during Fly.",-1,0,3,newHitsTagAttr(BattleTagType.FLYING)),
newAttackMove(Moves.SAND_TOMB,"Sand Tomb",Type.GROUND,MoveCategory.PHYSICAL,35,85,15,-1,"Traps opponent, damaging them for 4-5 turns.",100,0,3),
newAttackMove(Moves.SHEER_COLD,"Sheer Cold",Type.ICE,MoveCategory.SPECIAL,-1,30,5,-1,"One-Hit-KO, if it hits.",-1,0,3),
newAttackMove(Moves.BOUNCE,"Bounce",Type.FLYING,MoveCategory.PHYSICAL,85,85,5,-1,"Springs up on first turn, attacks on second. May paralyze opponent.",30,0,3,
newAttackMove(Moves.POISON_TAIL,"Poison Tail",Type.POISON,MoveCategory.PHYSICAL,50,100,25,26,"High critical hit ratio. May poison opponent.",10,0,3,newHighCritAttr(),newStatusEffectAttr(StatusEffect.POISON)),
newAttackMove(Moves.COVET,"Covet",Type.NORMAL,MoveCategory.PHYSICAL,60,100,25,-1,"Opponent's item is stolen by the user.",-1,0,3),
newAttackMove(Moves.VOLT_TACKLE,"Volt Tackle",Type.ELECTRIC,MoveCategory.PHYSICAL,120,100,15,-1,"User receives recoil damage. May paralyze opponent.",10,0,3,
newStatusMove(Moves.ROOST,"Roost",Type.FLYING,-1,5,-1,"User recovers half of its max HP and loses the Flying type temporarily.",-1,0,4,newHitHealAttr(),newAddTagAttr(BattleTagType.IGNORE_FLYING,1,true)),
newAttackMove(Moves.WAKE_UP_SLAP,"Wake-Up Slap",Type.FIGHTING,MoveCategory.PHYSICAL,70,100,10,-1,"Power doubles if opponent is asleep, but wakes it up.",-1,0,4),
newAttackMove(Moves.GYRO_BALL,"Gyro Ball",Type.STEEL,MoveCategory.PHYSICAL,-1,100,5,-1,"The slower the user, the stronger the attack.",-1,0,4),
newStatusMove(Moves.HEALING_WISH,"Healing Wish",Type.PSYCHIC,-1,10,-1,"The user faints and the next Pokémon released is fully healed.",-1,0,4),
newAttackMove(Moves.BRINE,"Brine",Type.WATER,MoveCategory.SPECIAL,65,100,10,-1,"Power doubles if opponent's HP is less than 50%.",-1,0,4),
newAttackMove(Moves.NATURAL_GIFT,"Natural Gift",Type.NORMAL,MoveCategory.PHYSICAL,-1,100,15,-1,"Power and type depend on the user's held berry.",-1,0,4),
newAttackMove(Moves.FEINT,"Feint",Type.NORMAL,MoveCategory.PHYSICAL,30,100,10,-1,"Only hits if opponent uses Protect or Detect in the same turn.",-1,2,4),
newAttackMove(Moves.PLUCK,"Pluck",Type.FLYING,MoveCategory.PHYSICAL,60,100,20,-1,"If the opponent is holding a berry, its effect is stolen by user.",-1,0,4),
newStatusMove(Moves.TAILWIND,"Tailwind",Type.FLYING,-1,15,113,"Doubles Speed for 4 turns.",-1,0,4),
newStatusMove(Moves.ACUPRESSURE,"Acupressure",Type.NORMAL,-1,30,-1,"Sharply raises a random stat.",-1,0,4,newStatChangeAttr(BattleStat.RAND,2,true)),
newAttackMove(Moves.METAL_BURST,"Metal Burst",Type.STEEL,MoveCategory.PHYSICAL,-1,100,10,-1,"Deals damage equal to 1.5x opponent's attack.",-1,0,4),
newAttackMove(Moves.U_TURN,"U-turn",Type.BUG,MoveCategory.PHYSICAL,70,100,20,60,"User switches out immediately after attacking.",-1,0,4),
newAttackMove(Moves.CLOSE_COMBAT,"Close Combat",Type.FIGHTING,MoveCategory.PHYSICAL,120,100,5,167,"Lowers user's Defense and Special Defense.",100,0,4,
newAttackMove(Moves.PAYBACK,"Payback",Type.DARK,MoveCategory.PHYSICAL,50,100,10,-1,"Power doubles if the user was attacked first.",-1,0,4),
newAttackMove(Moves.ASSURANCE,"Assurance",Type.DARK,MoveCategory.PHYSICAL,60,100,10,-1,"Power doubles if opponent already took damage in the same turn.",-1,0,4),
newStatusMove(Moves.EMBARGO,"Embargo",Type.DARK,100,15,-1,"Opponent cannot use items.",-1,0,4),
newAttackMove(Moves.FLING,"Fling",Type.DARK,MoveCategory.PHYSICAL,-1,100,10,43,"Power depends on held item.",-1,0,4),
newStatusMove(Moves.PSYCHO_SHIFT,"Psycho Shift",Type.PSYCHIC,100,10,-1,"Transfers user's status condition to the opponent.",-1,0,4),
newAttackMove(Moves.TRUMP_CARD,"Trump Card",Type.NORMAL,MoveCategory.SPECIAL,-1,999,5,-1,"The lower the PP, the higher the power.",-1,0,4),
newStatusMove(Moves.HEAL_BLOCK,"Heal Block",Type.PSYCHIC,100,15,-1,"Prevents the opponent from restoring HP for 5 turns.",-1,0,4),
newAttackMove(Moves.WRING_OUT,"Wring Out",Type.NORMAL,MoveCategory.SPECIAL,-1,100,5,-1,"The higher the opponent's HP, the higher the damage.",-1,0,4),
newStatusMove(Moves.POWER_TRICK,"Power Trick",Type.PSYCHIC,-1,10,-1,"User's own Attack and Defense switch.",-1,0,4),
newStatusMove(Moves.GASTRO_ACID,"Gastro Acid",Type.POISON,100,10,-1,"Cancels out the effect of the opponent's Ability.",-1,0,4),
newStatusMove(Moves.LUCKY_CHANT,"Lucky Chant",Type.NORMAL,-1,30,-1,"Opponent cannot land critical hits for 5 turns.",-1,0,4),
newStatusMove(Moves.ME_FIRST,"Me First",Type.NORMAL,-1,20,-1,"User copies the opponent's attack with 1.5× power.",-1,0,4),
newStatusMove(Moves.COPYCAT,"Copycat",Type.NORMAL,-1,20,-1,"Copies opponent's last move.",-1,0,4),
newStatusMove(Moves.POWER_SWAP,"Power Swap",Type.PSYCHIC,-1,10,-1,"User and opponent swap Attack and Special Attack.",-1,0,4),
newStatusMove(Moves.GUARD_SWAP,"Guard Swap",Type.PSYCHIC,-1,10,-1,"User and opponent swap Defense and Special Defense.",-1,0,4),
newAttackMove(Moves.PUNISHMENT,"Punishment",Type.DARK,MoveCategory.PHYSICAL,-1,100,5,-1,"Power increases when opponent's stats have been raised.",-1,0,4),
newAttackMove(Moves.LAST_RESORT,"Last Resort",Type.NORMAL,MoveCategory.PHYSICAL,140,100,5,-1,"Can only be used after all other moves are used.",-1,0,4),
newStatusMove(Moves.WORRY_SEED,"Worry Seed",Type.GRASS,100,10,-1,"Changes the opponent's Ability to Insomnia.",-1,0,4),
newAttackMove(Moves.SUCKER_PUNCH,"Sucker Punch",Type.DARK,MoveCategory.PHYSICAL,70,100,5,-1,"User attacks first, but only works if opponent is readying an attack.",-1,0,4),
newStatusMove(Moves.TOXIC_SPIKES,"Toxic Spikes",Type.POISON,-1,20,91,"Poisons opponents when they switch into battle.",-1,0,4),
newStatusMove(Moves.HEART_SWAP,"Heart Swap",Type.PSYCHIC,-1,10,-1,"Stat changes are swapped with the opponent.",-1,0,4),
newStatusMove(Moves.AQUA_RING,"Aqua Ring",Type.WATER,-1,20,-1,"Restores a little HP each turn.",-1,0,4),
newStatusMove(Moves.MAGNET_RISE,"Magnet Rise",Type.ELECTRIC,-1,10,-1,"User becomes immune to Ground-type moves for 5 turns.",-1,0,4),
newAttackMove(Moves.FLARE_BLITZ,"Flare Blitz",Type.FIRE,MoveCategory.PHYSICAL,120,100,15,165,"User receives recoil damage. May burn opponent.",10,0,4,newStatusEffectAttr(StatusEffect.BURN)),// TODO
newAttackMove(Moves.POISON_JAB,"Poison Jab",Type.POISON,MoveCategory.PHYSICAL,80,100,20,83,"May poison the opponent.",30,0,4,newStatusEffectAttr(StatusEffect.POISON)),
newAttackMove(Moves.DARK_PULSE,"Dark Pulse",Type.DARK,MoveCategory.SPECIAL,80,100,15,94,"May cause flinching.",20,0,4,newFlinchAttr()),
newAttackMove(Moves.DRAIN_PUNCH,"Drain Punch",Type.FIGHTING,MoveCategory.PHYSICAL,75,100,10,73,"User recovers half the HP inflicted on opponent.",-1,0,4,newHitHealAttr()),
newAttackMove(Moves.DOUBLE_HIT,"Double Hit",Type.NORMAL,MoveCategory.PHYSICAL,35,90,10,-1,"Hits twice in one turn.",-1,0,4,newMultiHitAttr(MultiHitType._2)),
newAttackMove(Moves.ROAR_OF_TIME,"Roar of Time",Type.DRAGON,MoveCategory.SPECIAL,150,90,5,-1,"User must recharge next turn.",-1,0,4),
newAttackMove(Moves.SPACIAL_REND,"Spacial Rend",Type.DRAGON,MoveCategory.SPECIAL,100,95,5,-1,"High critical hit ratio.",-1,0,4,newHighCritAttr()),
newStatusMove(Moves.LUNAR_DANCE,"Lunar Dance",Type.PSYCHIC,-1,10,-1,"The user faints but the next Pokémon released is fully healed.",-1,0,4),
newAttackMove(Moves.CRUSH_GRIP,"Crush Grip",Type.NORMAL,MoveCategory.PHYSICAL,-1,100,5,-1,"More powerful when opponent has higher HP.",-1,0,4),
newAttackMove(Moves.MAGMA_STORM,"Magma Storm",Type.FIRE,MoveCategory.SPECIAL,100,75,5,-1,"Traps opponent, damaging them for 4-5 turns.",100,0,4),
newStatusMove(Moves.DARK_VOID,"Dark Void",Type.DARK,50,10,-1,"Puts all adjacent opponents to sleep.",-1,0,4,newStatusEffectAttr(StatusEffect.SLEEP)),
newAttackMove(Moves.SEED_FLARE,"Seed Flare",Type.GRASS,MoveCategory.SPECIAL,120,85,5,-1,"May lower opponent's Special Defense.",40,0,4,newStatChangeAttr(BattleStat.SPDEF,-1)),
newAttackMove(Moves.OMINOUS_WIND,"Ominous Wind",Type.GHOST,MoveCategory.SPECIAL,60,100,5,-1,"May raise all user's stats at once.",10,0,4,
newAttackMove(Moves.SHADOW_FORCE,"Shadow Force",Type.GHOST,MoveCategory.PHYSICAL,120,100,5,-1,"Disappears on first turn, attacks on second. Can strike through Protect/Detect.",-1,0,4,
newStatusMove(Moves.WIDE_GUARD,"Wide Guard",Type.ROCK,-1,10,-1,"Protects the user's team from multi-target attacks.",-1,3,5),
newStatusMove(Moves.GUARD_SPLIT,"Guard Split",Type.PSYCHIC,-1,10,-1,"Averages Defense and Special Defense with the target.",-1,0,5),
newStatusMove(Moves.POWER_SPLIT,"Power Split",Type.PSYCHIC,-1,10,-1,"Averages Attack and Special Attack with the target.",-1,0,5),
newStatusMove(Moves.WONDER_ROOM,"Wonder Room",Type.PSYCHIC,-1,10,-1,"Swaps every Pokémon's Defense and Special Defense for 5 turns.",-1,-7,5),
newAttackMove(Moves.PSYSHOCK,"Psyshock",Type.PSYCHIC,MoveCategory.SPECIAL,80,100,10,54,"Inflicts damage based on the target's Defense, not Special Defense.",-1,0,5),
newAttackMove(Moves.VENOSHOCK,"Venoshock",Type.POISON,MoveCategory.SPECIAL,65,100,10,45,"Inflicts double damage if the target is poisoned.",-1,0,5),
newStatusMove(Moves.AUTOTOMIZE,"Autotomize",Type.STEEL,-1,15,-1,"Reduces weight and sharply raises Speed.",-1,0,5,newStatChangeAttr(BattleStat.SPD,2,true)),// TODO
newStatusMove(Moves.RAGE_POWDER,"Rage Powder",Type.BUG,-1,20,-1,"Forces attacks to hit user, not team-mates.",-1,3,5),
newStatusMove(Moves.TELEKINESIS,"Telekinesis",Type.PSYCHIC,-1,15,-1,"Ignores opponent's Evasiveness for three turns, add Ground immunity.",-1,0,5),
newStatusMove(Moves.MAGIC_ROOM,"Magic Room",Type.PSYCHIC,-1,10,-1,"Suppresses the effects of held items for five turns.",-1,-7,5),
newAttackMove(Moves.SMACK_DOWN,"Smack Down",Type.ROCK,MoveCategory.PHYSICAL,50,100,15,-1,"Makes Flying-type Pokémon vulnerable to Ground moves.",100,0,5),// TODO, logic with fly
newAttackMove(Moves.STORM_THROW,"Storm Throw",Type.FIGHTING,MoveCategory.PHYSICAL,60,100,10,-1,"Always results in a critical hit.",100,0,5),// TODO
newAttackMove(Moves.FLAME_BURST,"Flame Burst",Type.FIRE,MoveCategory.SPECIAL,70,100,15,-1,"May also injure nearby Pokémon.",-1,0,5),
newAttackMove(Moves.HEAVY_SLAM,"Heavy Slam",Type.STEEL,MoveCategory.PHYSICAL,-1,100,10,121,"The heavier the user, the stronger the attack.",-1,0,5),
newAttackMove(Moves.SYNCHRONOISE,"Synchronoise",Type.PSYCHIC,MoveCategory.SPECIAL,120,100,10,-1,"Hits any Pokémon that shares a type with the user.",-1,0,5),
newAttackMove(Moves.ELECTRO_BALL,"Electro Ball",Type.ELECTRIC,MoveCategory.SPECIAL,-1,100,10,72,"The faster the user, the stronger the attack.",-1,0,5),
newStatusMove(Moves.SOAK,"Soak",Type.WATER,100,20,-1,"Changes the target's type to water.",-1,0,5),
newAttackMove(Moves.ACID_SPRAY,"Acid Spray",Type.POISON,MoveCategory.SPECIAL,40,100,20,13,"Sharply lowers opponent's Special Defense.",100,0,5,newStatChangeAttr(BattleStat.SPDEF,-2)),
newAttackMove(Moves.FOUL_PLAY,"Foul Play",Type.DARK,MoveCategory.PHYSICAL,95,100,15,62,"Uses the opponent's Attack stat.",-1,0,5),
newStatusMove(Moves.SIMPLE_BEAM,"Simple Beam",Type.NORMAL,100,15,-1,"Changes target's ability to Simple.",-1,0,5),
newStatusMove(Moves.ENTRAINMENT,"Entrainment",Type.NORMAL,100,15,-1,"Makes target's ability same as user's.",-1,0,5),
newStatusMove(Moves.AFTER_YOU,"After You",Type.NORMAL,-1,15,-1,"Gives target priority in the next turn.",-1,0,5),
newAttackMove(Moves.ROUND,"Round",Type.NORMAL,MoveCategory.SPECIAL,60,100,15,-1,"Power increases if teammates use it in the same turn.",-1,0,5),
newAttackMove(Moves.ECHOED_VOICE,"Echoed Voice",Type.NORMAL,MoveCategory.SPECIAL,40,100,15,-1,"Power increases each turn.",-1,0,5),
newAttackMove(Moves.CHIP_AWAY,"Chip Away",Type.NORMAL,MoveCategory.PHYSICAL,70,100,20,-1,"Ignores opponent's stat changes.",-1,0,5),
newAttackMove(Moves.CLEAR_SMOG,"Clear Smog",Type.POISON,MoveCategory.SPECIAL,50,-1,15,-1,"Removes all of the target's stat changes.",-1,0,5),
newAttackMove(Moves.STORED_POWER,"Stored Power",Type.PSYCHIC,MoveCategory.SPECIAL,20,100,10,41,"Power increases when user's stats have been raised.",-1,0,5),
newStatusMove(Moves.QUICK_GUARD,"Quick Guard",Type.FIGHTING,-1,15,-1,"Protects the user's team from high-priority moves.",-1,3,5),
newStatusMove(Moves.ALLY_SWITCH,"Ally Switch",Type.PSYCHIC,-1,15,-1,"User switches with opposite teammate.",-1,0,5),
newStatusMove(Moves.SHELL_SMASH,"Shell Smash",Type.NORMAL,-1,15,-1,"Sharply raises user's Attack, Special Attack and Speed but lowers Defense and Special Defense.",-1,0,5,
newStatusMove(Moves.HEAL_PULSE,"Heal Pulse",Type.PSYCHIC,-1,10,-1,"Restores half the target's max HP.",-1,0,5),
newAttackMove(Moves.HEX,"Hex",Type.GHOST,MoveCategory.SPECIAL,65,100,10,29,"Inflicts more damage if the target has a status condition.",-1,0,5),
newAttackMove(Moves.SKY_DROP,"Sky Drop",Type.FLYING,MoveCategory.PHYSICAL,60,100,10,-1,"Takes opponent into the air on first turn, drops them on second turn.",-1,0,5,
newAttackMove(Moves.CIRCLE_THROW,"Circle Throw",Type.FIGHTING,MoveCategory.PHYSICAL,60,90,10,-1,"In battles, the opponent switches. In the wild, the Pokémon runs.",-1,-6,5),
newAttackMove(Moves.INCINERATE,"Incinerate",Type.FIRE,MoveCategory.SPECIAL,60,100,15,-1,"Destroys the target's held berry.",-1,0,5),
newStatusMove(Moves.QUASH,"Quash",Type.DARK,100,15,-1,"Makes the target act last this turn.",-1,0,5),
newAttackMove(Moves.ACROBATICS,"Acrobatics",Type.FLYING,MoveCategory.PHYSICAL,55,100,15,14,"Stronger when the user does not have a held item.",-1,0,5),
newStatusMove(Moves.REFLECT_TYPE,"Reflect Type",Type.NORMAL,-1,15,-1,"User becomes the target's type.",-1,0,5),
newAttackMove(Moves.RETALIATE,"Retaliate",Type.NORMAL,MoveCategory.PHYSICAL,70,100,5,-1,"Inflicts double damage if a teammate fainted on the last turn.",-1,0,5),
newAttackMove(Moves.FINAL_GAMBIT,"Final Gambit",Type.FIGHTING,MoveCategory.SPECIAL,-1,100,5,-1,"Inflicts damage equal to the user's remaining HP. User faints.",-1,0,5),
newStatusMove(Moves.BESTOW,"Bestow",Type.NORMAL,-1,15,-1,"Gives the user's held item to the target.",-1,0,5),
newAttackMove(Moves.WATER_PLEDGE,"Water Pledge",Type.WATER,MoveCategory.SPECIAL,80,100,10,145,"Added effects appear if preceded by Fire Pledge or succeeded by Grass Pledge.",-1,0,5),
newAttackMove(Moves.FIRE_PLEDGE,"Fire Pledge",Type.FIRE,MoveCategory.SPECIAL,80,100,10,144,"Added effects appear if combined with Grass Pledge or Water Pledge.",-1,0,5),
newAttackMove(Moves.GRASS_PLEDGE,"Grass Pledge",Type.GRASS,MoveCategory.SPECIAL,80,100,10,146,"Added effects appear if preceded by Water Pledge or succeeded by Fire Pledge.",-1,0,5),
newAttackMove(Moves.VOLT_SWITCH,"Volt Switch",Type.ELECTRIC,MoveCategory.SPECIAL,70,100,20,48,"User must switch out after attacking.",-1,0,5),
newAttackMove(Moves.STRUGGLE_BUG,"Struggle Bug",Type.BUG,MoveCategory.SPECIAL,50,100,20,15,"Lowers opponent's Special Attack.",100,0,5,newStatChangeAttr(BattleStat.SPATK,-1)),
newAttackMove(Moves.FROST_BREATH,"Frost Breath",Type.ICE,MoveCategory.SPECIAL,60,90,10,-1,"Always results in a critical hit.",100,0,5),// TODO
newAttackMove(Moves.DRAGON_TAIL,"Dragon Tail",Type.DRAGON,MoveCategory.PHYSICAL,60,90,10,44,"In battles, the opponent switches. In the wild, the Pokémon runs.",-1,-6,5),
newStatusMove(Moves.WORK_UP,"Work Up",Type.NORMAL,-1,30,-1,"Raises user's Attack and Special Attack.",-1,0,5,
newAttackMove(Moves.DUAL_CHOP,"Dual Chop",Type.DRAGON,MoveCategory.PHYSICAL,40,90,15,-1,"Hits twice in one turn.",-1,0,5,newMultiHitAttr(MultiHitType._2)),
newAttackMove(Moves.HEART_STAMP,"Heart Stamp",Type.PSYCHIC,MoveCategory.PHYSICAL,60,100,25,-1,"May cause flinching.",30,0,5,newFlinchAttr()),
newAttackMove(Moves.HORN_LEECH,"Horn Leech",Type.GRASS,MoveCategory.PHYSICAL,75,100,10,-1,"User recovers half the HP inflicted on opponent.",-1,0,5,newHitHealAttr()),
newAttackMove(Moves.PSYSTRIKE,"Psystrike",Type.PSYCHIC,MoveCategory.SPECIAL,100,100,10,-1,"Inflicts damage based on the target's Defense, not Special Defense.",-1,0,5),
newAttackMove(Moves.TAIL_SLAP,"Tail Slap",Type.NORMAL,MoveCategory.PHYSICAL,25,85,10,-1,"Hits 2-5 times in one turn.",-1,0,5,newMultiHitAttr()),
newAttackMove(Moves.GEAR_GRIND,"Gear Grind",Type.STEEL,MoveCategory.PHYSICAL,50,85,15,-1,"Hits twice in one turn.",-1,0,5,newMultiHitAttr(MultiHitType._2)),
newAttackMove(Moves.TECHNO_BLAST,"Techno Blast",Type.NORMAL,MoveCategory.SPECIAL,120,100,5,-1,"Type depends on the Drive being held.",-1,0,5),
newAttackMove(Moves.RELIC_SONG,"Relic Song",Type.NORMAL,MoveCategory.SPECIAL,75,100,10,-1,"May put the target to sleep.",10,0,5,newStatusEffectAttr(StatusEffect.SLEEP)),
newAttackMove(Moves.SECRET_SWORD,"Secret Sword",Type.FIGHTING,MoveCategory.SPECIAL,85,100,10,-1,"Inflicts damage based on the target's Defense, not Special Defense.",-1,0,5),
newAttackMove(Moves.FIERY_DANCE,"Fiery Dance",Type.FIRE,MoveCategory.SPECIAL,80,100,10,-1,"May raise user's Special Attack.",50,0,5,newStatChangeAttr(BattleStat.SPATK,1,true)),
newAttackMove(Moves.FREEZE_SHOCK,"Freeze Shock",Type.ICE,MoveCategory.PHYSICAL,140,90,5,-1,"Charges on first turn, attacks on second. May paralyze opponent.",30,0,5,newStatusEffectAttr(StatusEffect.PARALYSIS)),
newAttackMove(Moves.ICE_BURN,"Ice Burn",Type.ICE,MoveCategory.SPECIAL,140,90,5,-1,"Charges on first turn, attacks on second. May burn opponent.",30,0,5,
newAttackMove(Moves.SNARL,"Snarl",Type.DARK,MoveCategory.SPECIAL,55,95,15,30,"Lowers opponent's Special Attack.",100,0,5,newStatChangeAttr(BattleStat.SPATK,-1)),
newAttackMove(Moves.ICICLE_CRASH,"Icicle Crash",Type.ICE,MoveCategory.PHYSICAL,85,90,10,-1,"May cause flinching.",30,0,5,newFlinchAttr()),
newAttackMove(Moves.V_CREATE,"V-create",Type.FIRE,MoveCategory.PHYSICAL,180,95,5,-1,"Lowers user's Defense, Special Defense and Speed.",100,0,5,
newAttackMove(Moves.FUSION_FLARE,"Fusion Flare",Type.FIRE,MoveCategory.SPECIAL,100,100,5,-1,"Power increases if Fusion Bolt is used in the same turn.",-1,0,5),
newAttackMove(Moves.FUSION_BOLT,"Fusion Bolt",Type.ELECTRIC,MoveCategory.PHYSICAL,100,100,5,-1,"Power increases if Fusion Flare is used in the same turn.",-1,0,5)