Spaces:
Running
Running
{ | |
"version": 3, | |
"sources": ["../../../../data/mods/thecardgame/scripts.ts"], | |
"sourcesContent": ["export const Scripts: ModdedBattleScriptsData = {\n\tgen: 9,\n\tinherit: 'gen9',\n\tinit() {\n\t\tfor (const id in this.data.Pokedex) {\n\t\t\tconst types = Array.from(new Set(this.data.Pokedex[id].types.map(type => (\n\t\t\t\ttype.replace(/(Ghost|Fairy)/g, 'Psychic')\n\t\t\t\t\t.replace(/Bug/g, 'Grass')\n\t\t\t\t\t.replace(/Ice/g, 'Water')\n\t\t\t\t\t.replace(/(Rock|Ground)/g, 'Fighting')\n\t\t\t\t\t.replace(/Flying/g, 'Normal')\n\t\t\t\t\t.replace(/Poison/g, 'Dark')\n\t\t\t))));\n\t\t\tthis.modData('Pokedex', id).types = types;\n\t\t}\n\t\tfor (const id in this.data.Moves) {\n\t\t\tconst move = this.data.Moves[id];\n\t\t\tconst type = move.type\n\t\t\t\t.replace(/(Ghost|Fairy)/g, 'Psychic')\n\t\t\t\t.replace(/Bug/g, 'Grass')\n\t\t\t\t.replace(/Ice/g, 'Water')\n\t\t\t\t.replace(/(Rock|Ground)/g, 'Fighting')\n\t\t\t\t.replace(/Flying/g, 'Normal')\n\t\t\t\t.replace(/Poison/g, 'Dark');\n\t\t\tthis.modData('Moves', id).type = type;\n\t\t}\n\t\tfor (const id in this.data.Items) {\n\t\t\tconst item = this.data.Items[id];\n\t\t\tif (item.onPlate) {\n\t\t\t\tconst type = item.onPlate\n\t\t\t\t\t.replace(/(Ghost|Fairy)/g, 'Psychic')\n\t\t\t\t\t.replace(/Bug/g, 'Grass')\n\t\t\t\t\t.replace(/Ice/g, 'Water')\n\t\t\t\t\t.replace(/(Rock|Ground)/g, 'Fighting')\n\t\t\t\t\t.replace(/Flying/g, 'Normal')\n\t\t\t\t\t.replace(/Poison/g, 'Dark');\n\t\t\t\tthis.modData('Items', id).onPlate = type;\n\t\t\t}\n\t\t\tif (item.onDrive) {\n\t\t\t\tconst type = item.onDrive\n\t\t\t\t\t.replace(/(Ghost|Fairy)/g, 'Psychic')\n\t\t\t\t\t.replace(/Bug/g, 'Grass')\n\t\t\t\t\t.replace(/Ice/g, 'Water')\n\t\t\t\t\t.replace(/(Rock|Ground)/g, 'Fighting')\n\t\t\t\t\t.replace(/Flying/g, 'Normal')\n\t\t\t\t\t.replace(/Poison/g, 'Dark');\n\t\t\t\tthis.modData('Items', id).onDrive = type;\n\t\t\t}\n\t\t\tif (item.onMemory) {\n\t\t\t\tconst type = item.onMemory\n\t\t\t\t\t.replace(/(Ghost|Fairy)/g, 'Psychic')\n\t\t\t\t\t.replace(/Bug/g, 'Grass')\n\t\t\t\t\t.replace(/Ice/g, 'Water')\n\t\t\t\t\t.replace(/(Rock|Ground)/g, 'Fighting')\n\t\t\t\t\t.replace(/Flying/g, 'Normal')\n\t\t\t\t\t.replace(/Poison/g, 'Dark');\n\t\t\t\tthis.modData('Items', id).onMemory = type;\n\t\t\t}\n\t\t\tif (item.zMoveType) {\n\t\t\t\tconst type = item.zMoveType\n\t\t\t\t\t.replace(/(Ghost|Fairy)/g, 'Psychic')\n\t\t\t\t\t.replace(/Bug/g, 'Grass')\n\t\t\t\t\t.replace(/Ice/g, 'Water')\n\t\t\t\t\t.replace(/(Rock|Ground)/g, 'Fighting')\n\t\t\t\t\t.replace(/Flying/g, 'Normal')\n\t\t\t\t\t.replace(/Poison/g, 'Dark');\n\t\t\t\tthis.modData('Items', id).zMoveType = type;\n\t\t\t}\n\t\t\tif (item.naturalGift) {\n\t\t\t\tconst type = item.naturalGift.type\n\t\t\t\t\t.replace(/(Ghost|Fairy)/g, 'Psychic')\n\t\t\t\t\t.replace(/Bug/g, 'Grass')\n\t\t\t\t\t.replace(/Ice/g, 'Water')\n\t\t\t\t\t.replace(/(Rock|Ground)/g, 'Fighting')\n\t\t\t\t\t.replace(/Flying/g, 'Normal')\n\t\t\t\t\t.replace(/Poison/g, 'Dark');\n\t\t\t\tconst overriddenBerries = [\n\t\t\t\t\t'chartiberry', 'cobaberry', 'kasibberry', 'kebiaberry', 'roseliberry', 'shucaberry', 'tangaberry', 'yacheberry',\n\t\t\t\t];\n\t\t\t\tif (overriddenBerries.includes(id)) {\n\t\t\t\t\t// these berries were already modded in ./items.ts\n\t\t\t\t\t// so they have inherited references to the base dex naturalGift objects and need new ones\n\t\t\t\t\tthis.modData('Items', id).naturalGift = { ...item.naturalGift, type };\n\t\t\t\t} else {\n\t\t\t\t\t// these were unmodded, so modData makes deep clones of them which makes this a safe write\n\t\t\t\t\tthis.modData('Items', id).naturalGift.type = type;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t},\n\tpokemon: {\n\t\thasType(type) {\n\t\t\tconst thisTypes = this.getTypes();\n\t\t\tif (typeof type === 'string') {\n\t\t\t\treturn thisTypes.includes(type\n\t\t\t\t\t.replace(/(Ghost|Fairy)/g, 'Psychic')\n\t\t\t\t\t.replace(/Bug/g, 'Grass')\n\t\t\t\t\t.replace(/Ice/g, 'Water')\n\t\t\t\t\t.replace(/(Rock|Ground)/g, 'Fighting')\n\t\t\t\t\t.replace(/Flying/g, 'Normal')\n\t\t\t\t\t.replace(/Poison/g, 'Dark'));\n\t\t\t}\n\n\t\t\tfor (const typeName of type) {\n\t\t\t\tif (thisTypes.includes(typeName\n\t\t\t\t\t.replace(/(Ghost|Fairy)/g, 'Psychic')\n\t\t\t\t\t.replace(/Bug/g, 'Grass')\n\t\t\t\t\t.replace(/Ice/g, 'Water')\n\t\t\t\t\t.replace(/(Rock|Ground)/g, 'Fighting')\n\t\t\t\t\t.replace(/Flying/g, 'Normal')\n\t\t\t\t\t.replace(/Poison/g, 'Dark'))\n\t\t\t\t) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn false;\n\t\t},\n\t\trunImmunity(type, message) {\n\t\t\tif (!type || type === '???') return true;\n\t\t\tif (!this.battle.dex.types.isName(type)) {\n\t\t\t\tthrow new Error(\"Use runStatusImmunity for \" + type);\n\t\t\t}\n\t\t\tif (this.fainted) return false;\n\n\t\t\tconst negateImmunity = !this.battle.runEvent('NegateImmunity', this, type);\n\t\t\tconst notImmune = type === 'Fighting' ?\n\t\t\t\tthis.isGrounded(negateImmunity) :\n\t\t\t\tnegateImmunity || this.battle.dex.getImmunity(type, this);\n\t\t\tif (notImmune) return true;\n\t\t\tif (!message) return false;\n\t\t\tif (notImmune === null) {\n\t\t\t\tthis.battle.add('-immune', this, '[from] ability: Levitate');\n\t\t\t} else {\n\t\t\t\tthis.battle.add('-immune', this);\n\t\t\t}\n\t\t\treturn false;\n\t\t},\n\t},\n};\n"], | |
"mappings": "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", | |
"names": [] | |
} | |