{ "version": 3, "sources": ["../../../../data/mods/gen5/abilities.ts"], "sourcesContent": ["export const Abilities: import('../../../sim/dex-abilities').ModdedAbilityDataTable = {\n\tanticipation: {\n\t\tinherit: true,\n\t\tonStart(pokemon) {\n\t\t\tfor (const target of pokemon.foes()) {\n\t\t\t\tfor (const moveSlot of target.moveSlots) {\n\t\t\t\t\tconst move = this.dex.moves.get(moveSlot.move);\n\t\t\t\t\tif (move.category !== 'Status' && (\n\t\t\t\t\t\tthis.dex.getImmunity(move.type, pokemon) && this.dex.getEffectiveness(move.type, pokemon) > 0 ||\n\t\t\t\t\t\tmove.ohko\n\t\t\t\t\t)) {\n\t\t\t\t\t\tthis.add('-ability', pokemon, 'Anticipation');\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t},\n\tfrisk: {\n\t\tinherit: true,\n\t\tonStart(pokemon) {\n\t\t\tconst target = pokemon.side.randomFoe();\n\t\t\tif (target?.item) {\n\t\t\t\tthis.add('-item', '', target.getItem().name, '[from] ability: Frisk', `[of] ${pokemon}`);\n\t\t\t}\n\t\t},\n\t},\n\tinfiltrator: {\n\t\tinherit: true,\n\t\trating: 1.5,\n\t},\n\tkeeneye: {\n\t\tinherit: true,\n\t\tonModifyMove() {},\n\t},\n\tmagicbounce: {\n\t\tinherit: true,\n\t\tonAllyTryHitSide(target, source, move) {\n\t\t\tif (target.isAlly(source) || move.hasBounced || !move.flags['reflectable']) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst newMove = this.dex.getActiveMove(move.id);\n\t\t\tnewMove.hasBounced = true;\n\t\t\tnewMove.pranksterBoosted = false;\n\t\t\tthis.actions.useMove(newMove, this.effectState.target, { target: source });\n\t\t\treturn null;\n\t\t},\n\t},\n\toblivious: {\n\t\tinherit: true,\n\t\tonUpdate(pokemon) {\n\t\t\tif (pokemon.volatiles['attract']) {\n\t\t\t\tpokemon.removeVolatile('attract');\n\t\t\t\tthis.add('-end', pokemon, 'move: Attract', '[from] ability: Oblivious');\n\t\t\t}\n\t\t},\n\t\tonTryHit(pokemon, target, move) {\n\t\t\tif (move.id === 'captivate') {\n\t\t\t\tthis.add('-immune', pokemon, '[from] Oblivious');\n\t\t\t\treturn null;\n\t\t\t}\n\t\t},\n\t\trating: 0.5,\n\t},\n\tovercoat: {\n\t\tinherit: true,\n\t\tonTryHit() {},\n\t\tflags: {},\n\t\trating: 0.5,\n\t},\n\tsapsipper: {\n\t\tinherit: true,\n\t\tonAllyTryHitSide() {},\n\t},\n\tserenegrace: {\n\t\tinherit: true,\n\t\tonModifyMove(move) {\n\t\t\tif (move.secondaries && move.id !== 'secretpower') {\n\t\t\t\tthis.debug('doubling secondary chance');\n\t\t\t\tfor (const secondary of move.secondaries) {\n\t\t\t\t\tif (secondary.chance) secondary.chance *= 2;\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t},\n\tsoundproof: {\n\t\tinherit: true,\n\t\tonAllyTryHitSide() {},\n\t},\n};\n"], "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAO,MAAM,YAAyE;AAAA,EACrF,cAAc;AAAA,IACb,SAAS;AAAA,IACT,QAAQ,SAAS;AAChB,iBAAW,UAAU,QAAQ,KAAK,GAAG;AACpC,mBAAW,YAAY,OAAO,WAAW;AACxC,gBAAM,OAAO,KAAK,IAAI,MAAM,IAAI,SAAS,IAAI;AAC7C,cAAI,KAAK,aAAa,aACrB,KAAK,IAAI,YAAY,KAAK,MAAM,OAAO,KAAK,KAAK,IAAI,iBAAiB,KAAK,MAAM,OAAO,IAAI,KAC5F,KAAK,OACH;AACF,iBAAK,IAAI,YAAY,SAAS,cAAc;AAC5C;AAAA,UACD;AAAA,QACD;AAAA,MACD;AAAA,IACD;AAAA,EACD;AAAA,EACA,OAAO;AAAA,IACN,SAAS;AAAA,IACT,QAAQ,SAAS;AAChB,YAAM,SAAS,QAAQ,KAAK,UAAU;AACtC,UAAI,QAAQ,MAAM;AACjB,aAAK,IAAI,SAAS,IAAI,OAAO,QAAQ,EAAE,MAAM,yBAAyB,QAAQ,SAAS;AAAA,MACxF;AAAA,IACD;AAAA,EACD;AAAA,EACA,aAAa;AAAA,IACZ,SAAS;AAAA,IACT,QAAQ;AAAA,EACT;AAAA,EACA,SAAS;AAAA,IACR,SAAS;AAAA,IACT,eAAe;AAAA,IAAC;AAAA,EACjB;AAAA,EACA,aAAa;AAAA,IACZ,SAAS;AAAA,IACT,iBAAiB,QAAQ,QAAQ,MAAM;AACtC,UAAI,OAAO,OAAO,MAAM,KAAK,KAAK,cAAc,CAAC,KAAK,MAAM,aAAa,GAAG;AAC3E;AAAA,MACD;AACA,YAAM,UAAU,KAAK,IAAI,cAAc,KAAK,EAAE;AAC9C,cAAQ,aAAa;AACrB,cAAQ,mBAAmB;AAC3B,WAAK,QAAQ,QAAQ,SAAS,KAAK,YAAY,QAAQ,EAAE,QAAQ,OAAO,CAAC;AACzE,aAAO;AAAA,IACR;AAAA,EACD;AAAA,EACA,WAAW;AAAA,IACV,SAAS;AAAA,IACT,SAAS,SAAS;AACjB,UAAI,QAAQ,UAAU,SAAS,GAAG;AACjC,gBAAQ,eAAe,SAAS;AAChC,aAAK,IAAI,QAAQ,SAAS,iBAAiB,2BAA2B;AAAA,MACvE;AAAA,IACD;AAAA,IACA,SAAS,SAAS,QAAQ,MAAM;AAC/B,UAAI,KAAK,OAAO,aAAa;AAC5B,aAAK,IAAI,WAAW,SAAS,kBAAkB;AAC/C,eAAO;AAAA,MACR;AAAA,IACD;AAAA,IACA,QAAQ;AAAA,EACT;AAAA,EACA,UAAU;AAAA,IACT,SAAS;AAAA,IACT,WAAW;AAAA,IAAC;AAAA,IACZ,OAAO,CAAC;AAAA,IACR,QAAQ;AAAA,EACT;AAAA,EACA,WAAW;AAAA,IACV,SAAS;AAAA,IACT,mBAAmB;AAAA,IAAC;AAAA,EACrB;AAAA,EACA,aAAa;AAAA,IACZ,SAAS;AAAA,IACT,aAAa,MAAM;AAClB,UAAI,KAAK,eAAe,KAAK,OAAO,eAAe;AAClD,aAAK,MAAM,2BAA2B;AACtC,mBAAW,aAAa,KAAK,aAAa;AACzC,cAAI,UAAU;AAAQ,sBAAU,UAAU;AAAA,QAC3C;AAAA,MACD;AAAA,IACD;AAAA,EACD;AAAA,EACA,YAAY;AAAA,IACX,SAAS;AAAA,IACT,mBAAmB;AAAA,IAAC;AAAA,EACrB;AACD;", "names": [] }