@pkmn/mods 0.5.28 → 0.6.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/gen1stadium/scripts.js +13 -8
- package/build/gen1stadium/scripts.js.map +1 -1
- package/build/index.d.ts +2 -2
- package/build/letsgo/formats-data.d.ts +4 -0
- package/build/letsgo/formats-data.js +982 -0
- package/build/letsgo/formats-data.js.map +1 -0
- package/build/letsgo/index.d.ts +5 -0
- package/build/letsgo/index.js +14 -0
- package/build/letsgo/index.js.map +1 -0
- package/build/letsgo/learnsets.d.ts +4 -0
- package/build/letsgo/learnsets.js +5403 -0
- package/build/letsgo/learnsets.js.map +1 -0
- package/build/letsgo/moves.d.ts +4 -0
- package/build/letsgo/moves.js +94 -0
- package/build/letsgo/moves.js.map +1 -0
- package/build/letsgo/pokedex.d.ts +4 -0
- package/build/letsgo/pokedex.js +179 -0
- package/build/letsgo/pokedex.js.map +1 -0
- package/build/letsgo/scripts.d.ts +2 -0
- package/build/letsgo/scripts.js +60 -0
- package/build/letsgo/scripts.js.map +1 -0
- package/build/stadium/conditions.d.ts +4 -0
- package/build/stadium/conditions.js +137 -0
- package/build/stadium/conditions.js.map +1 -0
- package/build/stadium/index.d.ts +4 -0
- package/build/stadium/index.js +12 -0
- package/build/stadium/index.js.map +1 -0
- package/build/stadium/moves.d.ts +4 -0
- package/build/stadium/moves.js +246 -0
- package/build/stadium/moves.js.map +1 -0
- package/build/stadium/rulesets.d.ts +4 -0
- package/build/stadium/rulesets.js +11 -0
- package/build/stadium/rulesets.js.map +1 -0
- package/build/stadium/scripts.d.ts +5 -0
- package/build/stadium/scripts.js +619 -0
- package/build/stadium/scripts.js.map +1 -0
- package/build/vgc17/formats-data.d.ts +4 -0
- package/build/vgc17/formats-data.js +58 -0
- package/build/vgc17/formats-data.js.map +1 -0
- package/build/vgc17/index.d.ts +6 -0
- package/build/vgc17/index.js +16 -0
- package/build/vgc17/index.js.map +1 -0
- package/build/vgc17/items.d.ts +4 -0
- package/build/vgc17/items.js +30 -0
- package/build/vgc17/items.js.map +1 -0
- package/build/vgc17/learnsets.d.ts +4 -0
- package/build/vgc17/learnsets.js +60478 -0
- package/build/vgc17/learnsets.js.map +1 -0
- package/build/vgc17/pokedex.d.ts +4 -0
- package/build/vgc17/pokedex.js +50 -0
- package/build/vgc17/pokedex.js.map +1 -0
- package/build/vgc17/rulesets.d.ts +4 -0
- package/build/vgc17/rulesets.js +22 -0
- package/build/vgc17/rulesets.js.map +1 -0
- package/build/vgc17/scripts.d.ts +2 -0
- package/build/vgc17/scripts.js +7 -0
- package/build/vgc17/scripts.js.map +1 -0
- package/package.json +4 -4
- package/src/gen1stadium/scripts.ts +12 -8
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Pokedex = void 0;
|
|
4
|
+
exports.Pokedex = {
|
|
5
|
+
litten: {
|
|
6
|
+
inherit: true,
|
|
7
|
+
unreleasedHidden: true,
|
|
8
|
+
},
|
|
9
|
+
torracat: {
|
|
10
|
+
inherit: true,
|
|
11
|
+
unreleasedHidden: true,
|
|
12
|
+
},
|
|
13
|
+
incineroar: {
|
|
14
|
+
inherit: true,
|
|
15
|
+
unreleasedHidden: true,
|
|
16
|
+
},
|
|
17
|
+
rowlet: {
|
|
18
|
+
inherit: true,
|
|
19
|
+
unreleasedHidden: true,
|
|
20
|
+
},
|
|
21
|
+
dartrix: {
|
|
22
|
+
inherit: true,
|
|
23
|
+
unreleasedHidden: true,
|
|
24
|
+
},
|
|
25
|
+
decidueye: {
|
|
26
|
+
inherit: true,
|
|
27
|
+
unreleasedHidden: true,
|
|
28
|
+
},
|
|
29
|
+
popplio: {
|
|
30
|
+
inherit: true,
|
|
31
|
+
unreleasedHidden: true,
|
|
32
|
+
},
|
|
33
|
+
brionne: {
|
|
34
|
+
inherit: true,
|
|
35
|
+
unreleasedHidden: true,
|
|
36
|
+
},
|
|
37
|
+
primarina: {
|
|
38
|
+
inherit: true,
|
|
39
|
+
unreleasedHidden: true,
|
|
40
|
+
},
|
|
41
|
+
passimian: {
|
|
42
|
+
inherit: true,
|
|
43
|
+
unreleasedHidden: true,
|
|
44
|
+
},
|
|
45
|
+
oranguru: {
|
|
46
|
+
inherit: true,
|
|
47
|
+
unreleasedHidden: true,
|
|
48
|
+
},
|
|
49
|
+
};
|
|
50
|
+
//# sourceMappingURL=pokedex.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pokedex.js","sourceRoot":"","sources":["../../src/vgc17/pokedex.ts"],"names":[],"mappings":";;;AAEa,QAAA,OAAO,GAAqC;IACxD,MAAM,EAAE;QACP,OAAO,EAAE,IAAI;QACb,gBAAgB,EAAE,IAAI;KACtB;IACD,QAAQ,EAAE;QACT,OAAO,EAAE,IAAI;QACb,gBAAgB,EAAE,IAAI;KACtB;IACD,UAAU,EAAE;QACX,OAAO,EAAE,IAAI;QACb,gBAAgB,EAAE,IAAI;KACtB;IACD,MAAM,EAAE;QACP,OAAO,EAAE,IAAI;QACb,gBAAgB,EAAE,IAAI;KACtB;IACD,OAAO,EAAE;QACR,OAAO,EAAE,IAAI;QACb,gBAAgB,EAAE,IAAI;KACtB;IACD,SAAS,EAAE;QACV,OAAO,EAAE,IAAI;QACb,gBAAgB,EAAE,IAAI;KACtB;IACD,OAAO,EAAE;QACR,OAAO,EAAE,IAAI;QACb,gBAAgB,EAAE,IAAI;KACtB;IACD,OAAO,EAAE;QACR,OAAO,EAAE,IAAI;QACb,gBAAgB,EAAE,IAAI;KACtB;IACD,SAAS,EAAE;QACV,OAAO,EAAE,IAAI;QACb,gBAAgB,EAAE,IAAI;KACtB;IACD,SAAS,EAAE;QACV,OAAO,EAAE,IAAI;QACb,gBAAgB,EAAE,IAAI;KACtB;IACD,QAAQ,EAAE;QACT,OAAO,EAAE,IAAI;QACb,gBAAgB,EAAE,IAAI;KACtB;CACD,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Rulesets = void 0;
|
|
4
|
+
exports.Rulesets = {
|
|
5
|
+
alolapokedex: {
|
|
6
|
+
effectType: 'ValidatorRule',
|
|
7
|
+
name: 'Alola Pokedex',
|
|
8
|
+
desc: "Only allows Pokémon native to the Alola region (SUMO)",
|
|
9
|
+
onValidateSet(set) {
|
|
10
|
+
const species = this.dex.species.get(set.species || set.name);
|
|
11
|
+
if (this.ruleTable.has('+' + species.id))
|
|
12
|
+
return;
|
|
13
|
+
const alolaDex = [
|
|
14
|
+
"Rowlet", "Dartrix", "Decidueye", "Litten", "Torracat", "Incineroar", "Popplio", "Brionne", "Primarina", "Pikipek", "Trumbeak", "Toucannon", "Yungoos", "Gumshoos", "Rattata-Alola", "Raticate-Alola", "Caterpie", "Metapod", "Butterfree", "Ledyba", "Ledian", "Spinarak", "Ariados", "Pichu", "Pikachu", "Raichu-Alola", "Grubbin", "Charjabug", "Vikavolt", "Bonsly", "Sudowoodo", "Happiny", "Chansey", "Blissey", "Munchlax", "Snorlax", "Slowpoke", "Slowbro", "Slowking", "Wingull", "Pelipper", "Abra", "Kadabra", "Alakazam", "Meowth-Alola", "Persian-Alola", "Magnemite", "Magneton", "Magnezone", "Grimer-Alola", "Muk-Alola", "Growlithe", "Arcanine", "Drowzee", "Hypno", "Makuhita", "Hariyama", "Smeargle", "Crabrawler", "Crabominable", "Gastly", "Haunter", "Gengar", "Drifloon", "Drifblim", "Misdreavus", "Mismagius", "Zubat", "Golbat", "Crobat", "Diglett-Alola", "Dugtrio-Alola", "Spearow", "Fearow", "Rufflet", "Braviary", "Vullaby", "Mandibuzz", "Mankey", "Primeape", "Delibird", "Oricorio", "Cutiefly", "Ribombee", "Petilil", "Lilligant", "Cottonee", "Whimsicott", "Psyduck", "Golduck", "Magikarp", "Gyarados", "Barboach", "Whiscash", "Machop", "Machoke", "Machamp", "Roggenrola", "Boldore", "Gigalith", "Carbink", "Sableye", "Rockruff", "Lycanroc", "Spinda", "Tentacool", "Tentacruel", "Finneon", "Lumineon", "Wishiwashi", "Luvdisc", "Corsola", "Mareanie", "Toxapex", "Shellder", "Cloyster", "Bagon", "Shelgon", "Salamence", "Lillipup", "Herdier", "Stoutland", "Eevee", "Vaporeon", "Jolteon", "Flareon", "Espeon", "Umbreon", "Leafeon", "Glaceon", "Sylveon", "Mudbray", "Mudsdale", "Igglybuff", "Jigglypuff", "Wigglytuff", "Tauros", "Miltank", "Surskit", "Masquerain", "Dewpider", "Araquanid", "Fomantis", "Lurantis", "Morelull", "Shiinotic", "Paras", "Parasect", "Poliwag", "Poliwhirl", "Poliwrath", "Politoed", "Goldeen", "Seaking", "Feebas", "Milotic", "Alomomola", "Fletchling", "Fletchinder", "Talonflame", "Salandit", "Salazzle", "Cubone", "Marowak-Alola", "Kangaskhan", "Magby", "Magmar", "Magmortar", "Stufful", "Bewear", "Bounsweet", "Steenee", "Tsareena", "Comfey", "Pinsir", "Oranguru", "Passimian", "Goomy", "Sliggoo", "Goodra", "Castform", "Wimpod", "Golisopod", "Staryu", "Starmie", "Sandygast", "Palossand", "Cranidos", "Rampardos", "Shieldon", "Bastiodon", "Archen", "Archeops", "Tirtouga", "Carracosta", "Phantump", "Trevenant", "Nosepass", "Probopass", "Pyukumuku", "Chinchou", "Lanturn", "Type: Null", "Silvally", "Zygarde", "Trubbish", "Garbodor", "Skarmory", "Ditto", "Cleffa", "Clefairy", "Clefable", "Minior", "Beldum", "Metang", "Metagross", "Porygon", "Porygon2", "Porygon-Z", "Pancham", "Pangoro", "Komala", "Torkoal", "Turtonator", "Togedemaru", "Elekid", "Electabuzz", "Electivire", "Geodude-Alola", "Graveler-Alola", "Golem-Alola", "Sandile", "Krokorok", "Krookodile", "Trapinch", "Vibrava", "Flygon", "Gible", "Gabite", "Garchomp", "Klefki", "Mimikyu", "Bruxish", "Drampa", "Absol", "Snorunt", "Glalie", "Froslass", "Sneasel", "Weavile", "Sandshrew-Alola", "Sandslash-Alola", "Vulpix-Alola", "Ninetales-Alola", "Vanillite", "Vanillish", "Vanilluxe", "Snubbull", "Granbull", "Shellos", "Gastrodon", "Relicanth", "Dhelmise", "Carvanha", "Sharpedo", "Wailmer", "Wailord", "Lapras", "Exeggcute", "Exeggutor-Alola", "Jangmo-o", "Hakamo-o", "Kommo-o", "Emolga", "Scyther", "Scizor", "Murkrow", "Honchkrow", "Riolu", "Lucario", "Dratini", "Dragonair", "Dragonite", "Aerodactyl", "Tapu Koko", "Tapu Lele", "Tapu Bulu", "Tapu Fini", "Cosmog", "Cosmoem", "Solgaleo", "Lunala", "Nihilego", "Buzzwole", "Pheromosa", "Xurkitree", "Celesteela", "Kartana", "Guzzlord", "Necrozma", "Magearna", "Marshadow",
|
|
15
|
+
];
|
|
16
|
+
if (!alolaDex.includes(species.baseSpecies) && !alolaDex.includes(species.name)) {
|
|
17
|
+
return [species.baseSpecies + " is not in the Alola Pokédex."];
|
|
18
|
+
}
|
|
19
|
+
},
|
|
20
|
+
},
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=rulesets.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rulesets.js","sourceRoot":"","sources":["../../src/vgc17/rulesets.ts"],"names":[],"mappings":";;;AAEa,QAAA,QAAQ,GAAoC;IACxD,YAAY,EAAE;QACb,UAAU,EAAE,eAAe;QAC3B,IAAI,EAAE,eAAe;QACrB,IAAI,EAAE,8DAA8D;QACpE,aAAa,CAAC,GAAG;YAChB,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC;YAC9D,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,GAAG,OAAO,CAAC,EAAE,CAAC;gBAAE,OAAO;YAEjD,MAAM,QAAQ,GAAG;gBAChB,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,eAAe,EAAE,gBAAgB,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,cAAc,EAAE,eAAe,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,cAAc,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,EAAE,cAAc,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,EAAE,eAAe,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,eAAe,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,YAAY,EAAE,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,aAAa,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,cAAc,EAAE,iBAAiB,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,iBAAiB,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW;aACjiH,CAAC;YACF,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;gBAChF,OAAO,CAAC,OAAO,CAAC,WAAW,GAAG,+BAA+B,CAAC,CAAC;aAC/D;QACF,CAAC;KACD;CACD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scripts.js","sourceRoot":"","sources":["../../src/vgc17/scripts.ts"],"names":[],"mappings":";;;AAEa,QAAA,OAAO,GAA4B;IAC/C,OAAO,EAAE,MAAM;CACf,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pkmn/mods",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.6.2",
|
|
4
4
|
"main": "build/index.js",
|
|
5
5
|
"types": "build/index.d.ts",
|
|
6
6
|
"exports": {
|
|
@@ -34,11 +34,11 @@
|
|
|
34
34
|
"!src/*.test.*"
|
|
35
35
|
],
|
|
36
36
|
"dependencies": {
|
|
37
|
-
"@pkmn/dex-types": "^0.
|
|
37
|
+
"@pkmn/dex-types": "^0.6.2"
|
|
38
38
|
},
|
|
39
39
|
"devDependencies": {
|
|
40
|
-
"@pkmn/dex": "^0.
|
|
41
|
-
"@pkmn/sim": "^0.
|
|
40
|
+
"@pkmn/dex": "^0.6.2",
|
|
41
|
+
"@pkmn/sim": "^0.6.2"
|
|
42
42
|
},
|
|
43
43
|
"scripts": {
|
|
44
44
|
"lint": "eslint --cache src --ext ts",
|
|
@@ -215,6 +215,7 @@ export const Scripts: ModdedBattleScriptsData = {
|
|
|
215
215
|
let i: number;
|
|
216
216
|
for (i = 0; i < hits && target.hp && pokemon.hp; i++) {
|
|
217
217
|
move.hit = i + 1;
|
|
218
|
+
if (move.hit === hits) move.lastHit = true;
|
|
218
219
|
moveDamage = this.moveHit(target, pokemon, move);
|
|
219
220
|
if (moveDamage === false) break;
|
|
220
221
|
damage = (moveDamage || 0);
|
|
@@ -390,14 +391,17 @@ export const Scripts: ModdedBattleScriptsData = {
|
|
|
390
391
|
// Apply move secondaries.
|
|
391
392
|
if (moveData.secondaries) {
|
|
392
393
|
for (const secondary of moveData.secondaries) {
|
|
393
|
-
//
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
if (
|
|
400
|
-
|
|
394
|
+
// Multi-hit moves only roll for status once
|
|
395
|
+
if (!move.multihit || move.lastHit) {
|
|
396
|
+
// We check here whether to negate the probable secondary status if it's para, burn, or freeze.
|
|
397
|
+
// In the game, this is checked and if true, the random number generator is not called.
|
|
398
|
+
// That means that a move that does not share the type of the target can status it.
|
|
399
|
+
// If a move that was not fire-type would exist on Gen 1, it could burn a Pokémon.
|
|
400
|
+
if (!(secondary.status && ['par', 'brn', 'frz'].includes(secondary.status) && target && target.hasType(move.type))) {
|
|
401
|
+
const effectChance = Math.floor((secondary.chance || 100) * 255 / 100);
|
|
402
|
+
if (typeof secondary.chance === 'undefined' || this.battle.randomChance(effectChance + 1, 256)) {
|
|
403
|
+
this.moveHit(target, pokemon, move, secondary, true, isSelf);
|
|
404
|
+
}
|
|
401
405
|
}
|
|
402
406
|
}
|
|
403
407
|
}
|