{ "version": 3, "sources": ["../../../../../data/mods/gennext/items.ts"], "sourcesContent": ["export const Items: {[k: string]: ModdedItemData} = {\r\n\tburndrive: {\r\n\t\tinherit: true,\r\n\t\tonBasePower(basePower, user, target, move) {},\r\n\t\tdesc: \"Changes Genesect to Genesect-Burn.\",\r\n\t},\r\n\tchilldrive: {\r\n\t\tinherit: true,\r\n\t\tonBasePower(basePower, user, target, move) {},\r\n\t\tdesc: \"Changes Genesect to Genesect-Chill.\",\r\n\t},\r\n\tdousedrive: {\r\n\t\tinherit: true,\r\n\t\tonBasePower(basePower, user, target, move) {},\r\n\t\tdesc: \"Changes Genesect to Genesect-Douse.\",\r\n\t},\r\n\tshockdrive: {\r\n\t\tinherit: true,\r\n\t\tonBasePower(basePower, user, target, move) {},\r\n\t\tdesc: \"Changes Genesect to Genesect-Shock.\",\r\n\t},\r\n\twidelens: {\r\n\t\tinherit: true,\r\n\t\tonSourceModifyAccuracy(accuracy) {\r\n\t\t\tif (typeof accuracy === 'number') {\r\n\t\t\t\treturn accuracy * 1.3;\r\n\t\t\t}\r\n\t\t},\r\n\t\tdesc: \"The accuracy of attacks by the holder is 1.6x.\",\r\n\t},\r\n\tzoomlens: {\r\n\t\tinherit: true,\r\n\t\tonSourceModifyAccuracy(accuracy, target) {\r\n\t\t\tif (typeof accuracy === 'number' && !this.queue.willMove(target)) {\r\n\t\t\t\tthis.debug('Zoom Lens boosting accuracy');\r\n\t\t\t\treturn accuracy * 1.6;\r\n\t\t\t}\r\n\t\t},\r\n\t\tdesc: \"The accuracy of attacks by the holder is 1.6x if it moves after its target.\",\r\n\t},\r\n\tbigroot: {\r\n\t\tinherit: true,\r\n\t\tonAfterMoveSecondarySelf(source, target) {\r\n\t\t\tif (source.hasType('Grass')) {\r\n\t\t\t\tthis.heal(source.lastDamage / 8, source);\r\n\t\t\t}\r\n\t\t},\r\n\t\tonResidualOrder: 5,\r\n\t\tonResidualSubOrder: 2,\r\n\t\tonResidual(pokemon) {\r\n\t\t\tif (pokemon.hasType('Grass')) {\r\n\t\t\t\tthis.heal(pokemon.baseMaxhp / 16);\r\n\t\t\t}\r\n\t\t},\r\n\t\tdesc: \"Holder gains 1.3x HP from draining/Aqua Ring/Ingrain/Leech Seed/Strength Sap; If the user is a Grass type, the holder heals 1/16 of its max HP every turn, and for every damaging move the holder uses 1/8th of the damage dealt is restored.\",\r\n\t\tshortDesc: \"Holder gains 1.3x from most healing moves; if the user is a Grass type, Leftovers & Shell Bell effects occur.\",\r\n\t},\r\n\tblacksludge: {\r\n\t\tinherit: true,\r\n\t\tonResidualOrder: 5,\r\n\t\tonResidualSubOrder: 2,\r\n\t\tonResidual(pokemon) {\r\n\t\t\tif (pokemon.hasType('Poison')) {\r\n\t\t\t\tthis.heal(pokemon.baseMaxhp / (pokemon.getTypes().length === 1 ? 8 : 16));\r\n\t\t\t} else {\r\n\t\t\t\tthis.damage(pokemon.baseMaxhp / 8);\r\n\t\t\t}\r\n\t\t},\r\n\t\tdesc: \"Each turn, if holder is a Poison type, restores 1/16 max HP; loses 1/8 if not. Pure Poison types restore 1/8 max HP.\",\r\n\t},\r\n\tfocusband: {\r\n\t\tinherit: true,\r\n\t\tonDamage(damage, target, source, effect) {\r\n\t\t\tconst types = target.getTypes();\r\n\t\t\tif (types.length === 1 && types[0] === 'Fighting' &&\r\n\t\t\t\t\teffect && effect.effectType === 'Move' &&\r\n\t\t\t\t\ttarget.useItem()) {\r\n\t\t\t\tif (damage >= target.hp) {\r\n\t\t\t\t\tthis.add(\"-message\", target.name + \" held on using its Focus Band!\");\r\n\t\t\t\t\treturn target.hp - 1;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.add(\"-message\", target.name + \"'s Focus Band broke!\");\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tdesc: \"Breaks on first hit, but allows pure Fighting types to survive that hit with 1 HP.\",\r\n\t},\r\n\twiseglasses: {\r\n\t\tinherit: true,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move.category === 'Special') {\r\n\t\t\t\tconst types = user.getTypes();\r\n\t\t\t\tif (types.length === 1 && types[0] === 'Psychic') {\r\n\t\t\t\t\treturn basePower * 1.2;\r\n\t\t\t\t}\r\n\t\t\t\treturn basePower * 1.1;\r\n\t\t\t}\r\n\t\t},\r\n\t\tdesc: \"Holder's special attacks have 1.1x power. Pure Psychic types special attacks have 1.2x power.\",\r\n\t\tshortDesc: \"Holder's SpA have 1.1x power. Pure Psychic types SpA have 1.2x power.\",\r\n\t},\r\n\tmuscleband: {\r\n\t\tinherit: true,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move.category === 'Physical') {\r\n\t\t\t\tconst types = user.getTypes();\r\n\t\t\t\tif (types.length === 1 && types[0] === 'Fighting') {\r\n\t\t\t\t\treturn basePower * 1.2;\r\n\t\t\t\t}\r\n\t\t\t\treturn basePower * 1.1;\r\n\t\t\t}\r\n\t\t},\r\n\t\tdesc: \"Holder's physical attacks have 1.1x power. Pure Fighting types physical attacks have 1.2x power.\",\r\n\t\tshortDesc: \"Holder's Atk have 1.1x power. Pure Fighting types Atk have 1.2x power.\",\r\n\t},\r\n\tstick: {\r\n\t\tinherit: true,\r\n\t\t// The Stick is a stand-in for a number of pokemon-exclusive items\r\n\t\t// introduced with Gen Next\r\n\t\tonModifyCritRatio(critRatio, user) {\r\n\t\t\tif (user.species.id === 'farfetchd') {\r\n\t\t\t\treturn critRatio + 2;\r\n\t\t\t}\r\n\t\t},\r\n\t\tonModifyDef(def, pokemon) {\r\n\t\t\tif (pokemon.species.name === 'Shuckle') {\r\n\t\t\t\treturn def * 1.5;\r\n\t\t\t}\r\n\t\t},\r\n\t\tonModifySpA(spa, pokemon) {\r\n\t\t\tif (pokemon.species.name === 'Unown') {\r\n\t\t\t\treturn spa * 2;\r\n\t\t\t}\r\n\t\t},\r\n\t\tonModifySpD(spd, pokemon) {\r\n\t\t\tif (pokemon.species.name === 'Unown') {\r\n\t\t\t\treturn spd * 2;\r\n\t\t\t}\r\n\t\t\tif (pokemon.species.name === 'Shuckle') {\r\n\t\t\t\treturn spd * 1.5;\r\n\t\t\t}\r\n\t\t},\r\n\t\tonModifySpe(spe, pokemon) {\r\n\t\t\tif (pokemon.species.name === 'Unown') {\r\n\t\t\t\treturn spe * 2;\r\n\t\t\t}\r\n\t\t},\r\n\t\tonFoeBasePower(basePower, attacker, defender, move) {\r\n\t\t\tconst GossamerWingUsers = [\"Butterfree\", \"Masquerain\", \"Beautifly\", \"Mothim\", \"Vivillon\"];\r\n\t\t\tif (GossamerWingUsers.includes(defender.species.name)) {\r\n\t\t\t\tif (['Rock', 'Electric', 'Ice'].includes(move.type)) {\r\n\t\t\t\t\tthis.add('-message', \"The attack was weakened by GoassamerWing!\");\r\n\t\t\t\t\treturn basePower / 2;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tonDamage(damage, defender, attacker, effect) {\r\n\t\t\tconst GossamerWingUsers = [\"Butterfree\", \"Masquerain\", \"Beautifly\", \"Mothim\", \"Vivillon\"];\r\n\t\t\tif (GossamerWingUsers.includes(defender.species.name)) {\r\n\t\t\t\tif (effect && effect.id === 'stealthrock') {\r\n\t\t\t\t\treturn damage / 2;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tonAfterMoveSecondarySelf(source, target, move) {\r\n\t\t\tconst GossamerWingUsers = [\"Butterfree\", \"Masquerain\", \"Beautifly\", \"Mothim\", \"Vivillon\"];\r\n\t\t\tif (move.effectType === 'Move' && move.category === 'Status' && GossamerWingUsers.includes(source.species.name)) {\r\n\t\t\t\tthis.heal(source.baseMaxhp / 16);\r\n\t\t\t}\r\n\t\t},\r\n\t\t// onResidual(pokemon) {\r\n\t\t// \tif (pokemon.species.name === 'Shuckle') {\r\n\t\t// \t\tthis.heal(this.clampIntRange(pokemon.maxhp / 16, 1));\r\n\t\t// \t}\r\n\t\t// },\r\n\t\tdesc: \"Raises Farfetch\\u2019d's critical hit rate two stages.\",\r\n\t},\r\n};\r\n"], "mappings": "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", "names": [] }