Commit Graph

6530 Commits

Author SHA1 Message Date
Guangcong Luo
6f42ca2153 Preact: Support |popup||wide|
Fixes #2567
2026-05-24 02:12:30 -07:00
Guangcong Luo
600833335c Preact: Merge "modal-popup" and "semimodal-popup"
The distinction was never implemented, and is now just done by
`room.closable`.
2026-05-24 02:12:30 -07:00
Guangcong Luo
093a6ce84c Preact: Correctly support /warn 2026-05-24 00:59:18 -07:00
Aurastic
cd06e77076 Preact: Disable team dropdown when searching for a battle (#2566)
Some checks are pending
Node.js CI / build (22.x) (push) Waiting to run
---------

Co-authored-by: Guangcong Luo <guangcongluo@gmail.com>
2026-05-23 22:27:24 -07:00
Guangcong Luo
bb04e6dfa8 Preact: Fix showdebug not persisting after reload 2026-05-24 05:23:14 +00:00
Guangcong Luo
76c4af39a1 Preact: Fix offline friend requests
Second try of b9538a2. We're now correctly imitating oldclient behavior.
2026-05-24 05:00:05 +00:00
shrianshChari
c7f1a412be Meteor Beam animation should use the space background instead of sandstorm (#2687) 2026-05-23 19:49:36 -07:00
iforgetwhyimhere
588f2e4517 Prevent client-command help text response from triggering on broadcasted commands (#2688) 2026-05-23 19:48:06 -07:00
Guangcong Luo
c765658341 Preact: Add "Collapse all" checkbox to Resources 2026-05-23 19:29:11 -07:00
Guangcong Luo
ca55fb312e Preact: Redesign and fix resources panel
This fixes the issue where typing in it wouldn't update the search,
and a few other issues besides.
2026-05-23 19:29:11 -07:00
Guangcong Luo
ebd4d7f419 Preact: Fix Champions point slider
Another casualty of the thing where you can have 510 EVs but only 508
of them are usable.
2026-05-24 01:11:03 +00:00
Guangcong Luo
8b0b7905e1 Preact: Fix "spectate from turn 0" option
It was fast-forwarding only when the option was off AND you were a
player, rather than "OR" which was the intention.
2026-05-24 01:04:30 +00:00
Marty
fe285c1ca4 Update Pokemon icons sheet
Some checks are pending
Node.js CI / build (22.x) (push) Waiting to run
2026-05-23 11:08:25 -04:00
Guangcong Luo
2ae7d134f2 Fix stat calculation for Champions
Some checks are pending
Node.js CI / build (22.x) (push) Waiting to run
- One `!supportsEVs` check was for Let's Go, which we now just check
  for directly.
- `supportsEVs` and `supportsAVs` have been removed for general
  confusion. `editor.isChampions` and `editor.isLetsGo` is clearer.
- Use points for Champions
- Fix some redundant code

Fixes #2685
2026-05-23 08:50:56 +00:00
Guangcong Luo
0a8ac4832d Gray out in-between speeds in tooltips
Some checks are pending
Node.js CI / build (22.x) (push) Waiting to run
2026-05-23 02:17:17 +00:00
Guangcong Luo
3e49569859 Preact: Fix Champions IVs
Fixes #2678
2026-05-23 02:17:17 +00:00
Guangcong Luo
6752dab7dc Preact: Support |b| 2026-05-23 02:17:17 +00:00
mnn31
6b609b10ab Fix speed tooltip values in Gen 1/2 (#2682)
#2654 added per-EV-spread breakpoints to the opponent speed tooltip,
but the math in the catch-all branch of getSpeedRange is the Gen 3+
formula (2*base + IV + EV/4) applied unconditionally to every gen
outside Let's Go and Champions. Gens 1/2 use DVs (0-15) and stat
experience (0-65535), so the ev84/ev0 values shown for Gen 1/2 random
battles are off by the difference between the two formulas.

Concretely: a level 88 Kabuto in Gen 1 random battle has speed 183
(actual), but the tooltip was showing "101 or 147" because ev84 was
computed as floor((2*55 + 31 + 21) * 88/100) + 5 = 147 using the
Gen 3+ EV-bonus offset. In Gen 1/2 random battles every Pokemon has
max DV and max stat experience, so the only possible value is the
existing 'max' calc (~~floor((2*base + 30 + 63) * level/100) + 5~~).

This adds a gen < 3 branch in getSpeedRange that computes min and max
from the Gen 1/2 formula and collapses min/ev0/ev84/ev252/max to a
single value for random battles. The renderStats display switch picks
up a matching gen < 3 case that shows one value for random and "min
to max" for non-random.

* Address review: compute Gen 1/2 ev0/ev252 properly, refine modifier label

- getSpeedRange: ev0 and ev252 now reflect "max DV, no stat exp" and
  "max DV, max stat exp" respectively rather than being collapsed to min/max.
  ev84 stays as 0 since the 84-EV breakpoint has no Gen 1/2 analog.
  min is now always the absolute floor (DV=0, no stat exp) regardless of
  whether the tier is random.
- renderStats: Gen 1/2 tooltip footer now says "before stat stage changes"
  instead of "before external modifiers", since Gen 1/2 has no items or
  abilities that affect Speed.
2026-05-22 18:43:53 -07:00
André Bastos Dias
3d91ea4c9e Tooltip: Fix Normalize type for status moves (#2656)
Some checks are pending
Node.js CI / build (22.x) (push) Waiting to run
2026-05-22 08:27:24 -07:00
Aurastic
8a08fbfbd1 Preact: Add support for helpticket rooms (#2635) 2026-05-22 08:24:41 -07:00
André Bastos Dias
f835e93287 Tooltip: Fix status moves effectiveness during extreme weather (#2660)
Some checks are pending
Node.js CI / build (22.x) (push) Waiting to run
2026-05-22 02:35:41 -07:00
shrianshChari
2f4196b15d Preact: Support Pokemon Champions + Remove IV inputs in Champions (#2676) 2026-05-22 02:31:47 -07:00
Guangcong Luo
0162aaf3fe Support /subtlenotify
In oldclient, it'll be treated like `/nonotify`. In newclient, it'll
do a subtle notification, which according to #2641 is desirable
in some cases.
2026-05-22 03:44:22 +00:00
Guangcong Luo
b1f7bb6302 Add an option to spectate from battle start (#2680) 2026-05-21 20:43:59 -07:00
Guangcong Luo
ff542e5a26 Revert "Preact: Fix offline friend requests"
This reverts commit b9538a2eae.
2026-05-21 15:19:23 +00:00
Guangcong Luo
c7bd3fd9dd Preact: Optimize scroll updates 2026-05-21 02:46:53 +00:00
iforgetwhyimhere
6d6e8748a6 Display more speeds in tooltip (#2654)
Some checks failed
Node.js CI / build (22.x) (push) Has been cancelled
2026-05-19 15:28:33 -07:00
HiZo
81ea8cda1b Tooltips: Add support for type changing formats (#2679)
Some checks failed
Node.js CI / build (22.x) (push) Has been cancelled
2026-05-17 12:50:38 -06:00
Mia
aca6c94dd0 Add WCOP background
Some checks failed
Node.js CI / build (22.x) (push) Has been cancelled
Requested by TDs.
2026-05-13 22:34:52 -05:00
Kris Johnson
318774207d Adjust Champions teambuilder
Some checks failed
Node.js CI / build (22.x) (push) Has been cancelled
2026-05-09 10:18:43 -06:00
Aurastic
10f8967023 Preact: Cancel challenge when closing a DM (#2653)
Some checks failed
Node.js CI / build (22.x) (push) Has been cancelled
2026-05-07 19:42:37 -07:00
Aurastic
90fdf398bb Preact: Fix old status not clearing in userdetails cache (#2663) 2026-05-07 19:41:39 -07:00
André Bastos Dias
eeab7e68ae Champions: Fix EV guesser (#2673)
* Champions: Fix EV guesser

* Champions: Disable level input box

* Disable happiness in Let's Go
2026-05-07 19:34:50 -07:00
Guangcong Luo
a78a54c920 Preact: Fix News mini-window preventing scroll
Some checks failed
Node.js CI / build (22.x) (push) Has been cancelled
Fixes #2649
2026-05-06 10:36:11 +00:00
Guangcong Luo
9ea69264ab Preact: Default to scrollable panels
In hindsight, panels that manually manage their layout are pretty rare.
2026-05-06 10:25:00 +00:00
Guangcong Luo
8ddc5fb90a Remove mistakenly-committed page-resources.js 2026-05-06 10:20:50 +00:00
André Bastos Dias
8b2a637e76 Champions: Add extremely effective and mostly ineffective text (#2674)
Some checks failed
Node.js CI / build (22.x) (push) Has been cancelled
2026-05-04 14:36:48 -06:00
Aurastic
ae869bf214 Preact: Skip choices for tatsugiri when in commanding mode (#2642)
Some checks failed
Node.js CI / build (22.x) (push) Has been cancelled
2026-05-02 03:41:40 -07:00
Guangcong Luo
b9538a2eae Preact: Fix offline friend requests
In oldclient, <button type="send"> would send a message globally.
Preact client has now been updated with this behavior.

We probably still want the server to be able to handle commands sent
to offline users at some later point, though.
2026-05-02 10:34:42 +00:00
Daniel Chen
075ff28166 Preact: Add tab autocomplete (#2667)
Some checks are pending
Node.js CI / build (22.x) (push) Waiting to run
2026-05-01 20:29:59 -07:00
ry
b127c965a4 Fix empty formats bug (#2658) 2026-05-01 12:33:15 -06:00
iforgetwhyimhere
f52c98107f Support Inverse Mod in type effectiveness display (#2668)
* Type effectiveness: Support Inverse Mod

* Support Inverse Mod in Hardcore Mode

* fix trailing spaces
2026-05-01 12:32:36 -06:00
shrianshChari
4d8221c18e Add animation for Fickle Beam (both variants) (#2665)
* Draft 3

* Draft 5

* Draft 6

* Final draft

* Satisfy linter
2026-05-01 12:31:20 -06:00
pyuk-bot
65b8c41264 FFA: Actually fix choice descriptions (#2664) 2026-05-01 12:30:16 -06:00
André Bastos Dias
530765fc12 Champions: Implement HP percentages and bar colors (#2640)
Some checks failed
Node.js CI / build (22.x) (push) Has been cancelled
* Implement HP percentages and bar colors from Pokémon Champions

* Lint

* Lint again
2026-04-25 16:34:12 -06:00
André Bastos Dias
5abbb6fb67 Champions: Disable IVs selector (#2655)
Some checks failed
Node.js CI / build (22.x) (push) Has been cancelled
* Champions: Disable IVs box

* Lint

* Undo change
2026-04-20 02:20:30 -06:00
Kris Johnson
200757ef68 FRLG: Fix teambuilder
Some checks failed
Node.js CI / build (22.x) (push) Has been cancelled
2026-04-15 12:15:24 -06:00
Kris Johnson
c6e4ddf93f Fix VGC teambuilders 2026-04-15 12:11:41 -06:00
Kris Johnson
1872143982 DPP/BW NU/PU/ZU: Fix teambuilder support 2026-04-15 12:04:51 -06:00
Soul-8691
f3b15499c7 Get rid of FRLG custom tier logic (#2645)
Some checks are pending
Node.js CI / build (22.x) (push) Waiting to run
2026-04-14 14:33:01 -06:00