@robsonbittencourt/calc 0.10.0
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/.eslintignore +2 -0
- package/.eslintrc +12 -0
- package/bundle +107 -0
- package/dist/adaptable.d.ts +6 -0
- package/dist/adaptable.js +28 -0
- package/dist/adaptable.js.map +1 -0
- package/dist/calc.d.ts +6 -0
- package/dist/calc.js +26 -0
- package/dist/calc.js.map +1 -0
- package/dist/data/abilities.d.ts +15 -0
- package/dist/data/abilities.js +448 -0
- package/dist/data/abilities.js.map +1 -0
- package/dist/data/index.d.ts +2 -0
- package/dist/data/index.js +30 -0
- package/dist/data/index.js.map +1 -0
- package/dist/data/interface.d.ts +150 -0
- package/dist/data/interface.js +3 -0
- package/dist/data/interface.js.map +1 -0
- package/dist/data/items.d.ts +24 -0
- package/dist/data/items.js +708 -0
- package/dist/data/items.js.map +1 -0
- package/dist/data/moves.d.ts +86 -0
- package/dist/data/moves.js +5014 -0
- package/dist/data/moves.js.map +1 -0
- package/dist/data/natures.d.ts +17 -0
- package/dist/data/natures.js +127 -0
- package/dist/data/natures.js.map +1 -0
- package/dist/data/production.min.js +1 -0
- package/dist/data/species.d.ts +48 -0
- package/dist/data/species.js +10126 -0
- package/dist/data/species.js.map +1 -0
- package/dist/data/types.d.ts +23 -0
- package/dist/data/types.js +538 -0
- package/dist/data/types.js.map +1 -0
- package/dist/desc.d.ts +65 -0
- package/dist/desc.js +866 -0
- package/dist/desc.js.map +1 -0
- package/dist/field.d.ts +49 -0
- package/dist/field.js +111 -0
- package/dist/field.js.map +1 -0
- package/dist/index.d.ts +44 -0
- package/dist/index.js +99 -0
- package/dist/index.js.map +1 -0
- package/dist/items.d.ts +13 -0
- package/dist/items.js +434 -0
- package/dist/items.js.map +1 -0
- package/dist/mechanics/gen12.d.ts +6 -0
- package/dist/mechanics/gen12.js +271 -0
- package/dist/mechanics/gen12.js.map +1 -0
- package/dist/mechanics/gen3.d.ts +11 -0
- package/dist/mechanics/gen3.js +371 -0
- package/dist/mechanics/gen3.js.map +1 -0
- package/dist/mechanics/gen4.d.ts +11 -0
- package/dist/mechanics/gen4.js +596 -0
- package/dist/mechanics/gen4.js.map +1 -0
- package/dist/mechanics/gen56.d.ts +13 -0
- package/dist/mechanics/gen56.js +836 -0
- package/dist/mechanics/gen56.js.map +1 -0
- package/dist/mechanics/gen789.d.ts +14 -0
- package/dist/mechanics/gen789.js +1325 -0
- package/dist/mechanics/gen789.js.map +1 -0
- package/dist/mechanics/util.d.ts +39 -0
- package/dist/mechanics/util.js +675 -0
- package/dist/mechanics/util.js.map +1 -0
- package/dist/move.d.ts +50 -0
- package/dist/move.js +324 -0
- package/dist/move.js.map +1 -0
- package/dist/pokemon.d.ts +55 -0
- package/dist/pokemon.js +240 -0
- package/dist/pokemon.js.map +1 -0
- package/dist/production.min.js +1 -0
- package/dist/result.d.ts +34 -0
- package/dist/result.js +94 -0
- package/dist/result.js.map +1 -0
- package/dist/state.d.ts +77 -0
- package/dist/state.js +3 -0
- package/dist/state.js.map +1 -0
- package/dist/stats.d.ts +26 -0
- package/dist/stats.js +183 -0
- package/dist/stats.js.map +1 -0
- package/dist/test/calc.test.d.ts +1 -0
- package/dist/test/calc.test.js +1297 -0
- package/dist/test/calc.test.js.map +1 -0
- package/dist/test/data.test.d.ts +1 -0
- package/dist/test/data.test.js +368 -0
- package/dist/test/data.test.js.map +1 -0
- package/dist/test/gen.d.ts +135 -0
- package/dist/test/gen.js +636 -0
- package/dist/test/gen.js.map +1 -0
- package/dist/test/helper.d.ts +55 -0
- package/dist/test/helper.js +174 -0
- package/dist/test/helper.js.map +1 -0
- package/dist/test/move.test.d.ts +1 -0
- package/dist/test/move.test.js +14 -0
- package/dist/test/move.test.js.map +1 -0
- package/dist/test/pokemon.test.d.ts +1 -0
- package/dist/test/pokemon.test.js +102 -0
- package/dist/test/pokemon.test.js.map +1 -0
- package/dist/test/stats.test.d.ts +1 -0
- package/dist/test/stats.test.js +64 -0
- package/dist/test/stats.test.js.map +1 -0
- package/dist/test/utils.test.d.ts +1 -0
- package/dist/test/utils.test.js +19 -0
- package/dist/test/utils.test.js.map +1 -0
- package/dist/util.d.ts +17 -0
- package/dist/util.js +115 -0
- package/dist/util.js.map +1 -0
- package/jest.config.js +11 -0
- package/package.json +40 -0
- package/src/adaptable.ts +12 -0
- package/src/calc.ts +40 -0
- package/src/data/abilities.ts +383 -0
- package/src/data/index.ts +36 -0
- package/src/data/interface.ts +176 -0
- package/src/data/items.ts +632 -0
- package/src/data/moves.ts +5028 -0
- package/src/data/natures.ts +65 -0
- package/src/data/species.ts +10098 -0
- package/src/data/types.ts +478 -0
- package/src/desc.ts +1063 -0
- package/src/field.ts +124 -0
- package/src/index.ts +156 -0
- package/src/items.ts +423 -0
- package/src/mechanics/gen12.ts +297 -0
- package/src/mechanics/gen3.ts +444 -0
- package/src/mechanics/gen4.ts +702 -0
- package/src/mechanics/gen56.ts +1134 -0
- package/src/mechanics/gen789.ts +1788 -0
- package/src/mechanics/util.ts +676 -0
- package/src/move.ts +337 -0
- package/src/pokemon.ts +244 -0
- package/src/result.ts +106 -0
- package/src/state.ts +81 -0
- package/src/stats.ts +213 -0
- package/src/test/calc.test.ts +1588 -0
- package/src/test/data.test.ts +129 -0
- package/src/test/gen.ts +514 -0
- package/src/test/helper.ts +185 -0
- package/src/test/move.test.ts +13 -0
- package/src/test/pokemon.test.ts +121 -0
- package/src/test/stats.test.ts +84 -0
- package/src/test/utils.test.ts +18 -0
- package/src/util.ts +153 -0
- package/tsconfig.json +10 -0
package/.eslintignore
ADDED
package/.eslintrc
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
{
|
|
2
|
+
"root": true,
|
|
3
|
+
"extends": "@pkmn",
|
|
4
|
+
"rules": {
|
|
5
|
+
"@typescript-eslint/no-shadow": "off",
|
|
6
|
+
"@typescript-eslint/no-unused-vars": "off",
|
|
7
|
+
"jest/no-standalone-expect": "off",
|
|
8
|
+
"@typescript-eslint/restrict-template-expressions": "off",
|
|
9
|
+
"jest/no-conditional-expect": "off",
|
|
10
|
+
"@typescript-eslint/consistent-type-imports": "error"
|
|
11
|
+
}
|
|
12
|
+
}
|
package/bundle
ADDED
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
// TODO: use bundled output in official UI, switch Typescript version to generate modern JS
|
|
5
|
+
|
|
6
|
+
const Bundler = require('../bundler');
|
|
7
|
+
const bundler = new Bundler(__dirname);
|
|
8
|
+
|
|
9
|
+
// calc/data
|
|
10
|
+
let bundled = `(() => {
|
|
11
|
+
'use strict';
|
|
12
|
+
const exports = {};
|
|
13
|
+
`;
|
|
14
|
+
bundled += bundler.read('util.js', 3, 1);
|
|
15
|
+
const species = bundler.read('data/species.js').split('\n');
|
|
16
|
+
bundled += species.slice(1, 64).join('\n'); // generator + iterator + spreadArray polyfill
|
|
17
|
+
bundled += '\nvar e_1, _a, e_2, _b;\nvar util_1 = exports;\n';
|
|
18
|
+
bundled += species.slice(68, -2).join('\n');
|
|
19
|
+
|
|
20
|
+
const types = bundler.read('data/types.js').split('\n');
|
|
21
|
+
bundled += types.slice(1, 12).join('\n'); // __assign polyfill
|
|
22
|
+
bundled += types.slice(54, -2).join('\n')
|
|
23
|
+
const natures = bundler.read('data/natures.js').split('\n');
|
|
24
|
+
bundled += natures.slice(28, 44).join('\n'); // __read polyfill
|
|
25
|
+
bundled += natures.slice(47, -2).join('\n');
|
|
26
|
+
bundled += bundler.read('data/abilities.js', 43, 1);
|
|
27
|
+
bundled += bundler.read('data/moves.js', 43, 1);
|
|
28
|
+
bundled += bundler.read('data/items.js', 68, 1);
|
|
29
|
+
bundled += `
|
|
30
|
+
var abilities_1 = exports;
|
|
31
|
+
var items_1 = exports;
|
|
32
|
+
var moves_1 = exports;
|
|
33
|
+
var species_1 = exports;
|
|
34
|
+
var types_1 = exports;
|
|
35
|
+
var natures_1 = exports;
|
|
36
|
+
`;
|
|
37
|
+
bundled += bundler.read('data/index.js', 9, 1);
|
|
38
|
+
bundled += `
|
|
39
|
+
// EXPORTS
|
|
40
|
+
window.calc = Object.assign(window.calc || {}, {
|
|
41
|
+
Generations: exports.Generations,
|
|
42
|
+
ABILITIES: exports.ABILITIES,
|
|
43
|
+
ITEMS: exports.ITEMS,
|
|
44
|
+
MEGA_STONES: exports.MEGA_STONES,
|
|
45
|
+
MOVES: exports.MOVES,
|
|
46
|
+
SPECIES: exports.SPECIES,
|
|
47
|
+
NATURES: exports.NATURES,
|
|
48
|
+
TYPE_CHART: exports.TYPE_CHART,
|
|
49
|
+
});
|
|
50
|
+
})();`
|
|
51
|
+
bundler.bundle(bundled, 'data/production.min.js');
|
|
52
|
+
|
|
53
|
+
// calc
|
|
54
|
+
bundled = `(() => {
|
|
55
|
+
'use strict';
|
|
56
|
+
const exports = {};
|
|
57
|
+
`;
|
|
58
|
+
bundled += bundler.read('util.js', 3, 1);
|
|
59
|
+
bundled += '\nvar util_1 = exports;\n';
|
|
60
|
+
bundled += bundler.read('stats.js', 4, 1);
|
|
61
|
+
bundled += '\nvar stats_1 = exports;\n';
|
|
62
|
+
const pokemon = bundler.read('pokemon.js').split('\n');
|
|
63
|
+
bundled += pokemon.slice(1, 23).join('\n'); // __assign + iterator polyfill
|
|
64
|
+
bundled += pokemon.slice(27, -2).join('\n');
|
|
65
|
+
const field = bundler.read('field.js').split('\n');
|
|
66
|
+
bundled += field.slice(1, 17).join('\n'); // __read polyfill
|
|
67
|
+
bundled += field.slice(19, -2).join('\n');
|
|
68
|
+
bundled += bundler.read('move.js', 4, 1);
|
|
69
|
+
bundled += bundler.read('items.js', 4, 1);
|
|
70
|
+
const utils = bundler.read('mechanics/util.js').split('\n');
|
|
71
|
+
bundled += utils.slice(28, 37).join('\n'); // spreadArray polyfill
|
|
72
|
+
bundled += utils.slice(41, -2).join('\n');
|
|
73
|
+
bundled += bundler.read('result.js', 29, 1);
|
|
74
|
+
bundled += '\nvar result_1 = exports;\nvar util_2 = exports;\n';
|
|
75
|
+
bundled += bundler.read('desc.js', 22, 1);
|
|
76
|
+
bundled += '\nvar desc_1 = exports;\nvar items_1 = exports;\n';
|
|
77
|
+
bundled += bundler.read('mechanics/gen789.js', 7, 1);
|
|
78
|
+
bundled += bundler.read('mechanics/gen56.js', 7, 1);
|
|
79
|
+
bundled += bundler.read('mechanics/gen4.js', 31, 1);
|
|
80
|
+
// These don't require 'util', so 'mechanics/util' gets the util_1 name.
|
|
81
|
+
bundled += bundler.read('mechanics/gen3.js', 31, 1).replace(/util_1/g, 'util_2');
|
|
82
|
+
bundled += bundler.read('mechanics/gen12.js', 31, 1).replace(/util_1/g, 'util_2');
|
|
83
|
+
bundled += `
|
|
84
|
+
var field_1 = exports;
|
|
85
|
+
var gen12_1 = exports;
|
|
86
|
+
var gen3_1 = exports;
|
|
87
|
+
var gen4_1 = exports;
|
|
88
|
+
var gen56_1 = exports;
|
|
89
|
+
var gen789_1 = exports;
|
|
90
|
+
`;
|
|
91
|
+
bundled += bundler.read('calc.js', 9, 1);
|
|
92
|
+
|
|
93
|
+
bundled += `
|
|
94
|
+
// EXPORTS
|
|
95
|
+
window.calc = Object.assign(window.calc || {}, {
|
|
96
|
+
Field: exports.Field,
|
|
97
|
+
Side: exports.Side,
|
|
98
|
+
Pokemon: exports.Pokemon,
|
|
99
|
+
Move: exports.Move,
|
|
100
|
+
calculate: exports.calculate,
|
|
101
|
+
Result: exports.Result,
|
|
102
|
+
toID: exports.toID,
|
|
103
|
+
STATS: exports.STATS,
|
|
104
|
+
Stats: exports.Stats,
|
|
105
|
+
});
|
|
106
|
+
})();`
|
|
107
|
+
bundler.bundle(bundled);
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
exports.__esModule = true;
|
|
14
|
+
exports.Stats = exports.Result = exports.Side = exports.Field = exports.Move = exports.Pokemon = exports.calculate = void 0;
|
|
15
|
+
var calc_1 = require("./calc");
|
|
16
|
+
__createBinding(exports, calc_1, "calculate");
|
|
17
|
+
var pokemon_1 = require("./pokemon");
|
|
18
|
+
__createBinding(exports, pokemon_1, "Pokemon");
|
|
19
|
+
var move_1 = require("./move");
|
|
20
|
+
__createBinding(exports, move_1, "Move");
|
|
21
|
+
var field_1 = require("./field");
|
|
22
|
+
__createBinding(exports, field_1, "Field");
|
|
23
|
+
__createBinding(exports, field_1, "Side");
|
|
24
|
+
var result_1 = require("./result");
|
|
25
|
+
__createBinding(exports, result_1, "Result");
|
|
26
|
+
var stats_1 = require("./stats");
|
|
27
|
+
__createBinding(exports, stats_1, "Stats");
|
|
28
|
+
//# sourceMappingURL=adaptable.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adaptable.js","sourceRoot":"","sources":["../src/adaptable.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAMA,+BAAiC;AAAzB,8CAAS;AACjB,qCAAkC;AAA1B,+CAAO;AACf,+BAA4B;AAApB,yCAAI;AACZ,iCAAoC;AAA5B,2CAAK;AAAE,0CAAI;AACnB,mCAAgC;AAAxB,6CAAM;AACd,iCAA8B;AAAtB,2CAAK"}
|
package/dist/calc.d.ts
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { Field } from './field';
|
|
2
|
+
import type { Generation } from './data/interface';
|
|
3
|
+
import type { Move } from './move';
|
|
4
|
+
import type { Pokemon } from './pokemon';
|
|
5
|
+
import type { Result } from './result';
|
|
6
|
+
export declare function calculate(gen: Generation, attacker: Pokemon, defender: Pokemon, move: Move, field?: Field): Result;
|
package/dist/calc.js
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
exports.__esModule = true;
|
|
3
|
+
exports.calculate = void 0;
|
|
4
|
+
var field_1 = require("./field");
|
|
5
|
+
var gen12_1 = require("./mechanics/gen12");
|
|
6
|
+
var gen3_1 = require("./mechanics/gen3");
|
|
7
|
+
var gen4_1 = require("./mechanics/gen4");
|
|
8
|
+
var gen56_1 = require("./mechanics/gen56");
|
|
9
|
+
var gen789_1 = require("./mechanics/gen789");
|
|
10
|
+
var MECHANICS = [
|
|
11
|
+
function () { },
|
|
12
|
+
gen12_1.calculateRBYGSC,
|
|
13
|
+
gen12_1.calculateRBYGSC,
|
|
14
|
+
gen3_1.calculateADV,
|
|
15
|
+
gen4_1.calculateDPP,
|
|
16
|
+
gen56_1.calculateBWXY,
|
|
17
|
+
gen56_1.calculateBWXY,
|
|
18
|
+
gen789_1.calculateSMSSSV,
|
|
19
|
+
gen789_1.calculateSMSSSV,
|
|
20
|
+
gen789_1.calculateSMSSSV,
|
|
21
|
+
];
|
|
22
|
+
function calculate(gen, attacker, defender, move, field) {
|
|
23
|
+
return MECHANICS[gen.num](gen, attacker.clone(), defender.clone(), move.clone(), field ? field.clone() : new field_1.Field());
|
|
24
|
+
}
|
|
25
|
+
exports.calculate = calculate;
|
|
26
|
+
//# sourceMappingURL=calc.js.map
|
package/dist/calc.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"calc.js","sourceRoot":"","sources":["../src/calc.ts"],"names":[],"mappings":";;;AAAA,iCAA8B;AAM9B,2CAAkD;AAClD,yCAA8C;AAC9C,yCAA8C;AAC9C,2CAAgD;AAChD,6CAAmD;AAEnD,IAAM,SAAS,GAAG;IAChB,cAAO,CAAC;IACR,uBAAe;IACf,uBAAe;IACf,mBAAY;IACZ,mBAAY;IACZ,qBAAa;IACb,qBAAa;IACb,wBAAe;IACf,wBAAe;IACf,wBAAe;CAChB,CAAC;AAEF,SAAgB,SAAS,CACvB,GAAe,EACf,QAAiB,EACjB,QAAiB,EACjB,IAAU,EACV,KAAa;IAEb,OAAO,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CACvB,GAAG,EACH,QAAQ,CAAC,KAAK,EAAE,EAChB,QAAQ,CAAC,KAAK,EAAE,EAChB,IAAI,CAAC,KAAK,EAAE,EACZ,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,aAAK,EAAE,CAC1B,CAAC;AACd,CAAC;AAdD,8BAcC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type * as I from './interface';
|
|
2
|
+
export declare const ABILITIES: string[][];
|
|
3
|
+
export declare class Abilities implements I.Abilities {
|
|
4
|
+
private readonly gen;
|
|
5
|
+
constructor(gen: I.GenerationNum);
|
|
6
|
+
get(id: I.ID): Ability;
|
|
7
|
+
[Symbol.iterator](): Generator<Ability, void, unknown>;
|
|
8
|
+
}
|
|
9
|
+
declare class Ability implements I.Ability {
|
|
10
|
+
readonly kind: 'Ability';
|
|
11
|
+
readonly id: I.ID;
|
|
12
|
+
readonly name: I.AbilityName;
|
|
13
|
+
constructor(name: string);
|
|
14
|
+
}
|
|
15
|
+
export {};
|
|
@@ -0,0 +1,448 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
3
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
4
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
5
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
6
|
+
function step(op) {
|
|
7
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
8
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
9
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
10
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
11
|
+
switch (op[0]) {
|
|
12
|
+
case 0: case 1: t = op; break;
|
|
13
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
14
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
15
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
16
|
+
default:
|
|
17
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
18
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
19
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
20
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
21
|
+
if (t[2]) _.ops.pop();
|
|
22
|
+
_.trys.pop(); continue;
|
|
23
|
+
}
|
|
24
|
+
op = body.call(thisArg, _);
|
|
25
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
26
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
var __values = (this && this.__values) || function(o) {
|
|
30
|
+
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
|
31
|
+
if (m) return m.call(o);
|
|
32
|
+
if (o && typeof o.length === "number") return {
|
|
33
|
+
next: function () {
|
|
34
|
+
if (o && i >= o.length) o = void 0;
|
|
35
|
+
return { value: o && o[i++], done: !o };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
39
|
+
};
|
|
40
|
+
var e_1, _a, e_2, _b;
|
|
41
|
+
exports.__esModule = true;
|
|
42
|
+
exports.Abilities = exports.ABILITIES = void 0;
|
|
43
|
+
var util_1 = require("../util");
|
|
44
|
+
var RBY = [];
|
|
45
|
+
var GSC = [];
|
|
46
|
+
var ADV = [
|
|
47
|
+
'Air Lock',
|
|
48
|
+
'Arena Trap',
|
|
49
|
+
'Battle Armor',
|
|
50
|
+
'Blaze',
|
|
51
|
+
'Chlorophyll',
|
|
52
|
+
'Clear Body',
|
|
53
|
+
'Cloud Nine',
|
|
54
|
+
'Color Change',
|
|
55
|
+
'Compound Eyes',
|
|
56
|
+
'Cute Charm',
|
|
57
|
+
'Drizzle',
|
|
58
|
+
'Damp',
|
|
59
|
+
'Drought',
|
|
60
|
+
'Early Bird',
|
|
61
|
+
'Effect Spore',
|
|
62
|
+
'Flame Body',
|
|
63
|
+
'Flash Fire',
|
|
64
|
+
'Forecast',
|
|
65
|
+
'Guts',
|
|
66
|
+
'Huge Power',
|
|
67
|
+
'Hustle',
|
|
68
|
+
'Hyper Cutter',
|
|
69
|
+
'Illuminate',
|
|
70
|
+
'Immunity',
|
|
71
|
+
'Inner Focus',
|
|
72
|
+
'Insomnia',
|
|
73
|
+
'Intimidate',
|
|
74
|
+
'Keen Eye',
|
|
75
|
+
'Levitate',
|
|
76
|
+
'Lightning Rod',
|
|
77
|
+
'Limber',
|
|
78
|
+
'Liquid Ooze',
|
|
79
|
+
'Magma Armor',
|
|
80
|
+
'Magnet Pull',
|
|
81
|
+
'Marvel Scale',
|
|
82
|
+
'Minus',
|
|
83
|
+
'Natural Cure',
|
|
84
|
+
'Oblivious',
|
|
85
|
+
'Overgrow',
|
|
86
|
+
'Own Tempo',
|
|
87
|
+
'Pickup',
|
|
88
|
+
'Plus',
|
|
89
|
+
'Poison Point',
|
|
90
|
+
'Pressure',
|
|
91
|
+
'Pure Power',
|
|
92
|
+
'Rain Dish',
|
|
93
|
+
'Rock Head',
|
|
94
|
+
'Rough Skin',
|
|
95
|
+
'Run Away',
|
|
96
|
+
'Sand Stream',
|
|
97
|
+
'Sand Veil',
|
|
98
|
+
'Serene Grace',
|
|
99
|
+
'Shadow Tag',
|
|
100
|
+
'Shed Skin',
|
|
101
|
+
'Shell Armor',
|
|
102
|
+
'Shield Dust',
|
|
103
|
+
'Soundproof',
|
|
104
|
+
'Speed Boost',
|
|
105
|
+
'Static',
|
|
106
|
+
'Stench',
|
|
107
|
+
'Sticky Hold',
|
|
108
|
+
'Sturdy',
|
|
109
|
+
'Suction Cups',
|
|
110
|
+
'Swarm',
|
|
111
|
+
'Swift Swim',
|
|
112
|
+
'Synchronize',
|
|
113
|
+
'Thick Fat',
|
|
114
|
+
'Torrent',
|
|
115
|
+
'Trace',
|
|
116
|
+
'Truant',
|
|
117
|
+
'Vital Spirit',
|
|
118
|
+
'Volt Absorb',
|
|
119
|
+
'Water Absorb',
|
|
120
|
+
'Water Veil',
|
|
121
|
+
'White Smoke',
|
|
122
|
+
'Wonder Guard',
|
|
123
|
+
];
|
|
124
|
+
var DPP = ADV.concat([
|
|
125
|
+
'Adaptability',
|
|
126
|
+
'Aftermath',
|
|
127
|
+
'Anger Point',
|
|
128
|
+
'Anticipation',
|
|
129
|
+
'Bad Dreams',
|
|
130
|
+
'Download',
|
|
131
|
+
'Dry Skin',
|
|
132
|
+
'Filter',
|
|
133
|
+
'Flower Gift',
|
|
134
|
+
'Forewarn',
|
|
135
|
+
'Frisk',
|
|
136
|
+
'Gluttony',
|
|
137
|
+
'Heatproof',
|
|
138
|
+
'Honey Gather',
|
|
139
|
+
'Hydration',
|
|
140
|
+
'Ice Body',
|
|
141
|
+
'Iron Fist',
|
|
142
|
+
'Klutz',
|
|
143
|
+
'Leaf Guard',
|
|
144
|
+
'Magic Guard',
|
|
145
|
+
'Mold Breaker',
|
|
146
|
+
'Motor Drive',
|
|
147
|
+
'Mountaineer',
|
|
148
|
+
'Multitype',
|
|
149
|
+
'No Guard',
|
|
150
|
+
'Normalize',
|
|
151
|
+
'Persistent',
|
|
152
|
+
'Poison Heal',
|
|
153
|
+
'Quick Feet',
|
|
154
|
+
'Rebound',
|
|
155
|
+
'Reckless',
|
|
156
|
+
'Rivalry',
|
|
157
|
+
'Scrappy',
|
|
158
|
+
'Simple',
|
|
159
|
+
'Skill Link',
|
|
160
|
+
'Slow Start',
|
|
161
|
+
'Sniper',
|
|
162
|
+
'Snow Cloak',
|
|
163
|
+
'Snow Warning',
|
|
164
|
+
'Solar Power',
|
|
165
|
+
'Solid Rock',
|
|
166
|
+
'Stall',
|
|
167
|
+
'Steadfast',
|
|
168
|
+
'Storm Drain',
|
|
169
|
+
'Super Luck',
|
|
170
|
+
'Tangled Feet',
|
|
171
|
+
'Technician',
|
|
172
|
+
'Tinted Lens',
|
|
173
|
+
'Unaware',
|
|
174
|
+
'Unburden',
|
|
175
|
+
]);
|
|
176
|
+
var BW = DPP.concat([
|
|
177
|
+
'Analytic',
|
|
178
|
+
'Big Pecks',
|
|
179
|
+
'Contrary',
|
|
180
|
+
'Cursed Body',
|
|
181
|
+
'Defeatist',
|
|
182
|
+
'Defiant',
|
|
183
|
+
'Flare Boost',
|
|
184
|
+
'Friend Guard',
|
|
185
|
+
'Harvest',
|
|
186
|
+
'Healer',
|
|
187
|
+
'Heavy Metal',
|
|
188
|
+
'Illusion',
|
|
189
|
+
'Imposter',
|
|
190
|
+
'Infiltrator',
|
|
191
|
+
'Iron Barbs',
|
|
192
|
+
'Light Metal',
|
|
193
|
+
'Justified',
|
|
194
|
+
'Magic Bounce',
|
|
195
|
+
'Moody',
|
|
196
|
+
'Moxie',
|
|
197
|
+
'Multiscale',
|
|
198
|
+
'Mummy',
|
|
199
|
+
'Overcoat',
|
|
200
|
+
'Pickpocket',
|
|
201
|
+
'Poison Touch',
|
|
202
|
+
'Prankster',
|
|
203
|
+
'Rattled',
|
|
204
|
+
'Regenerator',
|
|
205
|
+
'Sand Force',
|
|
206
|
+
'Sand Rush',
|
|
207
|
+
'Sap Sipper',
|
|
208
|
+
'Sheer Force',
|
|
209
|
+
'Telepathy',
|
|
210
|
+
'Teravolt',
|
|
211
|
+
'Toxic Boost',
|
|
212
|
+
'Turboblaze',
|
|
213
|
+
'Unnerve',
|
|
214
|
+
'Victory Star',
|
|
215
|
+
'Weak Armor',
|
|
216
|
+
'Wonder Skin',
|
|
217
|
+
'Zen Mode',
|
|
218
|
+
]);
|
|
219
|
+
var XY = BW.concat([
|
|
220
|
+
'Aerilate',
|
|
221
|
+
'Aura Break',
|
|
222
|
+
'Aroma Veil',
|
|
223
|
+
'Bulletproof',
|
|
224
|
+
'Cheek Pouch',
|
|
225
|
+
'Competitive',
|
|
226
|
+
'Dark Aura',
|
|
227
|
+
'Delta Stream',
|
|
228
|
+
'Desolate Land',
|
|
229
|
+
'Fairy Aura',
|
|
230
|
+
'Flower Veil',
|
|
231
|
+
'Fur Coat',
|
|
232
|
+
'Gale Wings',
|
|
233
|
+
'Gooey',
|
|
234
|
+
'Grass Pelt',
|
|
235
|
+
'Magician',
|
|
236
|
+
'Mega Launcher',
|
|
237
|
+
'Parental Bond',
|
|
238
|
+
'Pixilate',
|
|
239
|
+
'Primordial Sea',
|
|
240
|
+
'Protean',
|
|
241
|
+
'Refrigerate',
|
|
242
|
+
'Stance Change',
|
|
243
|
+
'Strong Jaw',
|
|
244
|
+
'Sweet Veil',
|
|
245
|
+
'Symbiosis',
|
|
246
|
+
'Tough Claws',
|
|
247
|
+
]);
|
|
248
|
+
var SM = XY.concat([
|
|
249
|
+
'Battery',
|
|
250
|
+
'Battle Bond',
|
|
251
|
+
'Beast Boost',
|
|
252
|
+
'Berserk',
|
|
253
|
+
'Comatose',
|
|
254
|
+
'Corrosion',
|
|
255
|
+
'Dancer',
|
|
256
|
+
'Dazzling',
|
|
257
|
+
'Disguise',
|
|
258
|
+
'Electric Surge',
|
|
259
|
+
'Emergency Exit',
|
|
260
|
+
'Fluffy',
|
|
261
|
+
'Full Metal Body',
|
|
262
|
+
'Galvanize',
|
|
263
|
+
'Grassy Surge',
|
|
264
|
+
'Innards Out',
|
|
265
|
+
'Liquid Voice',
|
|
266
|
+
'Long Reach',
|
|
267
|
+
'Merciless',
|
|
268
|
+
'Misty Surge',
|
|
269
|
+
'Neuroforce',
|
|
270
|
+
'Power Construct',
|
|
271
|
+
'Power of Alchemy',
|
|
272
|
+
'Prism Armor',
|
|
273
|
+
'Psychic Surge',
|
|
274
|
+
'Queenly Majesty',
|
|
275
|
+
'RKS System',
|
|
276
|
+
'Receiver',
|
|
277
|
+
'Schooling',
|
|
278
|
+
'Shadow Shield',
|
|
279
|
+
'Shields Down',
|
|
280
|
+
'Slush Rush',
|
|
281
|
+
'Stamina',
|
|
282
|
+
'Stakeout',
|
|
283
|
+
'Steelworker',
|
|
284
|
+
'Soul-Heart',
|
|
285
|
+
'Surge Surfer',
|
|
286
|
+
'Tangling Hair',
|
|
287
|
+
'Triage',
|
|
288
|
+
'Water Bubble',
|
|
289
|
+
'Water Compaction',
|
|
290
|
+
'Wimp Out',
|
|
291
|
+
]);
|
|
292
|
+
var SS = SM.concat([
|
|
293
|
+
'As One (Glastrier)',
|
|
294
|
+
'As One (Spectrier)',
|
|
295
|
+
'Ball Fetch',
|
|
296
|
+
'Chilling Neigh',
|
|
297
|
+
'Cotton Down',
|
|
298
|
+
'Curious Medicine',
|
|
299
|
+
'Dauntless Shield',
|
|
300
|
+
'Dragon\'s Maw',
|
|
301
|
+
'Gorilla Tactics',
|
|
302
|
+
'Grim Neigh',
|
|
303
|
+
'Gulp Missile',
|
|
304
|
+
'Hunger Switch',
|
|
305
|
+
'Ice Face',
|
|
306
|
+
'Ice Scales',
|
|
307
|
+
'Intrepid Sword',
|
|
308
|
+
'Libero',
|
|
309
|
+
'Mimicry',
|
|
310
|
+
'Mirror Armor',
|
|
311
|
+
'Neutralizing Gas',
|
|
312
|
+
'Pastel Veil',
|
|
313
|
+
'Perish Body',
|
|
314
|
+
'Power Spot',
|
|
315
|
+
'Propeller Tail',
|
|
316
|
+
'Punk Rock',
|
|
317
|
+
'Quick Draw',
|
|
318
|
+
'Ripen',
|
|
319
|
+
'Sand Spit',
|
|
320
|
+
'Screen Cleaner',
|
|
321
|
+
'Stalwart',
|
|
322
|
+
'Steam Engine',
|
|
323
|
+
'Steely Spirit',
|
|
324
|
+
'Transistor',
|
|
325
|
+
'Unseen Fist',
|
|
326
|
+
'Wandering Spirit',
|
|
327
|
+
]);
|
|
328
|
+
var SV = SS.concat([
|
|
329
|
+
'Anger Shell',
|
|
330
|
+
'Armor Tail',
|
|
331
|
+
'Beads of Ruin',
|
|
332
|
+
'Commander',
|
|
333
|
+
'Costar',
|
|
334
|
+
'Cud Chew',
|
|
335
|
+
'Earth Eater',
|
|
336
|
+
'Electromorphosis',
|
|
337
|
+
'Embody Aspect (Cornerstone)',
|
|
338
|
+
'Embody Aspect (Hearthflame)',
|
|
339
|
+
'Embody Aspect (Teal)',
|
|
340
|
+
'Embody Aspect (Wellspring)',
|
|
341
|
+
'Good as Gold',
|
|
342
|
+
'Guard Dog',
|
|
343
|
+
'Hadron Engine',
|
|
344
|
+
'Hospitality',
|
|
345
|
+
'Lingering Aroma',
|
|
346
|
+
'Mind\'s Eye',
|
|
347
|
+
'Mycelium Might',
|
|
348
|
+
'Opportunist',
|
|
349
|
+
'Orichalcum Pulse',
|
|
350
|
+
'Poison Puppeteer',
|
|
351
|
+
'Protosynthesis',
|
|
352
|
+
'Purifying Salt',
|
|
353
|
+
'Quark Drive',
|
|
354
|
+
'Rocky Payload',
|
|
355
|
+
'Seed Sower',
|
|
356
|
+
'Sharpness',
|
|
357
|
+
'Supersweet Syrup',
|
|
358
|
+
'Supreme Overlord',
|
|
359
|
+
'Sword of Ruin',
|
|
360
|
+
'Tablets of Ruin',
|
|
361
|
+
'Tera Shell',
|
|
362
|
+
'Tera Shift',
|
|
363
|
+
'Teraform Zero',
|
|
364
|
+
'Thermal Exchange',
|
|
365
|
+
'Toxic Chain',
|
|
366
|
+
'Toxic Debris',
|
|
367
|
+
'Vessel of Ruin',
|
|
368
|
+
'Well-Baked Body',
|
|
369
|
+
'Wind Power',
|
|
370
|
+
'Wind Rider',
|
|
371
|
+
'Zero to Hero',
|
|
372
|
+
]);
|
|
373
|
+
exports.ABILITIES = [[], RBY, GSC, ADV, DPP, BW, XY, SM, SS, SV];
|
|
374
|
+
var Abilities = (function () {
|
|
375
|
+
function Abilities(gen) {
|
|
376
|
+
this.gen = gen;
|
|
377
|
+
}
|
|
378
|
+
Abilities.prototype.get = function (id) {
|
|
379
|
+
return ABILITIES_BY_ID[this.gen][id];
|
|
380
|
+
};
|
|
381
|
+
Abilities.prototype[Symbol.iterator] = function () {
|
|
382
|
+
var _a, _b, _c, _i, id;
|
|
383
|
+
return __generator(this, function (_d) {
|
|
384
|
+
switch (_d.label) {
|
|
385
|
+
case 0:
|
|
386
|
+
_a = ABILITIES_BY_ID[this.gen];
|
|
387
|
+
_b = [];
|
|
388
|
+
for (_c in _a)
|
|
389
|
+
_b.push(_c);
|
|
390
|
+
_i = 0;
|
|
391
|
+
_d.label = 1;
|
|
392
|
+
case 1:
|
|
393
|
+
if (!(_i < _b.length)) return [3, 4];
|
|
394
|
+
_c = _b[_i];
|
|
395
|
+
if (!(_c in _a)) return [3, 3];
|
|
396
|
+
id = _c;
|
|
397
|
+
return [4, this.get(id)];
|
|
398
|
+
case 2:
|
|
399
|
+
_d.sent();
|
|
400
|
+
_d.label = 3;
|
|
401
|
+
case 3:
|
|
402
|
+
_i++;
|
|
403
|
+
return [3, 1];
|
|
404
|
+
case 4: return [2];
|
|
405
|
+
}
|
|
406
|
+
});
|
|
407
|
+
};
|
|
408
|
+
return Abilities;
|
|
409
|
+
}());
|
|
410
|
+
exports.Abilities = Abilities;
|
|
411
|
+
var Ability = (function () {
|
|
412
|
+
function Ability(name) {
|
|
413
|
+
this.kind = 'Ability';
|
|
414
|
+
this.id = (0, util_1.toID)(name);
|
|
415
|
+
this.name = name;
|
|
416
|
+
}
|
|
417
|
+
return Ability;
|
|
418
|
+
}());
|
|
419
|
+
var ABILITIES_BY_ID = [];
|
|
420
|
+
try {
|
|
421
|
+
for (var ABILITIES_1 = __values(exports.ABILITIES), ABILITIES_1_1 = ABILITIES_1.next(); !ABILITIES_1_1.done; ABILITIES_1_1 = ABILITIES_1.next()) {
|
|
422
|
+
var abilities = ABILITIES_1_1.value;
|
|
423
|
+
var map = {};
|
|
424
|
+
try {
|
|
425
|
+
for (var abilities_1 = (e_2 = void 0, __values(abilities)), abilities_1_1 = abilities_1.next(); !abilities_1_1.done; abilities_1_1 = abilities_1.next()) {
|
|
426
|
+
var ability = abilities_1_1.value;
|
|
427
|
+
var a = new Ability(ability);
|
|
428
|
+
map[a.id] = a;
|
|
429
|
+
}
|
|
430
|
+
}
|
|
431
|
+
catch (e_2_1) { e_2 = { error: e_2_1 }; }
|
|
432
|
+
finally {
|
|
433
|
+
try {
|
|
434
|
+
if (abilities_1_1 && !abilities_1_1.done && (_b = abilities_1["return"])) _b.call(abilities_1);
|
|
435
|
+
}
|
|
436
|
+
finally { if (e_2) throw e_2.error; }
|
|
437
|
+
}
|
|
438
|
+
ABILITIES_BY_ID.push(map);
|
|
439
|
+
}
|
|
440
|
+
}
|
|
441
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
442
|
+
finally {
|
|
443
|
+
try {
|
|
444
|
+
if (ABILITIES_1_1 && !ABILITIES_1_1.done && (_a = ABILITIES_1["return"])) _a.call(ABILITIES_1);
|
|
445
|
+
}
|
|
446
|
+
finally { if (e_1) throw e_1.error; }
|
|
447
|
+
}
|
|
448
|
+
//# sourceMappingURL=abilities.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"abilities.js","sourceRoot":"","sources":["../../src/data/abilities.ts"],"names":[],"mappings":"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"}
|