@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.
Files changed (144) hide show
  1. package/.eslintignore +2 -0
  2. package/.eslintrc +12 -0
  3. package/bundle +107 -0
  4. package/dist/adaptable.d.ts +6 -0
  5. package/dist/adaptable.js +28 -0
  6. package/dist/adaptable.js.map +1 -0
  7. package/dist/calc.d.ts +6 -0
  8. package/dist/calc.js +26 -0
  9. package/dist/calc.js.map +1 -0
  10. package/dist/data/abilities.d.ts +15 -0
  11. package/dist/data/abilities.js +448 -0
  12. package/dist/data/abilities.js.map +1 -0
  13. package/dist/data/index.d.ts +2 -0
  14. package/dist/data/index.js +30 -0
  15. package/dist/data/index.js.map +1 -0
  16. package/dist/data/interface.d.ts +150 -0
  17. package/dist/data/interface.js +3 -0
  18. package/dist/data/interface.js.map +1 -0
  19. package/dist/data/items.d.ts +24 -0
  20. package/dist/data/items.js +708 -0
  21. package/dist/data/items.js.map +1 -0
  22. package/dist/data/moves.d.ts +86 -0
  23. package/dist/data/moves.js +5014 -0
  24. package/dist/data/moves.js.map +1 -0
  25. package/dist/data/natures.d.ts +17 -0
  26. package/dist/data/natures.js +127 -0
  27. package/dist/data/natures.js.map +1 -0
  28. package/dist/data/production.min.js +1 -0
  29. package/dist/data/species.d.ts +48 -0
  30. package/dist/data/species.js +10126 -0
  31. package/dist/data/species.js.map +1 -0
  32. package/dist/data/types.d.ts +23 -0
  33. package/dist/data/types.js +538 -0
  34. package/dist/data/types.js.map +1 -0
  35. package/dist/desc.d.ts +65 -0
  36. package/dist/desc.js +866 -0
  37. package/dist/desc.js.map +1 -0
  38. package/dist/field.d.ts +49 -0
  39. package/dist/field.js +111 -0
  40. package/dist/field.js.map +1 -0
  41. package/dist/index.d.ts +44 -0
  42. package/dist/index.js +99 -0
  43. package/dist/index.js.map +1 -0
  44. package/dist/items.d.ts +13 -0
  45. package/dist/items.js +434 -0
  46. package/dist/items.js.map +1 -0
  47. package/dist/mechanics/gen12.d.ts +6 -0
  48. package/dist/mechanics/gen12.js +271 -0
  49. package/dist/mechanics/gen12.js.map +1 -0
  50. package/dist/mechanics/gen3.d.ts +11 -0
  51. package/dist/mechanics/gen3.js +371 -0
  52. package/dist/mechanics/gen3.js.map +1 -0
  53. package/dist/mechanics/gen4.d.ts +11 -0
  54. package/dist/mechanics/gen4.js +596 -0
  55. package/dist/mechanics/gen4.js.map +1 -0
  56. package/dist/mechanics/gen56.d.ts +13 -0
  57. package/dist/mechanics/gen56.js +836 -0
  58. package/dist/mechanics/gen56.js.map +1 -0
  59. package/dist/mechanics/gen789.d.ts +14 -0
  60. package/dist/mechanics/gen789.js +1325 -0
  61. package/dist/mechanics/gen789.js.map +1 -0
  62. package/dist/mechanics/util.d.ts +39 -0
  63. package/dist/mechanics/util.js +675 -0
  64. package/dist/mechanics/util.js.map +1 -0
  65. package/dist/move.d.ts +50 -0
  66. package/dist/move.js +324 -0
  67. package/dist/move.js.map +1 -0
  68. package/dist/pokemon.d.ts +55 -0
  69. package/dist/pokemon.js +240 -0
  70. package/dist/pokemon.js.map +1 -0
  71. package/dist/production.min.js +1 -0
  72. package/dist/result.d.ts +34 -0
  73. package/dist/result.js +94 -0
  74. package/dist/result.js.map +1 -0
  75. package/dist/state.d.ts +77 -0
  76. package/dist/state.js +3 -0
  77. package/dist/state.js.map +1 -0
  78. package/dist/stats.d.ts +26 -0
  79. package/dist/stats.js +183 -0
  80. package/dist/stats.js.map +1 -0
  81. package/dist/test/calc.test.d.ts +1 -0
  82. package/dist/test/calc.test.js +1297 -0
  83. package/dist/test/calc.test.js.map +1 -0
  84. package/dist/test/data.test.d.ts +1 -0
  85. package/dist/test/data.test.js +368 -0
  86. package/dist/test/data.test.js.map +1 -0
  87. package/dist/test/gen.d.ts +135 -0
  88. package/dist/test/gen.js +636 -0
  89. package/dist/test/gen.js.map +1 -0
  90. package/dist/test/helper.d.ts +55 -0
  91. package/dist/test/helper.js +174 -0
  92. package/dist/test/helper.js.map +1 -0
  93. package/dist/test/move.test.d.ts +1 -0
  94. package/dist/test/move.test.js +14 -0
  95. package/dist/test/move.test.js.map +1 -0
  96. package/dist/test/pokemon.test.d.ts +1 -0
  97. package/dist/test/pokemon.test.js +102 -0
  98. package/dist/test/pokemon.test.js.map +1 -0
  99. package/dist/test/stats.test.d.ts +1 -0
  100. package/dist/test/stats.test.js +64 -0
  101. package/dist/test/stats.test.js.map +1 -0
  102. package/dist/test/utils.test.d.ts +1 -0
  103. package/dist/test/utils.test.js +19 -0
  104. package/dist/test/utils.test.js.map +1 -0
  105. package/dist/util.d.ts +17 -0
  106. package/dist/util.js +115 -0
  107. package/dist/util.js.map +1 -0
  108. package/jest.config.js +11 -0
  109. package/package.json +40 -0
  110. package/src/adaptable.ts +12 -0
  111. package/src/calc.ts +40 -0
  112. package/src/data/abilities.ts +383 -0
  113. package/src/data/index.ts +36 -0
  114. package/src/data/interface.ts +176 -0
  115. package/src/data/items.ts +632 -0
  116. package/src/data/moves.ts +5028 -0
  117. package/src/data/natures.ts +65 -0
  118. package/src/data/species.ts +10098 -0
  119. package/src/data/types.ts +478 -0
  120. package/src/desc.ts +1063 -0
  121. package/src/field.ts +124 -0
  122. package/src/index.ts +156 -0
  123. package/src/items.ts +423 -0
  124. package/src/mechanics/gen12.ts +297 -0
  125. package/src/mechanics/gen3.ts +444 -0
  126. package/src/mechanics/gen4.ts +702 -0
  127. package/src/mechanics/gen56.ts +1134 -0
  128. package/src/mechanics/gen789.ts +1788 -0
  129. package/src/mechanics/util.ts +676 -0
  130. package/src/move.ts +337 -0
  131. package/src/pokemon.ts +244 -0
  132. package/src/result.ts +106 -0
  133. package/src/state.ts +81 -0
  134. package/src/stats.ts +213 -0
  135. package/src/test/calc.test.ts +1588 -0
  136. package/src/test/data.test.ts +129 -0
  137. package/src/test/gen.ts +514 -0
  138. package/src/test/helper.ts +185 -0
  139. package/src/test/move.test.ts +13 -0
  140. package/src/test/pokemon.test.ts +121 -0
  141. package/src/test/stats.test.ts +84 -0
  142. package/src/test/utils.test.ts +18 -0
  143. package/src/util.ts +153 -0
  144. package/tsconfig.json +10 -0
