Commit Graph

5808 Commits

Author SHA1 Message Date
Sirz Benjie
2eed38dc55
Minor adjustments from code review
Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>
2025-08-19 19:10:31 -05:00
Sirz Benjie
4b62dc8b56
Add tests for teleport 2025-08-19 19:05:12 -05:00
Sirz Benjie
8b8567739d
Minor adjustments from code review
Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>
2025-08-19 18:37:10 -05:00
Sirz Benjie
514f09c536
Adjust type hint test to not rely on teleport 2025-08-19 18:30:49 -05:00
Sirz Benjie
bbd6eb9579
Fix getBattlerIndex for enemyPokemon 2025-08-19 18:04:45 -05:00
Sirz Benjie
f7cb01011c
Fix missing break in applyConditions 2025-08-19 18:01:29 -05:00
Sirz Benjie
f24c8532f0
Adjust dive's test 2025-08-19 17:42:26 -05:00
Sirz Benjie
67e9154f49
Fix dig test 2025-08-19 17:30:56 -05:00
Sirz Benjie
d296b1cdb8
Fix failAgainstFinalBossCondition 2025-08-19 17:15:01 -05:00
Sirz Benjie
e55fbc8f8e
Adjust pollen puff condition, fix docs on isOpponent 2025-08-19 17:06:52 -05:00
Sirz Benjie
bb99bebc75
Ensure move restrictions are only checked for players 2025-08-19 16:44:38 -05:00
Sirz Benjie
8681cec32e
Finish unfinished docs 2025-08-19 16:27:19 -05:00
Sirz Benjie
77948a8ff8
Remove BYPASS_SLEEP battler tag in favor of boolean holder 2025-08-19 16:22:55 -05:00
Sirz Benjie
4273345371
Play sleep animation and message 2025-08-19 15:17:26 -05:00
Sirz Benjie
48b0d843d2
Adjust copycat test to account for how it actually works 2025-08-19 14:24:14 -05:00
Sirz Benjie
86122f6c04
Adjust revival blessing hardcore test to respect new return value of isUsable 2025-08-19 12:26:00 -05:00
Sirz Benjie
53fb2585aa
Add missing attribute to counter 2025-08-19 12:22:40 -05:00
Sirz Benjie
f361b8efed
Adjust fly tests to expect pp reduction properly 2025-08-19 12:14:35 -05:00
Sirz Benjie
5c67d65e09
Tweak charge move handling and protean timing 2025-08-19 12:14:16 -05:00
Sirz Benjie
e0f926a9d7
Fix first move condition not using 1 based starting wave 2025-08-19 11:21:22 -05:00
Sirz Benjie
174c2113ac
Make charging moves deduct pp on use instead of on release 2025-08-19 11:02:47 -05:00
Sirz Benjie
4606e4e8bc
Revert type adjustment to getBattlerIndex 2025-08-19 10:27:59 -05:00
Sirz Benjie
61015bd363
Insert move failure check sequence part 4 into move phase 2025-08-19 00:11:17 -05:00
Sirz Benjie
d5c59218a6
Adjust move condition check that occurs in the third failure check sequence 2025-08-19 00:03:33 -05:00
Sirz Benjie
5c7c87e075
Adjust counter attr to use array.find 2025-08-19 00:00:03 -05:00
Sirz Benjie
8feaa8c86b
Make substitute use the move tag 2025-08-18 22:33:48 -05:00
Sirz Benjie
313f99a694
Adjust some documentation for new methods 2025-08-18 22:30:52 -05:00
Sirz Benjie
eaaedcd0a9
Add counterRedirectAttr to other counter-like moves 2025-08-18 21:23:50 -05:00
Sirz Benjie
81e26a8cbd
Address bertie's review comments 2025-08-18 21:12:38 -05:00
Sirz Benjie
62a1774e1f
Adjust restriction for stuff cheeks 2025-08-18 20:28:26 -05:00
Sirz Benjie
a072cf26ea
Adjust status checks to respect ignoreStatus useModes 2025-08-18 20:23:27 -05:00
Sirz Benjie
8b9eeef74e
Refactor mostly complete, need to recheck tests 2025-08-18 19:24:22 -05:00
Sirz Benjie
eaae371a28
Add second and third failure sequences 2025-08-17 21:26:45 -05:00
Sirz Benjie
5e7caadc78
Add failure conditions and move failures part 1 2025-08-16 14:32:47 -05:00
Lugiad
cffbafe4bd
[i18n] Language codes adjustments (#6587) 2025-09-22 05:45:28 -07:00
Dean
1c9843618c
[Misc] Blacklist more dynamic phases (#6585) 2025-09-21 12:05:13 -07:00
Sirz Benjie
d3edfb25a1
[Bug][Ability] Queenly Majesty flyout during move select (#6569) 2025-09-21 19:04:57 +00:00
Wlowscha
2fe99cc3bf
[Refactor] Refactor Starter and its handling (#6477)
* Reworked `Starter` interface with more explicit information

* Use Starter in ssui

* Fixed some bugs

* Passing starter.ivs to playerPokemon

* Using speciesIds

* Fixed getTestRunStarters

* Reverted some parameter changes

* Initialize starters in ssui

* Don't clear starters before starting run

* Fix to game manager

* Apply suggestions from code review

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>

* Set ivs to 0 in part timer test

* Setting the right ivs

* Moved ssui to handlers folder

* Ran biome all

* Fixed broken imports

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-09-21 11:07:08 -07:00
Lugiad
cf5e7fd981
[UI/UX] Optimize text PNGs (#6584) 2025-09-21 06:55:54 -07:00
NightKev
be61996044 [Docs] Fix/update some comments and spacing 2025-09-21 00:22:53 -07:00
NightKev
9f851591cb [Dev] Update pnpm 2025-09-21 00:21:27 -07:00
Dean
25416ebf47
[UI] Avoid prematurely updating HP bar when applying damage (#6582)
Avoid prematurely updating HP bar when applying damage
2025-09-20 22:24:50 -05:00
Dean
87e6095a00
[Misc/Feature] Add dynamic turn order (#6036)
* Add new priority queues

* Add dynamic queue manager

* Add timing modifier and fix post speed ordering

* Make `phaseQueue` private

* Fix `gameManager.setTurnOrder`

* Update `findPhase` to also check dynamic queues

* Modify existing phase manager methods to check dynamic queues

* Fix move order persisting through tests

* Fix magic coat/bounce

* Use append for magic coat/bounce

* Remove `getSpeedOrder` from `TurnStartPhase`, fix references to `getCommandOrder` in tests

* Fix round queuing last instead of next

* Add quick draw application

* Add quick claw activation

* Fix turn order tracking

* Add move header queue to fix ordering

* Fix abilities activating immediately on summon

* Fix `postsummonphases` being shuffled (need to handle speed ties differently here)

* Update speed order function

* Add `StaticSwitchSummonPhase`

* Fix magic coat/bounce error from conflict resolution

* Remove conditional queue

* Fix dancer and baton pass tests

* Automatically queue consecutive Pokémon phases as dynamic

* Move turn end phases queuing back to `TurnStartPhase`

* Fix `LearnMovePhase`

* Remove `PrependSplice`

* Move DQM to phase manager

* Fix various phases being pushed instead of unshifted

* Remove `StaticSwitchSummonPhase`

* Ensure the top queue is always at length - 1

* Fix encounter `PostSummonPhase`s and Revival Blessing

* Fix move headers

* Remove implicit ordering from DQM

* Fix `PostSummonPhase`s in encounters running too early

* Fix `tryRemovePhase` usages

* Add `MovePhase` after `MoveEndPhase` automatically

* Implement an `inSpeedOrder` function

* Merge fixes

* Fix encounter rewards

* Defer `FaintPhase`s where splice was used previously

* Separate speed order utils to avoid circular imports

* Temporarily disable lunar dance test

* Simplify deferral

* Remove move priority modifier

* Fix TS errors in code files

* Fix ts errors in tests

* Fix more test files

* Fix postsummon + checkswitch ability activations

* Fix `removeAll`

* Reposition `positionalTagPhase`

* Re-add `startCurrentPhase`

* Avoid overwriting `currentPhase` after `turnStart`

* Delete `switchSummonPhasePriorityQueue`

* Update `phase-manager.ts`

* Remove uses of `isNullOrUndefined`

* Rename deferral methods

* Update docs and use `getPlayerField(true)` in turn start phase

* Use `.getEnemyField(true)`

* Update docs for post summon phase priority queue (psppq)

* Update speed order utils

* Remove null from `nextPhase`

* Update move phase timing modifier docs

* Remove mention of phases from base priority queue class

* Remove and replace `applyInSpeedOrder`

* Don't sort weather effect phases

* Order priority queues before removing

- Add some `readonly` and `public` modifiers

- Remove unused `queuedPhases` field from `MoveEffectPhase`

* Fix linting in `phase-manager.ts`

* Remove unnecessary turn order modification in Rage Fist test

---------

Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>
Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-09-20 17:49:40 -05:00
Dean
d02980dd4e
[Move] Fully implement Healing wish (/Lunar Dance) and remove nextCommandPhaseQueue (#6027)
* Remove NCPQ

* Implement PendingHealTag

* Fix test

* Code review

* Use message directly instead of as key in tag

* Update tag for serialization

* Update test import

* Update src/data/arena-tag.ts

Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>

* Remove isNullOrUndefined uses

* Fix arena tag type(o)

* Fix pendinghealtag

* Fix hwish tests

* Arena tag denesting

---------

Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>
Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>
2025-09-20 17:32:31 -05:00
Bertie690
1691951c87
[Test] Added Map key matcher; enforced strong typing on matchers (#6561)
* Added `toHaveKey` matcher + fixed imports

* Broke up the test matchers into multiple smaller interfaces

* Added restricted typing on matchers

Now we can't call `expect(game).toHaveFullHp()`!!!!!

* Updated comment

* Renamed `toEqualArrayUnsorted` into `toEqualUnsorted`

* Moved comment at top of file

* Fix `@module` doc comment

* Remove extra space

* Fix typo

* Fixed key ssue in matchers

* Update to-have-key.ts

* Update test/@types/vitest.d.ts

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>

* Fixed missing braces inside comment

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-09-20 17:24:27 -05:00
Sirz Benjie
207808f37d
[Docs] Cleanup docs in pokemon.ts (#6543)
* [Docs] Cleanup docs in pokemon.ts

* Apply suggestions from code review

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>
Co-authored-by: Fabi <192151969+fabske0@users.noreply.github.com>

* chore: apply biome

* revert changes to docstrings that will conflict
2025-09-20 17:15:57 -05:00
Dean
405b1d389d
[Bug] Apply Supreme Overlord only once on summon (#6575)
* Implement supreme overlord as a battler tag

* Make ability a conditionalattr

* Add tag to map

* Update test

Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>

* Add edgeCase marker

* Extend from AbilityBattlerTag

* Run biome

---------

Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>
2025-09-19 23:08:02 -05:00
Sirz Benjie
16a903b975
[Bug][Ability] Remove flyout for rivalry (#6577)
Remove flyout for rivalry
2025-09-19 20:47:35 -07:00
Sirz Benjie
773f5b23f2
[Deps] Bump typedoc version (#6576) 2025-09-19 17:23:50 -07:00
Fabi
7d83a3a24a
[UI/UX] Show correct max duration in flyout (#6566)
* Fix terrain & weather max duration flyout

* show correct max duration for tags

* maka maxDuration optional in arenaEvent constructor

* Apply suggestions from code review

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-09-18 13:35:22 -07:00