Commit Graph

156 Commits

Author SHA1 Message Date
Kris Johnson
c09587d3e4 SSB: Re-add thewaffleman 2021-01-03 02:31:38 -07:00
Annika
bee946e822 SSB: Remove xJoelituh 2021-01-03 01:24:19 -08:00
Instruct
27f05678c0
SSB4: Balance changes and bugfixes (#7856) 2021-01-01 18:46:27 +04:00
Instruct
47a8a04aa9
SSB: Nerf Forever Winter Nights (#7841) 2020-12-27 19:47:20 +04:00
Distrib
0cb0b65f66
SSB: Fix Tiki's image (#7840) 2020-12-26 14:58:35 -08:00
Instruct
b73efd84ab
SSB4: Bugfixes and balance changes (#7838) 2020-12-25 21:36:07 -07:00
fart
4acb83acc7
SSB4: Fix typo in Archas's description (#7834) 2020-12-25 04:06:49 -08:00
Instruct
1f9954b374
SSB4: Bug & crashfixes (#7837) 2020-12-24 21:51:11 -05:00
Instruct
901c1d8573
SSB: Fix Winter Hail decrease amt. Add discussion thread to format. small QC changes. (#7833) 2020-12-24 13:24:18 -05:00
Kris Johnson
ec0ecb1264 SSB4: The Immortal's quote shouldn't be an ID 2020-12-24 10:14:36 -07:00
Instruct
5b441c2013
Super Staff Bros 4 (#7793)
Collaborative Project lead by @xInstruct with many contributors.

See the Special Thanks section of https://www.smogon.com/articles/super-staff-bros-4
2020-12-24 11:21:02 -05:00
Kris Johnson
fe52ec2dab SSB: Remove a random duck 2020-11-28 02:45:20 -07:00
Guangcong Luo
9b5217ab70
Split up dex-data into more files (#7634)
* Split up dex-data over individual files

This commit introduces:
- `dex-abilities.ts`
- `dex-conditions.ts`
- `dex-formats.ts`
- `dex-items.ts`
- `dex-moves.ts`
- `dex-species.ts`

These files centralize definitions from `dex-data` and `global-types`.

* Inherit ItemData from Item etc

Previously, Condition inherited from ConditionData. Now, ConditionData
inherits from Condition. The advantage of the new approach is that now,
Condition and DataCondition no longer need to be separate types, and
there should be much less duplication of type definitions in general.

This has also been done for

- ItemData/Item/DataItem
- AbilityData/Ability/DataAbility
- FormatData/Format/DataFormat

Species and DataSpecies was already merged, but this also reverses
their inheritance (saving a lot of duplicated definitions in the
process!)

The only one left is MoveData, which is just super complicated and
will need its own commit.
2020-11-05 05:00:13 -08:00
Guangcong Luo
a55d3cd530 Fix crashes from using moves with no target
Specifically, if you target your ally and your ally uses Ally Switch
(causing you to target yourself), certain moves (including Thunder,
Hurricane, and SSA) crash. This has been fixed.
2020-10-19 18:10:25 +01:00
Guangcong Luo
9d87616176
Add more style linting rules (#7537)
* Lint arrow-body-style

* Lint prefer-object-spread

Object spread is faster _and_ more readable.

This also fixes a few unnecessary object clones.

* Enable no-parameter-properties

This isn't currently used, but this makes clear that it shouldn't be.

* Refactor more Promises to async/await

* Remove unnecessary code from getDataMoveHTML etc

* Lint prefer-string-starts-ends-with

* Stop using no-undef

According to the typescript-eslint FAQ, this is redundant with
TypeScript, and they're not wrong. This will save us from needing to
specify globals in two different places which will be nice.
2020-10-19 02:42:28 -07:00
Instruct
c5b6622bc6
SSB: Remove Ashe (#7332) 2020-09-07 16:59:59 -07:00
Kris Johnson
8656d633ac
Format volatiles consistently (#7314) 2020-09-05 08:12:24 -07:00
Kris Johnson
03326bf0a0
Fix crash caused by missed instance of toID (#7193) 2020-08-10 00:18:19 -07:00
Mia
deeed6c789
Remove sim/ and data/'s globals (#7091) 2020-08-07 06:44:15 -07:00
Kris Johnson
5fb36bcc62
SSB: Remove Flare (#7170) 2020-08-07 12:36:12 +04:00
Guangcong Luo
4d09f7acde Rename more instances of Effect to Condition 2020-07-26 11:26:23 -07:00
Guangcong Luo
2f805c93a2
Remove "Battle" prefix from data exports (#7039)
`BattlePokedex` is now `Pokedex`, `BattleItems` is now `Items`, etc.

I also renamed `Movedex` to `Moves` and `Statuses` to `Conditions`.

`TypeChart` isn't `Types` yet, because unlike the others, it's not
indexed by ID. That should probably be fixed one day.
2020-07-24 12:42:26 -07:00
Guangcong Luo
e14c327f4e
Fix typo in SSB set 2020-07-16 05:14:07 -07:00
Mia
6839a1f4db
Add a library for utility functions (#6817) 2020-06-09 22:06:43 -07:00
DeltaCoderr
f447333bdd
SSB: Batch Update (#6797) 2020-06-07 12:12:18 -07:00
Nol
fecb2f3cb8
SSB: Batch Update (#6594)
* SSB: Name change Salamander to Instruct

* Promote Kipkluif and Psynergy to Driver

* Demote xfix to voice

* Demote Pluviometer to voice
2020-05-20 12:39:32 -07:00
Leonard Craft III
3496491d4f
Fix Farfetch'd / Sirfetch'd with new apostrophe (#6721)
Also fixes Stick's behavior
2020-05-19 21:56:35 -07:00
Guangcong Luo
79091f6362 SSB: Fix Next Level Strats
Fixes #6663
2020-05-08 18:06:49 -07:00
fart
8efbbda576
Fix Glitch Out bug (#6656) 2020-05-05 18:49:19 -07:00
fart
fa9775bcf9
Fix Glitzer Popping bug (#6655) 2020-05-05 16:16:00 -07:00
Kirk Scheibelhut
2af7040270
Group zMove and maxMove attributes (#6652)
This mostly serves to provide cleaner and more consistent field
naming. maxMove currently doesn't have boosts or effects to group
together but who knows what will be thrown at us via DLC, and being
symmetrical with zMoves is a nice.
2020-05-04 20:21:27 -07:00
Guangcong Luo
6c1992b067 Fix Metronome blacklists 2020-05-02 00:16:55 -07:00
Guangcong Luo
23b59de881 Fix Metronome 2020-05-01 13:22:16 -07:00
Guangcong Luo
e0f6453b60 Refactor data definitions
- `Modded[Effect]Data` are now correctly defined: they must either have
  `inherit: true` and be partial, or not have `inherit: true` and be a
	complete `[Effect]Data` entry

- `id` is no longer allowed; instead, it's calculated directly from
  `toID(name)`. The one exception, Hidden Power, gets a `realMove`
	property to track this (it's still used to set `.id`, though;
	TODO: really fix it properly).

- `num` is still required in `data/pokedex.ts` (dex number),
  `data/moves.ts` (move index number, for Metronome), and
	`data/items.ts` (minisprite sprite-sheet location). It's still not
	required for mod-only items and moves.

- `num` is no longer allowed for PureEffects (in `statuses.ts`) where
  it's always been meaningless.

- `color` and `heightm`, being completely flavor, are still not
  required for `pokedex.ts` in mods. They're still required in the base
	pokedex.
2020-04-30 21:39:29 -07:00
Guangcong Luo
800d8bd8f3 Remove Dex.getForme etc
The server now uses the same approach as the client of treating
cosmetic formes as real formes, as documented in `FORMES.md`.

This eliminates the need for the `.forme` and `.speciesid` properties
of `Pokemon`.

`pokemon.id` has also been removed: useful, since it turns out half
of its uses were bugs that should have used `pokemon.species.id`.
2020-04-28 17:38:54 -07:00
Guangcong Luo
c5faebd739 Remove extraneous properties from BasicEffect
BasicEffect always had a `status` property to support the pattern of
testing it to see if it's a move that sets status directly.

This is just a situation that TypeScript is bad at.

Another possibility would be to set `status: undefined` on PureEffect,
Ability, Item, and Species, but I think that's also ugly. Casting to
Move is probably the best approach, so that's what we do now.
2020-04-25 12:57:46 -07:00
Guangcong Luo
31a81a91a2 Fix @type in .ts files
Some JSDoc type assertions failed to get converted during various .ts
refactors. This commit takes care of them.
2020-04-24 14:19:08 -07:00
Guangcong Luo
5d63b16d4d Fix botched merge in data/.ts refactor
The data/.ts refactor left a few .js files in, which weren't deleted
between 13 and 3 days ago:

c85f5bccb0

Because of this, the corresponding `.ts` files were considered new,
rather than renamed, and changes to the `.js` files got deleted rather
than merged.

Fortunately, this only affected `moves.js`, which has now been manually
re-merged with the changes.
2020-04-23 11:22:21 -07:00
Kris Johnson
28bf388b98
Typescript data (#6553) 2020-04-23 09:16:09 -07:00
Nol
a3b8db05f7
SSB: Update several ranks (#6556) 2020-04-18 22:03:42 -07:00
Guangcong Luo
6884c7ee81 Remove unnecessarily quoted keys in data/
(By pulling this out from the rest of the TypeScript refactor, this
should make the diffs for the TypeScript refactor more readable.)
2020-04-16 01:32:18 -07:00
fart
9fda11310a
Fix activeMoveActions bug (#6570)
Bar Fight is supposed to act like Fake Out and only work on turn 1. This line added in this PR was missing from the runMove function, so Bar Fight and Fake Out were usable past turn 1.
2020-04-12 22:28:39 -07:00
Guangcong Luo
2d78044604 Fix activeTurns/activeMoveActions bugs
`activeTurns` was previously a horrible hack, used for "first full turn
only" effects like Speed Boost as well as "first move action" effects
like Fake Out.

In addition to being a huge hazard for API users such as OMs, this also
means weird bugs such as Speed Boost not working if you get hit by
Sky Drop on your first turn.

This commit fixes them by splitting these counters into two - an
`activeTurns` counter for Speed Boost, and an `activeMoveActions`
counter for Fake Out.
2020-03-30 04:07:05 -07:00
The Immortal
81891546b9 Rename Missingno. to MissingNo. 2020-03-26 18:37:35 +04:00
Kris Johnson
ea1b028950
Rename cosmeticFormeName to forme (#6492) 2020-03-26 18:13:31 +04:00
Kris Johnson
994fc60aed
Rename Template to Species (#6478) 2020-03-25 23:29:27 -07:00
Kris Johnson
4090d2baac
SSB: Remove Raid (#6465) 2020-03-17 12:18:50 +04:00
Kris Johnson
eb6985031e
SSB: Update martha's rank (#6447) 2020-03-11 23:56:42 -04:00
Guangcong Luo
125fe31d06 Improve eslintrc
Fixed some more code style, allowing these rules to be enabled:

- `comma-dangle`
- `function-paren-newline`
- `member-delimiter-style`
- `no-eval`
- `no-fallthrough`
- `no-misused-promises`
- `no-unused-vars`
- `operator-linebreak`
2020-03-06 22:35:55 -08:00
Kris Johnson
9d995eb838
SSB: Update Aeonic's rank (#6426) 2020-03-06 17:58:43 -08:00