@@ -0,0 +1,23 @@
1
+ import type * as I from './interface';
2
+ export type TypeChart = {
3
+ [type in I.TypeName]?: {
4
+ [type in I.TypeName]?: number;
5
+ };
6
+ };
7
+ export declare const TYPE_CHART: TypeChart[];
8
+ export declare class Types implements I.Types {
9
+ private readonly gen;
10
+ constructor(gen: I.GenerationNum);
11
+ get(id: I.ID): Type;
12
+ [Symbol.iterator](): Generator<Type, void, unknown>;
13
+ }
14
+ declare class Type implements I.Type {
15
+ readonly kind: 'Type';
16
+ readonly id: I.ID;
17
+ readonly name: I.TypeName;
18
+ readonly effectiveness: Readonly<{
19
+ [type in I.TypeName]?: I.TypeEffectiveness;
20
+ }>;
21
+ constructor(name: string, effectiveness: TypeChart[I.TypeName]);
22
+ }
23
+ export {};
@@ -0,0 +1,538 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __generator = (this && this.__generator) || function (thisArg, body) {
14
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
15
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
16
+ function verb(n) { return function (v) { return step([n, v]); }; }
17
+ function step(op) {
18
+ if (f) throw new TypeError("Generator is already executing.");
19
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
20
+ 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;
21
+ if (y = 0, t) op = [op[0] & 2, t.value];
22
+ switch (op[0]) {
23
+ case 0: case 1: t = op; break;
24
+ case 4: _.label++; return { value: op[1], done: false };
25
+ case 5: _.label++; y = op[1]; op = [0]; continue;
26
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
27
+ default:
28
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
29
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
30
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
31
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
32
+ if (t[2]) _.ops.pop();
33
+ _.trys.pop(); continue;
34
+ }
35
+ op = body.call(thisArg, _);
36
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
37
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
38
+ }
39
+ };
40
+ var __values = (this && this.__values) || function(o) {
41
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
42
+ if (m) return m.call(o);
43
+ if (o && typeof o.length === "number") return {
44
+ next: function () {
45
+ if (o && i >= o.length) o = void 0;
46
+ return { value: o && o[i++], done: !o };
47
+ }
48
+ };
49
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
50
+ };
51
+ var e_1, _a;
52
+ exports.__esModule = true;
53
+ exports.Types = exports.TYPE_CHART = void 0;
54
+ var util_1 = require("../util");
55
+ var RBY = {
56
+ '???': {
57
+ Normal: 1,
58
+ Grass: 1,
59
+ Fire: 1,
60
+ Water: 1,
61
+ Electric: 1,
62
+ Ice: 1,
63
+ Flying: 1,
64
+ Bug: 1,
65
+ Poison: 1,
66
+ Ground: 1,
67
+ Rock: 1,
68
+ Fighting: 1,
69
+ Psychic: 1,
70
+ Ghost: 1,
71
+ Dragon: 1
72
+ },
73
+ Normal: {
74
+ '???': 1,
75
+ Normal: 1,
76
+ Grass: 1,
77
+ Fire: 1,
78
+ Water: 1,
79
+ Electric: 1,
80
+ Ice: 1,
81
+ Flying: 1,
82
+ Bug: 1,
83
+ Poison: 1,
84
+ Ground: 1,
85
+ Rock: 0.5,
86
+ Fighting: 1,
87
+ Psychic: 1,
88
+ Ghost: 0,
89
+ Dragon: 1
90
+ },
91
+ Grass: {
92
+ '???': 1,
93
+ Normal: 1,
94
+ Grass: 0.5,
95
+ Fire: 0.5,
96
+ Water: 2,
97
+ Electric: 1,
98
+ Ice: 1,
99
+ Flying: 0.5,
100
+ Bug: 0.5,
101
+ Poison: 0.5,
102
+ Ground: 2,
103
+ Rock: 2,
104
+ Fighting: 1,
105
+ Psychic: 1,
106
+ Ghost: 1,
107
+ Dragon: 0.5
108
+ },
109
+ Fire: {
110
+ '???': 1,
111
+ Normal: 1,
112
+ Grass: 2,
113
+ Fire: 0.5,
114
+ Water: 0.5,
115
+ Electric: 1,
116
+ Ice: 2,
117
+ Flying: 1,
118
+ Bug: 2,
119
+ Poison: 1,
120
+ Ground: 1,
121
+ Rock: 0.5,
122
+ Fighting: 1,
123
+ Psychic: 1,
124
+ Ghost: 1,
125
+ Dragon: 0.5
126
+ },
127
+ Water: {
128
+ '???': 1,
129
+ Normal: 1,
130
+ Grass: 0.5,
131
+ Fire: 2,
132
+ Water: 0.5,
133
+ Electric: 1,
134
+ Ice: 1,
135
+ Flying: 1,
136
+ Bug: 1,
137
+ Poison: 1,
138
+ Ground: 2,
139
+ Rock: 2,
140
+ Fighting: 1,
141
+ Psychic: 1,
142
+ Ghost: 1,
143
+ Dragon: 0.5
144
+ },
145
+ Electric: {
146
+ '???': 1,
147
+ Normal: 1,
148
+ Grass: 0.5,
149
+ Fire: 1,
150
+ Water: 2,
151
+ Electric: 0.5,
152
+ Ice: 1,
153
+ Flying: 2,
154
+ Bug: 1,
155
+ Poison: 1,
156
+ Ground: 0,
157
+ Rock: 1,
158
+ Fighting: 1,
159
+ Psychic: 1,
160
+ Ghost: 1,
161
+ Dragon: 0.5
162
+ },
163
+ Ice: {
164
+ '???': 1,
165
+ Normal: 1,
166
+ Grass: 2,
167
+ Fire: 1,
168
+ Water: 0.5,
169
+ Electric: 1,
170
+ Ice: 0.5,
171
+ Flying: 2,
172
+ Bug: 1,
173
+ Poison: 1,
174
+ Ground: 2,
175
+ Rock: 1,
176
+ Fighting: 1,
177
+ Psychic: 1,
178
+ Ghost: 1,
179
+ Dragon: 2
180
+ },
181
+ Flying: {
182
+ '???': 1,
183
+ Normal: 1,
184
+ Grass: 2,
185
+ Fire: 1,
186
+ Water: 1,
187
+ Electric: 0.5,
188
+ Ice: 1,
189
+ Flying: 1,
190
+ Bug: 2,
191
+ Poison: 1,
192
+ Ground: 1,
193
+ Rock: 0.5,
194
+ Fighting: 2,
195
+ Psychic: 1,
196
+ Ghost: 1,
197
+ Dragon: 1
198
+ },
199
+ Bug: {
200
+ '???': 1,
201
+ Normal: 1,
202
+ Grass: 2,
203
+ Fire: 0.5,
204
+ Water: 1,
205
+ Electric: 1,
206
+ Ice: 1,
207
+ Flying: 0.5,
208
+ Bug: 1,
209
+ Poison: 2,
210
+ Ground: 1,
211
+ Rock: 1,
212
+ Fighting: 0.5,
213
+ Psychic: 2,
214
+ Ghost: 0.5,
215
+ Dragon: 1
216
+ },
217
+ Poison: {
218
+ '???': 1,
219
+ Normal: 1,
220
+ Grass: 2,
221
+ Fire: 1,
222
+ Water: 1,
223
+ Electric: 1,
224
+ Ice: 1,
225
+ Flying: 1,
226
+ Bug: 2,
227
+ Poison: 0.5,
228
+ Ground: 0.5,
229
+ Rock: 0.5,
230
+ Fighting: 1,
231
+ Psychic: 1,
232
+ Ghost: 0.5,
233
+ Dragon: 1
234
+ },
235
+ Ground: {
236
+ '???': 1,
237
+ Normal: 1,
238
+ Grass: 0.5,
239
+ Fire: 2,
240
+ Water: 1,
241
+ Electric: 2,
242
+ Ice: 1,
243
+ Flying: 0,
244
+ Bug: 0.5,
245
+ Poison: 2,
246
+ Ground: 1,
247
+ Rock: 2,
248
+ Fighting: 1,
249
+ Psychic: 1,
250
+ Ghost: 1,
251
+ Dragon: 1
252
+ },
253
+ Rock: {
254
+ '???': 1,
255
+ Normal: 1,
256
+ Grass: 1,
257
+ Fire: 2,
258
+ Water: 1,
259
+ Electric: 1,
260
+ Ice: 2,
261
+ Flying: 2,
262
+ Bug: 2,
263
+ Poison: 1,
264
+ Ground: 0.5,
265
+ Rock: 1,
266
+ Fighting: 0.5,
267
+ Psychic: 1,
268
+ Ghost: 1,
269
+ Dragon: 1
270
+ },
271
+ Fighting: {
272
+ '???': 1,
273
+ Normal: 2,
274
+ Grass: 1,
275
+ Fire: 1,
276
+ Water: 1,
277
+ Electric: 1,
278
+ Ice: 2,
279
+ Flying: 0.5,
280
+ Bug: 0.5,
281
+ Poison: 0.5,
282
+ Ground: 1,
283
+ Rock: 2,
284
+ Fighting: 1,
285
+ Psychic: 0.5,
286
+ Ghost: 0,
287
+ Dragon: 1
288
+ },
289
+ Psychic: {
290
+ '???': 1,
291
+ Normal: 1,
292
+ Grass: 1,
293
+ Fire: 1,
294
+ Water: 1,
295
+ Electric: 1,
296
+ Ice: 1,
297
+ Flying: 1,
298
+ Bug: 1,
299
+ Poison: 2,
300
+ Ground: 1,
301
+ Rock: 1,
302
+ Fighting: 2,
303
+ Psychic: 0.5,
304
+ Ghost: 1,
305
+ Dragon: 1
306
+ },
307
+ Ghost: {
308
+ '???': 1,
309
+ Normal: 0,
310
+ Grass: 1,
311
+ Fire: 1,
312
+ Water: 1,
313
+ Electric: 1,
314
+ Ice: 1,
315
+ Flying: 1,
316
+ Bug: 1,
317
+ Poison: 1,
318
+ Ground: 1,
319
+ Rock: 1,
320
+ Fighting: 1,
321
+ Psychic: 0,
322
+ Ghost: 2,
323
+ Dragon: 1
324
+ },
325
+ Dragon: {
326
+ '???': 1,
327
+ Normal: 1,
328
+ Grass: 1,
329
+ Fire: 1,
330
+ Water: 1,
331
+ Electric: 1,
332
+ Ice: 1,
333
+ Flying: 1,
334
+ Bug: 1,
335
+ Poison: 1,
336
+ Ground: 1,
337
+ Rock: 1,
338
+ Fighting: 1,
339
+ Psychic: 1,
340
+ Ghost: 1,
341
+ Dragon: 2
342
+ }
343
+ };
344
+ var GSC = (0, util_1.extend)(true, {}, RBY, {
345
+ '???': { Dark: 1, Steel: 1 },
346
+ Normal: { Dark: 1, Steel: 0.5 },
347
+ Grass: { Dark: 1, Steel: 0.5 },
348
+ Fire: { Dark: 1, Steel: 2 },
349
+ Water: { Dark: 1, Steel: 1 },
350
+ Electric: { Dark: 1, Steel: 1 },
351
+ Ice: { Fire: 0.5, Dark: 1, Steel: 0.5 },
352
+ Flying: { Dark: 1, Steel: 0.5 },
353
+ Bug: { Poison: 0.5, Dark: 2, Steel: 0.5 },
354
+ Poison: { Bug: 1, Dark: 1, Steel: 0 },
355
+ Ground: { Dark: 1, Steel: 2 },
356
+ Rock: { Dark: 1, Steel: 0.5 },
357
+ Fighting: { Dark: 2, Steel: 2 },
358
+ Psychic: { Dark: 0, Steel: 0.5 },
359
+ Ghost: { Psychic: 2, Dark: 0.5, Steel: 0.5 },
360
+ Dragon: { Dark: 1, Steel: 0.5 },
361
+ Dark: {
362
+ '???': 1,
363
+ Normal: 1,
364
+ Grass: 1,
365
+ Fire: 1,
366
+ Water: 1,
367
+ Electric: 1,
368
+ Ice: 1,
369
+ Flying: 1,
370
+ Bug: 1,
371
+ Poison: 1,
372
+ Ground: 1,
373
+ Rock: 1,
374
+ Fighting: 0.5,
375
+ Psychic: 2,
376
+ Ghost: 2,
377
+ Dragon: 1,
378
+ Dark: 0.5,
379
+ Steel: 0.5
380
+ },
381
+ Steel: {
382
+ '???': 1,
383
+ Normal: 1,
384
+ Grass: 1,
385
+ Fire: 0.5,
386
+ Water: 0.5,
387
+ Electric: 0.5,
388
+ Ice: 2,
389
+ Flying: 1,
390
+ Bug: 1,
391
+ Poison: 1,
392
+ Ground: 1,
393
+ Rock: 2,
394
+ Fighting: 1,
395
+ Psychic: 1,
396
+ Ghost: 1,
397
+ Dragon: 1,
398
+ Dark: 1,
399
+ Steel: 0.5
400
+ }
401
+ });
402
+ var ADV = GSC;
403
+ var DPP = GSC;
404
+ var BW = GSC;
405
+ var XY = (0, util_1.extend)(true, {}, GSC, {
406
+ '???': { Fairy: 1 },
407
+ Normal: { Fairy: 1 },
408
+ Grass: { Fairy: 1 },
409
+ Fire: { Fairy: 1 },
410
+ Water: { Fairy: 1 },
411
+ Electric: { Fairy: 1 },
412
+ Ice: { Fairy: 1 },
413
+ Flying: { Fairy: 1 },
414
+ Bug: { Fairy: 0.5 },
415
+ Poison: { Fairy: 2 },
416
+ Ground: { Fairy: 1 },
417
+ Rock: { Fairy: 1 },
418
+ Fighting: { Fairy: 0.5 },
419
+ Psychic: { Fairy: 1 },
420
+ Ghost: { Steel: 1, Fairy: 1 },
421
+ Dragon: { Fairy: 0 },
422
+ Dark: { Steel: 1, Fairy: 0.5 },
423
+ Steel: { Fairy: 2 },
424
+ Fairy: {
425
+ '???': 1,
426
+ Normal: 1,
427
+ Grass: 1,
428
+ Fire: 0.5,
429
+ Water: 1,
430
+ Electric: 1,
431
+ Ice: 1,
432
+ Flying: 1,
433
+ Bug: 1,
434
+ Poison: 0.5,
435
+ Ground: 1,
436
+ Rock: 1,
437
+ Fighting: 2,
438
+ Psychic: 1,
439
+ Ghost: 1,
440
+ Dragon: 2,
441
+ Dark: 2,
442
+ Steel: 0.5,
443
+ Fairy: 1
444
+ }
445
+ });
446
+ var SM = XY;
447
+ var SS = SM;
448
+ var SV = (0, util_1.extend)(true, {}, SS, {
449
+ '???': { Stellar: 1 },
450
+ Normal: { Stellar: 1 },
451
+ Grass: { Stellar: 1 },
452
+ Fire: { Stellar: 1 },
453
+ Water: { Stellar: 1 },
454
+ Electric: { Stellar: 1 },
455
+ Ice: { Stellar: 1 },
456
+ Flying: { Stellar: 1 },
457
+ Bug: { Stellar: 1 },
458
+ Poison: { Stellar: 1 },
459
+ Ground: { Stellar: 1 },
460
+ Rock: { Stellar: 1 },
461
+ Fighting: { Stellar: 1 },
462
+ Psychic: { Stellar: 1 },
463
+ Ghost: { Stellar: 1 },
464
+ Dragon: { Stellar: 1 },
465
+ Dark: { Stellar: 1 },
466
+ Steel: { Stellar: 1 },
467
+ Fairy: { Stellar: 1 },
468
+ Stellar: {
469
+ '???': 1
470
+ }
471
+ });
472
+ exports.TYPE_CHART = [{}, RBY, GSC, ADV, DPP, BW, XY, SM, SS, SV];
473
+ var Types = (function () {
474
+ function Types(gen) {
475
+ this.gen = gen;
476
+ }
477
+ Types.prototype.get = function (id) {
478
+ return TYPES_BY_ID[this.gen][id];
479
+ };
480
+ Types.prototype[Symbol.iterator] = function () {
481
+ var _a, _b, _c, _i, id;
482
+ return __generator(this, function (_d) {
483
+ switch (_d.label) {
484
+ case 0:
485
+ _a = TYPES_BY_ID[this.gen];
486
+ _b = [];
487
+ for (_c in _a)
488
+ _b.push(_c);
489
+ _i = 0;
490
+ _d.label = 1;
491
+ case 1:
492
+ if (!(_i < _b.length)) return [3, 4];
493
+ _c = _b[_i];
494
+ if (!(_c in _a)) return [3, 3];
495
+ id = _c;
496
+ return [4, this.get(id)];
497
+ case 2:
498
+ _d.sent();
499
+ _d.label = 3;
500
+ case 3:
501
+ _i++;
502
+ return [3, 1];
503
+ case 4: return [2];
504
+ }
505
+ });
506
+ };
507
+ return Types;
508
+ }());
509
+ exports.Types = Types;
510
+ var Type = (function () {
511
+ function Type(name, effectiveness) {
512
+ this.kind = 'Type';
513
+ this.id = (0, util_1.toID)(name);
514
+ this.name = name;
515
+ this.effectiveness = effectiveness;
516
+ }
517
+ return Type;
518
+ }());
519
+ var TYPES_BY_ID = [];
520
+ try {
521
+ for (var TYPE_CHART_1 = __values(exports.TYPE_CHART), TYPE_CHART_1_1 = TYPE_CHART_1.next(); !TYPE_CHART_1_1.done; TYPE_CHART_1_1 = TYPE_CHART_1.next()) {
522
+ var typeChart = TYPE_CHART_1_1.value;
523
+ var map = {};
524
+ for (var type in typeChart) {
525
+ var t = new Type(type, __assign({}, typeChart[type]));
526
+ map[t.id] = t;
527
+ }
528
+ TYPES_BY_ID.push(map);
529
+ }
530
+ }
531
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
532
+ finally {
533
+ try {
534
+ if (TYPE_CHART_1_1 && !TYPE_CHART_1_1.done && (_a = TYPE_CHART_1["return"])) _a.call(TYPE_CHART_1);
535
+ }
536
+ finally { if (e_1) throw e_1.error; }
537
+ }
538
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/data/types.ts"],"names":[],"mappings":"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"}
package/dist/desc.d.ts ADDED
@@ -0,0 +1,65 @@
1
+ import type { Generation, Weather, Terrain, TypeName } from './data/interface';
2
+ import type { Field } from './field';
3
+ import type { Move } from './move';
4
+ import type { Pokemon } from './pokemon';
5
+ import { type Damage } from './result';
6
+ export interface RawDesc {
7
+ HPEVs?: string;
8
+ attackBoost?: number;
9
+ attackEVs?: string;
10
+ attackerAbility?: string;
11
+ attackerItem?: string;
12
+ attackerName: string;
13
+ attackerTera?: string;
14
+ defenderAbility?: string;
15
+ defenderItem?: string;
16
+ defenderName: string;
17
+ defenderTera?: string;
18
+ defenseBoost?: number;
19
+ defenseEVs?: string;
20
+ hits?: number;
21
+ alliesFainted?: number;
22
+ isStellarFirstUse?: boolean;
23
+ isBeadsOfRuin?: boolean;
24
+ isSwordOfRuin?: boolean;
25
+ isTabletsOfRuin?: boolean;
26
+ isVesselOfRuin?: boolean;
27
+ isAuroraVeil?: boolean;
28
+ isFlowerGiftAttacker?: boolean;
29
+ isFlowerGiftDefender?: boolean;
30
+ isSteelySpiritAttacker?: boolean;
31
+ isFriendGuard?: boolean;
32
+ isHelpingHand?: boolean;
33
+ isCritical?: boolean;
34
+ isLightScreen?: boolean;
35
+ isBurned?: boolean;
36
+ isProtected?: boolean;
37
+ isReflect?: boolean;
38
+ isBattery?: boolean;
39
+ isPowerSpot?: boolean;
40
+ isWonderRoom?: boolean;
41
+ isSwitching?: 'out' | 'in';
42
+ moveBP?: number;
43
+ moveName: string;
44
+ moveTurns?: string;
45
+ moveType?: TypeName;
46
+ rivalry?: 'buffed' | 'nerfed';
47
+ terrain?: Terrain;
48
+ weather?: Weather;
49
+ isDefenderDynamaxed?: boolean;
50
+ }
51
+ export declare function display(gen: Generation, attacker: Pokemon, defender: Pokemon, move: Move, field: Field, damage: Damage, rawDesc: RawDesc, notation?: string, err?: boolean): string;
52
+ export declare function displayMove(gen: Generation, attacker: Pokemon, defender: Pokemon, move: Move, damage: Damage, notation?: string): string;
53
+ export declare function getRecovery(gen: Generation, attacker: Pokemon, defender: Pokemon, move: Move, damage: Damage, notation?: string): {
54
+ recovery: [number, number];
55
+ text: string;
56
+ };
57
+ export declare function getRecoil(gen: Generation, attacker: Pokemon, defender: Pokemon, move: Move, damage: Damage, notation?: string): {
58
+ recoil: number | [number, number];
59
+ text: string;
60
+ };
61
+ export declare function getKOChance(gen: Generation, attacker: Pokemon, defender: Pokemon, move: Move, field: Field, damage: Damage, err?: boolean): {
62
+ chance: number | undefined;
63
+ n: number;
64
+ text: string;
65
+ };