Guangcong Luo
0fdaeea3db
Fix spread move messages
...
In certain cases, a spread move that KOed an opponent would send an
incorrect message which could crash the client. This fixes that while
also simplifying the code.
2019-08-28 20:47:15 -05:00
Jacob McLemore
3af1c771c2
Fix Encore + Pledge moves interaction ( #5641 )
2019-08-01 20:31:38 -04:00
Danofares
5fb57e6cfc
Don't show "It's a one-hit KO!" if move did not OHKO the target ( #5637 )
2019-07-21 08:29:30 -05:00
Guangcong Luo
3db1d9916c
Deduplicate Template definition
...
It turns out Template is the only remotely-easy type to merge the class
and interface for.
The others all have a bunch of event methods which would need to be
redefined on the class.
2019-07-19 18:20:42 -05:00
Jacob McLemore
ed4b027b5b
Update ts-ignore comment in Dancer codepath in scripts.js ( #5619 )
2019-07-16 20:52:17 -07:00
Jacob McLemore
7e4ebe44aa
Make moves called by Dancer target properly ( #5616 )
2019-07-16 21:15:05 -04:00
Marty-D
f65fe2c049
Don't stop moves before the first hit while asleep
...
The point of this check was to end a multi-hit move if you fell asleep to Effect Spore in the middle of the move, not be applied to every move (i.e. Doom Desire and Future Sight).
2019-06-22 20:38:47 -04:00
Kirk Scheibelhut
db66195c26
Remove additional toID calls ( #5503 )
2019-05-23 18:11:26 +01:00
Guangcong Luo
01804f988e
Fix spread hit animation
...
Properly fixes https://github.com/Zarel/Pokemon-Showdown-Client/pull/1267
2019-05-16 12:52:13 +04:00
Kirk Scheibelhut
3d24166cdf
toId -> toID
...
Closes #5479
2019-05-12 17:53:01 -07:00
Kirk Scheibelhut
a0734bde6f
Redo Endless Battle Clause with a new specification ( #5472 )
2019-05-07 11:18:06 +09:30
Marty-D
e93686b411
Gen IV: Fix Explosion/Selfdestruct interaction with no target
2019-04-08 17:16:51 -04:00
Marty-D
e5167babcf
Fix Jump Kicks against no target
2019-04-08 17:15:05 -04:00
MacChaeger
d3f1161b62
Fix Weakness Policy and Clangorous Soulblaze in doubles ( #5389 )
2019-04-04 18:51:27 +08:00
Kirk Scheibelhut
272700f2b2
Fix crash from Gen 4 Custap Berry + Trump Card interaction ( #5395 )
...
Fixes #5393
2019-04-04 01:20:11 +08:00
Slayer95
6384964a10
Sim: Z Moves may only be disabled when all base moves are ( #5387 )
2019-03-30 18:14:53 -04:00
MacChaeger
b8aa1048e2
Don't display "But it failed!" on a success ( #5386 )
2019-03-30 15:38:48 -04:00
Kirk Scheibelhut
19bde75842
canZMove should not be set for disabled moves ( #5384 )
...
Fixes #5383
2019-03-31 00:24:56 +08:00
Slayer95
694cd47e7b
Fix target resolution ( #5363 )
2019-03-30 22:34:44 +08:00
MacChaeger
5a4578420b
Fix attacks failing if only their effect fails ( #5373 )
2019-03-29 22:48:15 +08:00
MacChaeger
905ed1e95c
Fix multihit moves continuing after a KO ( #5360 )
2019-03-28 19:02:37 +08:00
Ivo Julca
ac4b94876b
Sim: Refactor to use Battle#getAllPokemon() and Battle#getAllActive()
2019-03-26 23:18:19 -05:00
MacChaeger
6adc779a19
Fix doubled recoil ( #5358 )
2019-03-27 11:15:57 +08:00
MacChaeger
9a7ce3dedf
Put side conditions on p1 and p2 in multi battles ( #5341 )
2019-03-27 11:00:36 +08:00
MacChaeger
860900ac57
Fix AfterDamage event running on secondary effects ( #5350 )
2019-03-26 15:29:46 +09:00
Kirk Scheibelhut
9f5a727ad1
Pull Field out of Battle ( #5333 )
2019-03-23 02:52:12 +09:00
MacChaeger
a44f16c6e3
Fix pivot moves vs. Substitute ( #5314 )
2019-03-19 11:50:27 +09:00
MacChaeger
6c486409f4
Fix spread move effect order ( #5216 )
2019-03-17 23:30:08 +09:00
Guangcong Luo
125ffcc633
Add NOT_FAIL, FAIL, SILENT_FAIL to battle
...
This replaces battle.NOT_FAILURE. The others aren't used anywhere yet,
but should in theory provide more readability than `null` and `false`.
2019-03-13 11:25:23 +09:00
Kirk Scheibelhut
a8903d2563
Cleanup stat naming and types (storedStats, StatNameExceptHP) ( #5274 )
2019-03-09 09:53:11 -06:00
Kirk Scheibelhut
a04d4da992
Add more hints to Gen 1 & 4, migrate others to Battle#hint ( #5258 )
2019-03-06 11:24:47 -06:00
MacChaeger
2a60ad7589
Fix stomping tantrum vs. only Protect ( #5081 )
2019-01-15 22:03:54 -06:00
Russell Jones
d35aeb0b23
Trying another fix for Fake Out ( #5103 )
2019-01-14 09:52:04 -06:00
MacChaeger
313d7f8621
Submoves lose their inherent Mold-Breaking properties, if any ( #5049 )
2018-12-27 11:08:51 -08:00
urkerab
23bf166b61
Use -fail instead of -notarget in Gen 5 or later ( #5033 )
2018-12-16 13:57:03 -06:00
Alexander B
337534e290
Fix Roar failure message ( #5031 )
2018-12-16 11:28:18 -06:00
Guangcong Luo
13614b9890
Update for TypeScript 3.2
...
TypeScript 3.2 unearthed a metric fuckton of bugs, making this change
take effectively forever.
2018-12-08 21:39:38 -06:00
Guangcong Luo
c752b327ca
Fix no-target charge moves
2018-11-27 23:25:29 -06:00
urkerab
5d259fe6ac
Fix charge moves without target ( #4974 )
2018-11-19 17:09:56 -06:00
Guangcong Luo
3a8add5c4b
Remove [msg] parameter of -immune
...
(It's unnecessary, being the default message for it.)
2018-11-10 12:31:21 -06:00
Alexander B
34c3096d6b
"But it failed!" messages should not reveal the target ( #4944 )
2018-11-01 09:41:04 -04:00
Guangcong Luo
24571ea603
Fix misc errors found by LGTM
2018-10-28 05:04:30 -05:00
Guangcong Luo
e3ebf2b3c1
Fix Z-caller Weather Ball interaction
2018-10-11 12:54:45 -05:00
Guangcong Luo
affcad7873
Improve documentation of isZ vs isZPowered
...
move.zPowered is renamed move.isZPowered. It's now documented in JSDoc
exactly how it differs from move.isZ.
This commit includes several minor refactors to Z-move mechanics,
including a bug fix: Z-boosted called Weather Ball is now correctly
typed.
2018-10-10 18:44:05 -05:00
Guangcong Luo
ecb27edb4d
Introduce ActiveMove; make some types read-only ( #4902 )
...
The types Template, Move, Ability, and Item are now read-only. This
should guard against accidental writing to types that shouldn't be
written to.
A new type, ActiveMove, has been introduced. Like it sounds, it's
used for moves that are currently actively being used. A lot of
attributes that are only relevant to active moves, such as
`hasBounced`, are now only available on ActiveMove, not on Move.
ActiveMoves are mutable, unlike Moves.
getMoveCopy has been renamed getActiveMove, to better reflect its
role. `isCopy` has been deprecated, and distinguishing Moves from
ActiveMoves is now done by `typeof move.hit === 'number'` where
necessary.
ActiveMoves now internally track which hit of a multihit move
they're on, in move.hit, so move.hit doesn't need to be manually
incremented by Triple Kick and Parental Bond anymore.
move.hasParentalBond has been replaced by a more generic
move.multihitType.
2018-10-10 16:04:35 -05:00
Quinton Lee
94016f6218
Update Typescript to 3.1 ( #4879 )
2018-10-05 04:02:54 -05:00
Marty-D
8e4f83778f
Gen VI-VII: Update breaking protection
2018-09-24 13:56:59 -04:00
Marty-D
733ea72d4f
Make a move fail if the target is the user and it's not self-target
2018-09-03 11:24:38 -04:00
urkerab
62911d3035
Make Dancer copy the called Dance move ( #4807 )
2018-08-12 21:15:02 -04:00
MacChaeger
82c792f82c
Update to TypeScript 3.0.1 ( #4710 )
2018-08-07 03:27:28 +09:00