@pkmn/sim 0.9.37 → 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/build/cjs/config/formats.js +185 -173
- package/build/cjs/config/formats.js.map +1 -1
- package/build/cjs/data/abilities.js +62 -72
- package/build/cjs/data/abilities.js.map +1 -1
- package/build/cjs/data/aliases.js +11 -4
- package/build/cjs/data/aliases.js.map +1 -1
- package/build/cjs/data/formats-data.js +164 -64
- package/build/cjs/data/formats-data.js.map +1 -1
- package/build/cjs/data/items.js +406 -2
- package/build/cjs/data/items.js.map +1 -1
- package/build/cjs/data/legality.js +548 -113
- package/build/cjs/data/legality.js.map +1 -1
- package/build/cjs/data/mods/gen1/conditions.js +12 -1
- package/build/cjs/data/mods/gen1/conditions.js.map +1 -1
- package/build/cjs/data/mods/gen1/scripts.js +14 -28
- package/build/cjs/data/mods/gen1/scripts.js.map +1 -1
- package/build/cjs/data/mods/gen2/formats-data.js +2 -2
- package/build/cjs/data/mods/gen2/formats-data.js.map +1 -1
- package/build/cjs/data/mods/gen3/abilities.js +1 -3
- package/build/cjs/data/mods/gen3/abilities.js.map +1 -1
- package/build/cjs/data/mods/gen3/formats-data.js +5 -11
- package/build/cjs/data/mods/gen3/formats-data.js.map +1 -1
- package/build/cjs/data/mods/gen3/moves.js +24 -0
- package/build/cjs/data/mods/gen3/moves.js.map +1 -1
- package/build/cjs/data/mods/gen4/abilities.js +2 -14
- package/build/cjs/data/mods/gen4/abilities.js.map +1 -1
- package/build/cjs/data/mods/gen4/formats-data.js.map +1 -1
- package/build/cjs/data/mods/gen4/moves.js +37 -6
- package/build/cjs/data/mods/gen4/moves.js.map +1 -1
- package/build/cjs/data/mods/gen5/abilities.js +4 -0
- package/build/cjs/data/mods/gen5/abilities.js.map +1 -1
- package/build/cjs/data/mods/gen5/formats-data.js.map +1 -1
- package/build/cjs/data/mods/gen6/pokedex.js +104 -0
- package/build/cjs/data/mods/gen6/pokedex.js.map +1 -1
- package/build/cjs/data/mods/gen7/abilities.js +11 -26
- package/build/cjs/data/mods/gen7/abilities.js.map +1 -1
- package/build/cjs/data/mods/gen7/formats-data.js +1 -1
- package/build/cjs/data/mods/gen7/formats-data.js.map +1 -1
- package/build/cjs/data/mods/gen7/pokedex.js +96 -0
- package/build/cjs/data/mods/gen7/pokedex.js.map +1 -1
- package/build/cjs/data/mods/gen8/abilities.js +0 -3
- package/build/cjs/data/mods/gen8/abilities.js.map +1 -1
- package/build/cjs/data/mods/gen8bdsp/abilities.d.ts +1 -0
- package/build/cjs/data/mods/gen8bdsp/abilities.js +42 -0
- package/build/cjs/data/mods/gen8bdsp/abilities.js.map +1 -0
- package/build/cjs/data/mods/gen8bdsp/formats-data.d.ts +1 -0
- package/build/cjs/data/mods/gen8bdsp/formats-data.js +1837 -0
- package/build/cjs/data/mods/gen8bdsp/formats-data.js.map +1 -0
- package/build/cjs/data/mods/gen8bdsp/index.d.ts +6 -0
- package/build/cjs/data/mods/gen8bdsp/index.js +16 -0
- package/build/cjs/data/mods/gen8bdsp/index.js.map +1 -0
- package/build/cjs/data/mods/gen8bdsp/items.d.ts +1 -0
- package/build/cjs/data/mods/gen8bdsp/items.js +831 -0
- package/build/cjs/data/mods/gen8bdsp/items.js.map +1 -0
- package/build/cjs/data/mods/gen8bdsp/learnsets.d.ts +3 -0
- package/build/cjs/data/mods/gen8bdsp/learnsets.js +25784 -0
- package/build/cjs/data/mods/gen8bdsp/learnsets.js.map +1 -0
- package/build/cjs/data/mods/gen8bdsp/legality.d.ts +3 -0
- package/build/cjs/data/mods/gen8bdsp/legality.js +242 -0
- package/build/cjs/data/mods/gen8bdsp/legality.js.map +1 -0
- package/build/cjs/data/mods/gen8bdsp/moves.d.ts +1 -0
- package/build/cjs/data/mods/gen8bdsp/moves.js +919 -0
- package/build/cjs/data/mods/gen8bdsp/moves.js.map +1 -0
- package/build/cjs/data/mods/gen8bdsp/pokedex.d.ts +1 -0
- package/build/cjs/data/mods/gen8bdsp/pokedex.js +99 -0
- package/build/cjs/data/mods/gen8bdsp/pokedex.js.map +1 -0
- package/build/cjs/data/mods/gen8bdsp/scripts.d.ts +1 -0
- package/build/cjs/data/mods/gen8bdsp/scripts.js +15 -0
- package/build/cjs/data/mods/gen8bdsp/scripts.js.map +1 -0
- package/build/cjs/data/mods/gen8legends/formats-data.d.ts +1 -0
- package/build/cjs/data/mods/gen8legends/formats-data.js +2775 -0
- package/build/cjs/data/mods/gen8legends/formats-data.js.map +1 -0
- package/build/cjs/data/mods/gen8legends/index.d.ts +2 -0
- package/build/cjs/data/mods/gen8legends/index.js +8 -0
- package/build/cjs/data/mods/gen8legends/index.js.map +1 -0
- package/build/cjs/data/mods/gen8legends/learnsets.d.ts +3 -0
- package/build/cjs/data/mods/gen8legends/learnsets.js +5553 -0
- package/build/cjs/data/mods/gen8legends/learnsets.js.map +1 -0
- package/build/cjs/data/mods/gen8legends/legality.d.ts +3 -0
- package/build/cjs/data/mods/gen8legends/legality.js +149 -0
- package/build/cjs/data/mods/gen8legends/legality.js.map +1 -0
- package/build/cjs/data/mods/gen8legends/scripts.d.ts +1 -0
- package/build/cjs/data/mods/gen8legends/scripts.js +8 -0
- package/build/cjs/data/mods/gen8legends/scripts.js.map +1 -0
- package/build/cjs/data/moves.js +53 -55
- package/build/cjs/data/moves.js.map +1 -1
- package/build/cjs/data/pokedex.js +735 -10
- package/build/cjs/data/pokedex.js.map +1 -1
- package/build/cjs/data/rulesets.js +78 -0
- package/build/cjs/data/rulesets.js.map +1 -1
- package/build/cjs/data/text/items.js +108 -0
- package/build/cjs/data/text/items.js.map +1 -1
- package/build/cjs/data/text/moves.js +6 -2
- package/build/cjs/data/text/moves.js.map +1 -1
- package/build/cjs/sim/battle-actions.js +17 -7
- package/build/cjs/sim/battle-actions.js.map +1 -1
- package/build/cjs/sim/battle-queue.d.ts +11 -6
- package/build/cjs/sim/battle-queue.js.map +1 -1
- package/build/cjs/sim/battle.d.ts +2 -2
- package/build/cjs/sim/battle.js +23 -28
- package/build/cjs/sim/battle.js.map +1 -1
- package/build/cjs/sim/dex-conditions.d.ts +2 -1
- package/build/cjs/sim/dex-conditions.js.map +1 -1
- package/build/cjs/sim/dex-formats.d.ts +2 -0
- package/build/cjs/sim/dex-formats.js +12 -1
- package/build/cjs/sim/dex-formats.js.map +1 -1
- package/build/cjs/sim/dex-species.d.ts +13 -2
- package/build/cjs/sim/dex-species.js +40 -19
- package/build/cjs/sim/dex-species.js.map +1 -1
- package/build/cjs/sim/dex.js +11 -0
- package/build/cjs/sim/dex.js.map +1 -1
- package/build/cjs/sim/exported-global-types.d.ts +5 -4
- package/build/cjs/sim/global-types.d.ts +5 -4
- package/build/cjs/sim/pokemon.d.ts +6 -4
- package/build/cjs/sim/pokemon.js +31 -24
- package/build/cjs/sim/pokemon.js.map +1 -1
- package/build/cjs/sim/side.js +11 -41
- package/build/cjs/sim/side.js.map +1 -1
- package/build/cjs/sim/team-validator.d.ts +1 -0
- package/build/cjs/sim/team-validator.js +50 -18
- package/build/cjs/sim/team-validator.js.map +1 -1
- package/build/esm/config/formats.mjs +185 -173
- package/build/esm/config/formats.mjs.map +1 -1
- package/build/esm/data/abilities.mjs +62 -72
- package/build/esm/data/abilities.mjs.map +1 -1
- package/build/esm/data/aliases.mjs +11 -4
- package/build/esm/data/aliases.mjs.map +1 -1
- package/build/esm/data/formats-data.mjs +164 -64
- package/build/esm/data/formats-data.mjs.map +1 -1
- package/build/esm/data/items.mjs +406 -2
- package/build/esm/data/items.mjs.map +1 -1
- package/build/esm/data/legality.mjs +548 -113
- package/build/esm/data/legality.mjs.map +1 -1
- package/build/esm/data/mods/gen1/conditions.mjs +12 -1
- package/build/esm/data/mods/gen1/conditions.mjs.map +1 -1
- package/build/esm/data/mods/gen1/scripts.mjs +14 -28
- package/build/esm/data/mods/gen1/scripts.mjs.map +1 -1
- package/build/esm/data/mods/gen2/formats-data.mjs +2 -2
- package/build/esm/data/mods/gen2/formats-data.mjs.map +1 -1
- package/build/esm/data/mods/gen3/abilities.mjs +1 -3
- package/build/esm/data/mods/gen3/abilities.mjs.map +1 -1
- package/build/esm/data/mods/gen3/formats-data.mjs +5 -11
- package/build/esm/data/mods/gen3/formats-data.mjs.map +1 -1
- package/build/esm/data/mods/gen3/moves.mjs +24 -0
- package/build/esm/data/mods/gen3/moves.mjs.map +1 -1
- package/build/esm/data/mods/gen4/abilities.mjs +2 -14
- package/build/esm/data/mods/gen4/abilities.mjs.map +1 -1
- package/build/esm/data/mods/gen4/formats-data.mjs.map +1 -1
- package/build/esm/data/mods/gen4/moves.mjs +37 -6
- package/build/esm/data/mods/gen4/moves.mjs.map +1 -1
- package/build/esm/data/mods/gen5/abilities.mjs +4 -0
- package/build/esm/data/mods/gen5/abilities.mjs.map +1 -1
- package/build/esm/data/mods/gen5/formats-data.mjs.map +1 -1
- package/build/esm/data/mods/gen6/pokedex.mjs +104 -0
- package/build/esm/data/mods/gen6/pokedex.mjs.map +1 -1
- package/build/esm/data/mods/gen7/abilities.mjs +11 -26
- package/build/esm/data/mods/gen7/abilities.mjs.map +1 -1
- package/build/esm/data/mods/gen7/formats-data.mjs +1 -1
- package/build/esm/data/mods/gen7/formats-data.mjs.map +1 -1
- package/build/esm/data/mods/gen7/pokedex.mjs +96 -0
- package/build/esm/data/mods/gen7/pokedex.mjs.map +1 -1
- package/build/esm/data/mods/gen8/abilities.mjs +0 -3
- package/build/esm/data/mods/gen8/abilities.mjs.map +1 -1
- package/build/esm/data/mods/gen8bdsp/abilities.d.mts +1 -0
- package/build/esm/data/mods/gen8bdsp/abilities.mjs +39 -0
- package/build/esm/data/mods/gen8bdsp/abilities.mjs.map +1 -0
- package/build/esm/data/mods/gen8bdsp/formats-data.d.mts +1 -0
- package/build/esm/data/mods/gen8bdsp/formats-data.mjs +1834 -0
- package/build/esm/data/mods/gen8bdsp/formats-data.mjs.map +1 -0
- package/build/esm/data/mods/gen8bdsp/index.d.mts +6 -0
- package/build/esm/data/mods/gen8bdsp/index.mjs +7 -0
- package/build/esm/data/mods/gen8bdsp/index.mjs.map +1 -0
- package/build/esm/data/mods/gen8bdsp/items.d.mts +1 -0
- package/build/esm/data/mods/gen8bdsp/items.mjs +828 -0
- package/build/esm/data/mods/gen8bdsp/items.mjs.map +1 -0
- package/build/esm/data/mods/gen8bdsp/learnsets.d.mts +3 -0
- package/build/esm/data/mods/gen8bdsp/learnsets.mjs +25781 -0
- package/build/esm/data/mods/gen8bdsp/learnsets.mjs.map +1 -0
- package/build/esm/data/mods/gen8bdsp/legality.d.mts +3 -0
- package/build/esm/data/mods/gen8bdsp/legality.mjs +239 -0
- package/build/esm/data/mods/gen8bdsp/legality.mjs.map +1 -0
- package/build/esm/data/mods/gen8bdsp/moves.d.mts +1 -0
- package/build/esm/data/mods/gen8bdsp/moves.mjs +916 -0
- package/build/esm/data/mods/gen8bdsp/moves.mjs.map +1 -0
- package/build/esm/data/mods/gen8bdsp/pokedex.d.mts +1 -0
- package/build/esm/data/mods/gen8bdsp/pokedex.mjs +96 -0
- package/build/esm/data/mods/gen8bdsp/pokedex.mjs.map +1 -0
- package/build/esm/data/mods/gen8bdsp/scripts.d.mts +1 -0
- package/build/esm/data/mods/gen8bdsp/scripts.mjs +12 -0
- package/build/esm/data/mods/gen8bdsp/scripts.mjs.map +1 -0
- package/build/esm/data/mods/gen8legends/formats-data.d.mts +1 -0
- package/build/esm/data/mods/gen8legends/formats-data.mjs +2772 -0
- package/build/esm/data/mods/gen8legends/formats-data.mjs.map +1 -0
- package/build/esm/data/mods/gen8legends/index.d.mts +2 -0
- package/build/esm/data/mods/gen8legends/index.mjs +3 -0
- package/build/esm/data/mods/gen8legends/index.mjs.map +1 -0
- package/build/esm/data/mods/gen8legends/learnsets.d.mts +3 -0
- package/build/esm/data/mods/gen8legends/learnsets.mjs +5550 -0
- package/build/esm/data/mods/gen8legends/learnsets.mjs.map +1 -0
- package/build/esm/data/mods/gen8legends/legality.d.mts +3 -0
- package/build/esm/data/mods/gen8legends/legality.mjs +146 -0
- package/build/esm/data/mods/gen8legends/legality.mjs.map +1 -0
- package/build/esm/data/mods/gen8legends/scripts.d.mts +1 -0
- package/build/esm/data/mods/gen8legends/scripts.mjs +5 -0
- package/build/esm/data/mods/gen8legends/scripts.mjs.map +1 -0
- package/build/esm/data/moves.mjs +53 -55
- package/build/esm/data/moves.mjs.map +1 -1
- package/build/esm/data/pokedex.mjs +735 -10
- package/build/esm/data/pokedex.mjs.map +1 -1
- package/build/esm/data/rulesets.mjs +78 -0
- package/build/esm/data/rulesets.mjs.map +1 -1
- package/build/esm/data/text/items.mjs +108 -0
- package/build/esm/data/text/items.mjs.map +1 -1
- package/build/esm/data/text/moves.mjs +6 -2
- package/build/esm/data/text/moves.mjs.map +1 -1
- package/build/esm/sim/battle-actions.mjs +17 -7
- package/build/esm/sim/battle-actions.mjs.map +1 -1
- package/build/esm/sim/battle-queue.d.mts +11 -6
- package/build/esm/sim/battle-queue.mjs.map +1 -1
- package/build/esm/sim/battle.d.mts +2 -2
- package/build/esm/sim/battle.mjs +23 -28
- package/build/esm/sim/battle.mjs.map +1 -1
- package/build/esm/sim/dex-conditions.d.mts +2 -1
- package/build/esm/sim/dex-conditions.mjs.map +1 -1
- package/build/esm/sim/dex-formats.d.mts +2 -0
- package/build/esm/sim/dex-formats.mjs +12 -1
- package/build/esm/sim/dex-formats.mjs.map +1 -1
- package/build/esm/sim/dex-species.d.mts +13 -2
- package/build/esm/sim/dex-species.mjs +40 -19
- package/build/esm/sim/dex-species.mjs.map +1 -1
- package/build/esm/sim/dex.mjs +11 -0
- package/build/esm/sim/dex.mjs.map +1 -1
- package/build/esm/sim/exported-global-types.d.mts +5 -4
- package/build/esm/sim/global-types.d.mts +5 -4
- package/build/esm/sim/pokemon.d.mts +6 -4
- package/build/esm/sim/pokemon.mjs +31 -24
- package/build/esm/sim/pokemon.mjs.map +1 -1
- package/build/esm/sim/side.mjs +11 -41
- package/build/esm/sim/side.mjs.map +1 -1
- package/build/esm/sim/team-validator.d.mts +1 -0
- package/build/esm/sim/team-validator.mjs +50 -18
- package/build/esm/sim/team-validator.mjs.map +1 -1
- package/package.json +2 -2
package/build/esm/data/moves.mjs
CHANGED
|
@@ -2000,12 +2000,12 @@ export const Moves = {
|
|
|
2000
2000
|
pp: 20,
|
|
2001
2001
|
priority: 0,
|
|
2002
2002
|
flags: { contact: 1, protect: 1, mirror: 1, metronome: 1 },
|
|
2003
|
-
onHit(target, source) {
|
|
2003
|
+
onHit(target, source, move) {
|
|
2004
2004
|
const item = target.getItem();
|
|
2005
2005
|
if (source.hp && item.isBerry && target.takeItem(source)) {
|
|
2006
2006
|
this.add('-enditem', target, item.name, '[from] stealeat', '[move] Bug Bite', `[of] ${source}`);
|
|
2007
|
-
if (this.singleEvent('Eat', item,
|
|
2008
|
-
this.runEvent('EatItem', source,
|
|
2007
|
+
if (this.singleEvent('Eat', item, target.itemState, source, source, move)) {
|
|
2008
|
+
this.runEvent('EatItem', source, source, move, item);
|
|
2009
2009
|
if (item.id === 'leppaberry')
|
|
2010
2010
|
target.staleness = 'external';
|
|
2011
2011
|
}
|
|
@@ -3197,10 +3197,8 @@ export const Moves = {
|
|
|
3197
3197
|
];
|
|
3198
3198
|
let success = false;
|
|
3199
3199
|
if (this.gameType === "freeforall") {
|
|
3200
|
-
//
|
|
3201
|
-
const
|
|
3202
|
-
// the list of all sides in counterclockwise order
|
|
3203
|
-
const sides = [this.sides[0], this.sides[2], this.sides[1], this.sides[3]];
|
|
3200
|
+
// the list of all sides in clockwise order
|
|
3201
|
+
const sides = [this.sides[0], this.sides[3], this.sides[1], this.sides[2]];
|
|
3204
3202
|
const temp = { 0: {}, 1: {}, 2: {}, 3: {} };
|
|
3205
3203
|
for (const side of sides) {
|
|
3206
3204
|
for (const id in side.sideConditions) {
|
|
@@ -3208,21 +3206,15 @@ export const Moves = {
|
|
|
3208
3206
|
continue;
|
|
3209
3207
|
temp[side.n][id] = side.sideConditions[id];
|
|
3210
3208
|
delete side.sideConditions[id];
|
|
3211
|
-
const effectName = this.dex.conditions.get(id).name;
|
|
3212
|
-
this.add('-sideend', side, effectName, '[silent]');
|
|
3213
3209
|
success = true;
|
|
3214
3210
|
}
|
|
3215
3211
|
}
|
|
3216
3212
|
for (let i = 0; i < 4; i++) {
|
|
3217
3213
|
const sourceSideConditions = temp[sides[i].n];
|
|
3218
|
-
const targetSide = sides[(i +
|
|
3214
|
+
const targetSide = sides[(i + 1) % 4]; // the next side in rotation
|
|
3219
3215
|
for (const id in sourceSideConditions) {
|
|
3220
3216
|
targetSide.sideConditions[id] = sourceSideConditions[id];
|
|
3221
3217
|
targetSide.sideConditions[id].target = targetSide;
|
|
3222
|
-
const effectName = this.dex.conditions.get(id).name;
|
|
3223
|
-
let layers = sourceSideConditions[id].layers || 1;
|
|
3224
|
-
for (; layers > 0; layers--)
|
|
3225
|
-
this.add('-sidestart', targetSide, effectName, '[silent]');
|
|
3226
3218
|
}
|
|
3227
3219
|
}
|
|
3228
3220
|
}
|
|
@@ -3253,10 +3245,10 @@ export const Moves = {
|
|
|
3253
3245
|
sourceSideConditions[id] = targetTemp[id];
|
|
3254
3246
|
sourceSideConditions[id].target = source.side;
|
|
3255
3247
|
}
|
|
3256
|
-
this.add('-swapsideconditions');
|
|
3257
3248
|
}
|
|
3258
3249
|
if (!success)
|
|
3259
3250
|
return false;
|
|
3251
|
+
this.add('-swapsideconditions');
|
|
3260
3252
|
this.add('-activate', source, 'move: Court Change');
|
|
3261
3253
|
},
|
|
3262
3254
|
secondary: null,
|
|
@@ -4028,9 +4020,8 @@ export const Moves = {
|
|
|
4028
4020
|
for (const pokemon of source.alliesAndSelf()) {
|
|
4029
4021
|
if (pokemon.ability === target.ability || pokemon.getAbility().flags['cantsuppress'])
|
|
4030
4022
|
continue;
|
|
4031
|
-
const oldAbility = pokemon.setAbility(target.ability);
|
|
4023
|
+
const oldAbility = pokemon.setAbility(target.ability, null, move);
|
|
4032
4024
|
if (oldAbility) {
|
|
4033
|
-
this.add('-ability', pokemon, target.getAbility().name, '[from] move: Doodle');
|
|
4034
4025
|
success = true;
|
|
4035
4026
|
}
|
|
4036
4027
|
else if (!success && oldAbility === null) {
|
|
@@ -5131,14 +5122,11 @@ export const Moves = {
|
|
|
5131
5122
|
}
|
|
5132
5123
|
},
|
|
5133
5124
|
onHit(target, source) {
|
|
5134
|
-
const oldAbility = target.setAbility(source.ability);
|
|
5135
|
-
if (oldAbility)
|
|
5136
|
-
|
|
5137
|
-
|
|
5138
|
-
|
|
5139
|
-
return;
|
|
5140
|
-
}
|
|
5141
|
-
return oldAbility;
|
|
5125
|
+
const oldAbility = target.setAbility(source.ability, source);
|
|
5126
|
+
if (!oldAbility)
|
|
5127
|
+
return oldAbility;
|
|
5128
|
+
if (!target.isAlly(source))
|
|
5129
|
+
target.volatileStaleness = 'external';
|
|
5142
5130
|
},
|
|
5143
5131
|
secondary: null,
|
|
5144
5132
|
target: "normal",
|
|
@@ -6048,9 +6036,12 @@ export const Moves = {
|
|
|
6048
6036
|
move.basePower = item.fling.basePower;
|
|
6049
6037
|
this.debug(`BP: ${move.basePower}`);
|
|
6050
6038
|
if (item.isBerry) {
|
|
6039
|
+
if (source.hasAbility('cudchew')) {
|
|
6040
|
+
this.singleEvent('EatItem', source.getAbility(), source.abilityState, source, source, move, item);
|
|
6041
|
+
}
|
|
6051
6042
|
move.onHit = function (foe) {
|
|
6052
|
-
if (this.singleEvent('Eat', item,
|
|
6053
|
-
this.runEvent('EatItem', foe,
|
|
6043
|
+
if (this.singleEvent('Eat', item, source.itemState, foe, source, move)) {
|
|
6044
|
+
this.runEvent('EatItem', foe, source, move, item);
|
|
6054
6045
|
if (item.id === 'leppaberry')
|
|
6055
6046
|
foe.staleness = 'external';
|
|
6056
6047
|
}
|
|
@@ -13431,6 +13422,23 @@ export const Moves = {
|
|
|
13431
13422
|
type: "Dark",
|
|
13432
13423
|
contestType: "Cool",
|
|
13433
13424
|
},
|
|
13425
|
+
nihillight: {
|
|
13426
|
+
num: 920,
|
|
13427
|
+
accuracy: 100,
|
|
13428
|
+
basePower: 100,
|
|
13429
|
+
category: "Special",
|
|
13430
|
+
isNonstandard: "Future",
|
|
13431
|
+
name: "Nihil Light",
|
|
13432
|
+
pp: 10,
|
|
13433
|
+
priority: 0,
|
|
13434
|
+
flags: { protect: 1, mirror: 1, metronome: 1 },
|
|
13435
|
+
ignoreEvasion: true,
|
|
13436
|
+
ignoreDefensive: true,
|
|
13437
|
+
ignoreImmunity: { 'Fairy': true },
|
|
13438
|
+
secondary: null,
|
|
13439
|
+
target: "allAdjacentFoes",
|
|
13440
|
+
type: "Dragon",
|
|
13441
|
+
},
|
|
13434
13442
|
nobleroar: {
|
|
13435
13443
|
num: 568,
|
|
13436
13444
|
accuracy: 100,
|
|
@@ -14153,12 +14161,12 @@ export const Moves = {
|
|
|
14153
14161
|
pp: 20,
|
|
14154
14162
|
priority: 0,
|
|
14155
14163
|
flags: { contact: 1, protect: 1, mirror: 1, distance: 1, metronome: 1 },
|
|
14156
|
-
onHit(target, source) {
|
|
14164
|
+
onHit(target, source, move) {
|
|
14157
14165
|
const item = target.getItem();
|
|
14158
14166
|
if (source.hp && item.isBerry && target.takeItem(source)) {
|
|
14159
14167
|
this.add('-enditem', target, item.name, '[from] stealeat', '[move] Pluck', `[of] ${source}`);
|
|
14160
|
-
if (this.singleEvent('Eat', item,
|
|
14161
|
-
this.runEvent('EatItem', source,
|
|
14168
|
+
if (this.singleEvent('Eat', item, target.itemState, source, source, move)) {
|
|
14169
|
+
this.runEvent('EatItem', source, source, move, item);
|
|
14162
14170
|
if (item.id === 'leppaberry')
|
|
14163
14171
|
target.staleness = 'external';
|
|
14164
14172
|
}
|
|
@@ -15613,13 +15621,13 @@ export const Moves = {
|
|
|
15613
15621
|
pp: 10,
|
|
15614
15622
|
priority: 0,
|
|
15615
15623
|
flags: { snatch: 1, metronome: 1 },
|
|
15616
|
-
onHit(pokemon) {
|
|
15624
|
+
onHit(pokemon, source, move) {
|
|
15617
15625
|
if (pokemon.item || !pokemon.lastItem)
|
|
15618
15626
|
return false;
|
|
15619
15627
|
const item = pokemon.lastItem;
|
|
15620
15628
|
pokemon.lastItem = '';
|
|
15621
15629
|
this.add('-item', pokemon, this.dex.items.get(item), '[from] move: Recycle');
|
|
15622
|
-
pokemon.setItem(item);
|
|
15630
|
+
pokemon.setItem(item, source, move);
|
|
15623
15631
|
},
|
|
15624
15632
|
secondary: null,
|
|
15625
15633
|
target: "self",
|
|
@@ -16159,12 +16167,9 @@ export const Moves = {
|
|
|
16159
16167
|
return false;
|
|
16160
16168
|
},
|
|
16161
16169
|
onHit(target, source) {
|
|
16162
|
-
const oldAbility = source.setAbility(target.ability);
|
|
16163
|
-
if (oldAbility)
|
|
16164
|
-
|
|
16165
|
-
return;
|
|
16166
|
-
}
|
|
16167
|
-
return oldAbility;
|
|
16170
|
+
const oldAbility = source.setAbility(target.ability, target);
|
|
16171
|
+
if (!oldAbility)
|
|
16172
|
+
return oldAbility;
|
|
16168
16173
|
},
|
|
16169
16174
|
secondary: null,
|
|
16170
16175
|
target: "normal",
|
|
@@ -17381,13 +17386,10 @@ export const Moves = {
|
|
|
17381
17386
|
return false;
|
|
17382
17387
|
}
|
|
17383
17388
|
},
|
|
17384
|
-
onHit(
|
|
17385
|
-
const oldAbility =
|
|
17386
|
-
if (oldAbility)
|
|
17387
|
-
|
|
17388
|
-
return;
|
|
17389
|
-
}
|
|
17390
|
-
return oldAbility;
|
|
17389
|
+
onHit(target, source) {
|
|
17390
|
+
const oldAbility = target.setAbility('simple');
|
|
17391
|
+
if (!oldAbility)
|
|
17392
|
+
return oldAbility;
|
|
17391
17393
|
},
|
|
17392
17394
|
secondary: null,
|
|
17393
17395
|
target: "normal",
|
|
@@ -22262,16 +22264,12 @@ export const Moves = {
|
|
|
22262
22264
|
return false;
|
|
22263
22265
|
}
|
|
22264
22266
|
},
|
|
22265
|
-
onHit(
|
|
22266
|
-
const oldAbility =
|
|
22267
|
-
if (oldAbility)
|
|
22268
|
-
|
|
22269
|
-
|
|
22270
|
-
|
|
22271
|
-
}
|
|
22272
|
-
return;
|
|
22273
|
-
}
|
|
22274
|
-
return oldAbility;
|
|
22267
|
+
onHit(target, source) {
|
|
22268
|
+
const oldAbility = target.setAbility('insomnia');
|
|
22269
|
+
if (!oldAbility)
|
|
22270
|
+
return oldAbility;
|
|
22271
|
+
if (target.status === 'slp')
|
|
22272
|
+
target.cureStatus();
|
|
22275
22273
|
},
|
|
22276
22274
|
secondary: null,
|
|
22277
22275
|
target: "normal",
|