{ "version": 3, "sources": ["../../../../../data/mods/gen8joltemons/conditions.ts"], "sourcesContent": ["export const Conditions: {[k: string]: ConditionData} = {\r\n\tsilvally: {\r\n\t\tname: 'Silvally',\r\n\t\tonTypePriority: 1,\r\n\t\tonType(types, pokemon) {\r\n\t\t\tif (pokemon.transformed ||\r\n\t\t\t\t!(pokemon.ability === 'rkssystem' || pokemon.ability === 'powerofalchemysilvally') && this.gen >= 8) {\r\n\t\t\t\treturn types;\r\n\t\t\t}\r\n\t\t\tlet type: string | undefined = 'Normal';\r\n\t\t\tif (pokemon.ability === 'rkssystem' || pokemon.ability === 'powerofalchemysilvally') {\r\n\t\t\t\ttype = pokemon.getItem().onMemory;\r\n\t\t\t\tif (!type) {\r\n\t\t\t\t\ttype = 'Normal';\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\treturn [type];\r\n\t\t},\r\n\t},\r\n\traindance: {\r\n\t\tname: 'RainDance',\r\n\t\teffectType: 'Weather',\r\n\t\tduration: 5,\r\n\t\tdurationCallback(source, effect) {\r\n\t\t\tif (source?.hasItem('damprock')) {\r\n\t\t\t\treturn 8;\r\n\t\t\t}\r\n\t\t\treturn 5;\r\n\t\t},\r\n\t\tonWeatherModifyDamage(damage, attacker, defender, move) {\r\n\t\t\tif (defender.hasItem('utilityumbrella') || attacker.hasItem('utilityumbrella') ||\r\n\t\t\t\tdefender.hasAbility('utilityumbrella') || attacker.hasAbility('utilityumbrella')) return;\r\n\t\t\tif (move.type === 'Water') {\r\n\t\t\t\tthis.debug('rain water boost');\r\n\t\t\t\treturn this.chainModify(1.5);\r\n\t\t\t}\r\n\t\t\tif (move.type === 'Fire') {\r\n\t\t\t\tthis.debug('rain fire suppress');\r\n\t\t\t\treturn this.chainModify(0.5);\r\n\t\t\t}\r\n\t\t},\r\n\t\tonStart(battle, source, effect) {\r\n\t\t\tif (effect?.effectType === 'Ability') {\r\n\t\t\t\tif (this.gen <= 5) this.effectState.duration = 0;\r\n\t\t\t\tthis.add('-weather', 'RainDance', '[from] ability: ' + effect, '[of] ' + source);\r\n\t\t\t} else {\r\n\t\t\t\tthis.add('-weather', 'RainDance');\r\n\t\t\t}\r\n\t\t},\r\n\t\tonResidualOrder: 1,\r\n\t\tonResidual() {\r\n\t\t\tthis.add('-weather', 'RainDance', '[upkeep]');\r\n\t\t\tthis.eachEvent('Weather');\r\n\t\t},\r\n\t\tonEnd() {\r\n\t\t\tthis.add('-weather', 'none');\r\n\t\t},\r\n\t},\r\n\tprimordialsea: {\r\n\t\tname: 'PrimordialSea',\r\n\t\teffectType: 'Weather',\r\n\t\tduration: 0,\r\n\t\tonTryMovePriority: 1,\r\n\t\tonTryMove(attacker, defender, move) {\r\n\t\t\tif (move.type === 'Fire' && move.category !== 'Status' &&\r\n\t\t\t\t!attacker.hasItem('utilityumbrella') && !attacker.hasAbility('utilityumbrella')) {\r\n\t\t\t\tthis.debug('Primordial Sea fire suppress');\r\n\t\t\t\tthis.add('-fail', attacker, move, '[from] Primordial Sea');\r\n\t\t\t\tthis.attrLastMove('[still]');\r\n\t\t\t\treturn null;\r\n\t\t\t}\r\n\t\t},\r\n\t\tonWeatherModifyDamage(damage, attacker, defender, move) {\r\n\t\t\tif (defender.hasItem('utilityumbrella') || attacker.hasItem('utilityumbrella') ||\r\n\t\t\t\tdefender.hasAbility('utilityumbrella') || attacker.hasAbility('utilityumbrella')) return;\r\n\t\t\tif (move.type === 'Water') {\r\n\t\t\t\tthis.debug('Rain water boost');\r\n\t\t\t\treturn this.chainModify(1.5);\r\n\t\t\t}\r\n\t\t},\r\n\t\tonStart(battle, source, effect) {\r\n\t\t\tthis.add('-weather', 'PrimordialSea', '[from] ability: ' + effect, '[of] ' + source);\r\n\t\t},\r\n\t\tonResidualOrder: 1,\r\n\t\tonResidual() {\r\n\t\t\tthis.add('-weather', 'PrimordialSea', '[upkeep]');\r\n\t\t\tthis.eachEvent('Weather');\r\n\t\t},\r\n\t\tonEnd() {\r\n\t\t\tthis.add('-weather', 'none');\r\n\t\t},\r\n\t},\r\n\tsunnyday: {\r\n\t\tname: 'SunnyDay',\r\n\t\teffectType: 'Weather',\r\n\t\tduration: 5,\r\n\t\tdurationCallback(source, effect) {\r\n\t\t\tif (source?.hasItem('heatrock')) {\r\n\t\t\t\treturn 8;\r\n\t\t\t}\r\n\t\t\treturn 5;\r\n\t\t},\r\n\t\tonWeatherModifyDamage(damage, attacker, defender, move) {\r\n\t\t\tif (defender.hasItem('utilityumbrella') || attacker.hasItem('utilityumbrella') ||\r\n\t\t\t\tdefender.hasAbility('utilityumbrella') || attacker.hasAbility('utilityumbrella')) return;\r\n\t\t\tif (move.type === 'Fire') {\r\n\t\t\t\tthis.debug('Sunny Day fire boost');\r\n\t\t\t\treturn this.chainModify(1.5);\r\n\t\t\t}\r\n\t\t\tif (move.type === 'Water' && !attacker.hasAbility('vaporcontrol')) {\r\n\t\t\t\tthis.debug('Sunny Day water suppress');\r\n\t\t\t\treturn this.chainModify(0.5);\r\n\t\t\t}\r\n\t\t},\r\n\t\tonStart(battle, source, effect) {\r\n\t\t\tif (effect?.effectType === 'Ability') {\r\n\t\t\t\tif (this.gen <= 5) this.effectState.duration = 0;\r\n\t\t\t\tthis.add('-weather', 'SunnyDay', '[from] ability: ' + effect, '[of] ' + source);\r\n\t\t\t} else {\r\n\t\t\t\tthis.add('-weather', 'SunnyDay');\r\n\t\t\t}\r\n\t\t},\r\n\t\tonImmunity(type, pokemon) {\r\n\t\t\tif (pokemon.hasItem('utilityumbrella')) return;\r\n\t\t\tif (type === 'frz') return false;\r\n\t\t},\r\n\t\tonResidualOrder: 1,\r\n\t\tonResidual() {\r\n\t\t\tthis.add('-weather', 'SunnyDay', '[upkeep]');\r\n\t\t\tthis.eachEvent('Weather');\r\n\t\t},\r\n\t\tonEnd() {\r\n\t\t\tthis.add('-weather', 'none');\r\n\t\t},\r\n\t},\r\n\tdesolateland: {\r\n\t\tname: 'DesolateLand',\r\n\t\teffectType: 'Weather',\r\n\t\tduration: 0,\r\n\t\tonTryMovePriority: 1,\r\n\t\tonTryMove(attacker, defender, move) {\r\n\t\t\tif (move.type === 'Water' && move.category !== 'Status' &&\r\n\t\t\t\t!attacker.hasItem('utilityumbrella') && !attacker.hasAbility('utilityumbrella')) {\r\n\t\t\t\tthis.debug('Desolate Land water suppress');\r\n\t\t\t\tthis.add('-fail', attacker, move, '[from] Desolate Land');\r\n\t\t\t\tthis.attrLastMove('[still]');\r\n\t\t\t\treturn null;\r\n\t\t\t}\r\n\t\t},\r\n\t\tonWeatherModifyDamage(damage, attacker, defender, move) {\r\n\t\t\tif (defender.hasItem('utilityumbrella') || attacker.hasItem('utilityumbrella') ||\r\n\t\t\t\tdefender.hasAbility('utilityumbrella') || attacker.hasAbility('utilityumbrella')) return;\r\n\t\t\tif (move.type === 'Fire') {\r\n\t\t\t\tthis.debug('Sunny Day fire boost');\r\n\t\t\t\treturn this.chainModify(1.5);\r\n\t\t\t}\r\n\t\t},\r\n\t\tonStart(battle, source, effect) {\r\n\t\t\tthis.add('-weather', 'DesolateLand', '[from] ability: ' + effect, '[of] ' + source);\r\n\t\t},\r\n\t\tonImmunity(type, pokemon) {\r\n\t\t\tif (pokemon.hasItem('utilityumbrella') || pokemon.hasAbility('utilityumbrella')) return;\r\n\t\t\tif (type === 'frz') return false;\r\n\t\t},\r\n\t\tonResidualOrder: 1,\r\n\t\tonResidual() {\r\n\t\t\tthis.add('-weather', 'DesolateLand', '[upkeep]');\r\n\t\t\tthis.eachEvent('Weather');\r\n\t\t},\r\n\t\tonEnd() {\r\n\t\t\tthis.add('-weather', 'none');\r\n\t\t},\r\n\t},\r\n};\r\n"], "mappings": "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", "names": [] }