{ "version": 3, "sources": ["../../../../../data/mods/gen8joltemons/rulesets.ts"], "sourcesContent": ["export const Rulesets: {[k: string]: ModdedFormatData} = {\r\n\tmegadatamod: {\r\n\t\teffectType: 'Rule',\r\n\t\tname: 'Mega Data Mod',\r\n\t\tdesc: 'Gives data on stats, Ability and types when a Pok\u00E9mon Mega Evolves or undergoes Ultra Burst.',\r\n\t\tonSwitchIn(pokemon) {\r\n\t\t\tif (pokemon.illusion) {\r\n\t\t\t\tif (pokemon.illusion.species.forme.startsWith('Mega') || pokemon.illusion.species.forme.startsWith('Ultra')) {\r\n\t\t\t\t\tthis.add('-start', pokemon, 'typechange', pokemon.illusion.getTypes(true).join('/'), '[silent]');\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tif (pokemon.species.forme.startsWith('Mega') || pokemon.species.forme.startsWith('Ultra')) {\r\n\t\t\t\t\tthis.add('-start', pokemon, 'typechange', pokemon.getTypes(true).join('/'), '[silent]');\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tonDamagingHit(damage, target, source, move) {\r\n\t\t\tif (target.hasAbility('illusion')) {\r\n\t\t\t\tif (target.species.forme.startsWith('Mega') || target.species.forme.startsWith('Ultra')) {\r\n\t\t\t\t\tthis.add('-start', target, 'typechange', target.getTypes(true).join('/'), '[silent]');\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconst types = target.baseSpecies.types;\r\n\t\t\t\t\tif (target.getTypes().join() === types.join()) {\r\n\t\t\t\t\t\tthis.add('-end', target, 'typechange', '[silent]');\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tonAfterMega(pokemon) {\r\n\t\t\tthis.add('-start', pokemon, 'typechange', pokemon.getTypes(true).join('/'), '[silent]');\r\n\t\t\tconst species = this.dex.species.get(pokemon.species.name);\r\n\t\t\tconst abilities = species.abilities;\r\n\t\t\tconst baseStats = species.baseStats;\r\n\t\t\tconst type = species.types[0];\r\n\t\t\tif (species.types[1]) {\r\n\t\t\t\tconst type2 = species.types[1];\r\n\t\t\t\tthis.add(`raw|