@pkmn/sim 0.4.22 → 0.4.23

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pkmn/sim",
3
- "version": "0.4.22",
3
+ "version": "0.4.23",
4
4
  "description": "An automatically generated extraction of just the simulator portion of Pokémon Showdown",
5
5
  "homepage": "https://psim.us",
6
6
  "main": "build/sim/index.js",
@@ -27,7 +27,8 @@
27
27
  "sim"
28
28
  ],
29
29
  "dependencies": {
30
- "@pkmn/sets": "^2.0.0"
30
+ "@pkmn/sets": "^2.0.0",
31
+ "@pkmn/streams": "^1.0.0"
31
32
  },
32
33
  "devDependencies": {
33
34
  "mocha": "^9.1.3"
@@ -484,6 +484,13 @@ export class DexSpecies {
484
484
  );
485
485
  if (!isLetsGo) species.isNonstandard = 'Past';
486
486
  }
487
+ if (this.dex.currentMod === 'gen8bdsp' &&
488
+ (!species.isNonstandard || species.isNonstandard === "Gigantamax")) {
489
+ if (species.gen > 4 || species.num < 1 || species.id === 'pichuspikyeared') {
490
+ species.isNonstandard = 'Past';
491
+ species.tier = species.doublesTier = 'Illegal';
492
+ }
493
+ }
487
494
  species.nfe = !!(species.evos.length && this.get(species.evos[0]).gen <= this.dex.gen);
488
495
  species.canHatch = species.canHatch ||
489
496
  (!['Ditto', 'Undiscovered'].includes(species.eggGroups[0]) && !species.prevo && species.name !== 'Manaphy');
@@ -301,6 +301,7 @@ export interface ModdedBattleActions {
301
301
  }
302
302
 
303
303
  export interface ModdedBattleSide {
304
+ canDynamaxNow?: (this: Side) => boolean;
304
305
  getRequestData?: (this: Side, forAlly?: boolean) => {name: string, id: ID, pokemon: AnyObject[]};
305
306
  }
306
307
 
@@ -301,6 +301,7 @@ interface ModdedBattleActions {
301
301
  }
302
302
 
303
303
  interface ModdedBattleSide {
304
+ canDynamaxNow?: (this: Side) => boolean;
304
305
  getRequestData?: (this: Side, forAlly?: boolean) => {name: string, id: ID, pokemon: AnyObject[]};
305
306
  }
306
307
 
@@ -1910,7 +1910,7 @@ export class TeamValidator {
1910
1910
  /**
1911
1911
  * The format allows Sketch to copy moves in Gen 8
1912
1912
  */
1913
- const canSketchGen8Moves = ruleTable.has('sketchgen8moves');
1913
+ const canSketchGen8Moves = ruleTable.has('sketchgen8moves') || this.dex.currentMod === 'gen8bdsp';
1914
1914
 
1915
1915
  let tradebackEligible = false;
1916
1916
  while (species?.name && !alreadyChecked[species.id]) {