Commit Graph

5017 Commits

Author SHA1 Message Date
Madmadness65
cb3ae4ab87
[Audio] Add new Desert and Fairy Cave biome music (#6257) 2025-08-11 18:09:52 -04:00
Jimmybald1
6c0253ada4
[Misc] Expanded Daily Run custom seeds (#6248)
* Modify custom starters and added boss, biome and luck custom seed overrides

* Added form index to boss custom seed

* Fix circular dependency in daily-run.ts

* Review for PR 6248

- Use early returns

- Update TSDocs

- Use `getEnumValues` instead of `Object.values` for `enum`s

- Add console logging for invalid seeds

---------

Co-authored-by: Jimmybald1 <147992650+IBBCalc@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-08-10 23:43:31 -04:00
Wlowscha
5d4b805c13
[UI/UX][Bug] Removed extra division by 6 in starter-select-ui-handler.ts (#6245)
Removed division by 6 in starter-select-ui-handler.ts
2025-08-09 15:27:47 -05:00
Madmadness65
f0a56a3049
[Sprite] Add unique trainer sprite for Rocket Boss Giovanni (#6235) 2025-08-09 02:15:33 +00:00
Madmadness65
7316628448 [Misc] Fix comment formatting nitpick in ability-id
Adds a space between every `/**` and `{@link`.
2025-08-08 20:31:51 -05:00
Blitzy
8a66cfe40b
[Bug] Fix Poké Fan in Trainer Config (#6238)
Fix Poke Fan in Trainer Config
2025-08-08 15:28:33 -04:00
damocleas
2dfe7232aa
Add 1/16 chance for Trainers in Laboratory 2025-08-08 00:27:59 -04:00
Madmadness65
32f5421b32 [Misc] Replace Abilities.ABILITY_NAME with AbilityId.ABILITY_NAME in comments
This commit mirrors the comment changes made in 375587213e.
2025-08-07 23:11:03 -05:00
Desroi
7873181726
[Bug] Fix Recoil & Shell Bell not applying when hitting Substitute
https://github.com/pagefaultgames/pokerogue/pull/5712

* Created Double Edge testing for recoil damage on substitutes

* Changed the logic for substitute damage

* Made testing for the updated substitute logic

* Update test formatting

* Fixed error in damage logic

* Apply Biome

* Fix test file

* Apply suggestion and update test

* Remove obsolete workaround and console logs

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-08-07 22:46:19 -05:00
damocleas
a289206a96
[Balance] More Passive/Egg Move/Cost changes for 1.10 (#6234)
* Update passives.ts

* Update egg-moves.ts

* Update starters.ts
2025-08-07 23:33:16 -04:00
Blitzy
98d957de75
[Balance] Champion Team Adjustments (#6132)
* Update Morty

* Update trainer-config.ts

---------

Co-authored-by: damocleas <damocleas25@gmail.com>
2025-08-08 02:58:40 +00:00
Blitzy
ae9f03e060
[Balance] Evil Leader Adjustments (#6133)
* Update trainer-config.ts

* Update Starmobiles to use their mainline movesets

* Update Starmobile forms and Trainer Config

---------

Co-authored-by: damocleas <damocleas25@gmail.com>
2025-08-07 21:45:37 -05:00
Bertie690
4bb3e11c74
[Misc] Added chance for alt title logo (#6182)
* [Misc] Added 0.1% chance for fake login screen
* Actually added logo file
* Update title-ui-handler.ts

Co-authored-by: damocleas <damocleas25@gmail.com>
Co-authored-by: Wlowscha
<54003515+Wlowscha@users.noreply.github.com>
2025-08-07 21:24:33 -04:00
fabske0
6e4dd36d5a
[Docs/Misc/i18n] Fix typos (#6231)
* fix comment typos

* fix typos in variable/parameter/class names

* fix typos in object names

* fix typos in `console.log()` and i18n key use

* fix typo in filename `abstact-option-select-ui-handler.ts`

* fix casing of `@privateremarks` to `@privateRemarks`

* fix use of `cancelControllerChoice`
2025-08-07 18:56:50 -06:00
Wlowscha
ac8ef62290
[UI/UX] Clean up some magic numbers (#6165)
* Removed unused scale parameter from InfoOverlay s

* Using `globalScene.scaledCanvas.width`

* Using `scaledCanvas` everywhere

* Replaced some sneaky instances of `scaledCanvas / 2`

* Convert comments to TSDocs

* Fix typo

* Caught a few more instances of `width / 6` etc

* Fixed unused scale parameter

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>
2025-08-07 18:49:32 -06:00
Amani H.
94650670fd
[Challenge] Add Nuzlocke-related Challenges (#6186)
* [Challenge] Add Nuzlocke-related Challenges

Co-authored-by: Matilde Simões <matilde.simoes@tecnico.ulisboa.pt>
Co-authored-by: Fuad Ali <fuad.ali@tecnico.ulisboa.pt>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Sirzento <sirzento@gmx.de>

* Add Sacred Ash to `revive` Group

* Separate Challenge Utility Functions

* Misc. Changes

* Transition to `BooleanHolder`

* Add "Nuzlocke" Achievement

* Change Challenge Order

* Adjust Nuzlocke Achievement to Include Fresh Start

* Fix Infinite Reward Reroll Bug

* Fix Party Heal

* Minor Change

* Adjust TODOs

* Add Unit Tests

* Tweak Faint Cry in Permanent Faint

* Resolve rebase issue

* Apply Matthew's Suggestions

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

* Apply Matthew's Suggestions Pt. 2

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

* Fix and Lint Suggestions

* Revert Accidental Overrides

* Fix and Lint Suggestions Pt. 2

* Rename Challenges

* Prevent `RandomMoveAttr` from Using Banned Moves

* Update Locales

---------

Co-authored-by: Matilde Simões <matilde.simoes@tecnico.ulisboa.pt>
Co-authored-by: Fuad Ali <fuad.ali@tecnico.ulisboa.pt>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Sirzento <sirzento@gmx.de>
Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>
2025-08-07 18:47:28 -06:00
damocleas
d7194accdd
[Balance] Minor ME Adjustments and Fixes 1.10 (#6166)
- Adjusted A Trainer's Test
- Adjusted The Expert Pokémon Breeder
- Adjusted Trash to Treasure
- Adjusted Weird Dream

- Reorganized Dark Deal
- Adjusted Weird Dream Test
2025-08-07 16:42:58 -05:00
Sirz Benjie
ce64bad987
[Misc] More battler tag fixups (#6194)
* More battler tag fixups

* Minor fixup for onStatStagesChanged call
2025-08-07 08:03:46 -06:00
Sirz Benjie
ba5db5607d
[Bug][UI/UX][Refactor] Fix empty movesets related to starter forms and general SSUI cleanup (#6080)
* Use phaser method chaining

* Create updateSelectedStarterMoveset and fix moveset adjustment for pokemon forms

Co-authored-by: MokaStitcher <54149968+MokaStitcher@users.noreply.github.com>

* Apply biome formatting

* Remove obsolete comment

---------

Co-authored-by: MokaStitcher <54149968+MokaStitcher@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-08-07 08:03:20 -06:00
thisPieonFire
4edcdc9192
[Bug] [Move] Court Change now swaps Safeguard and Pledge Effects (#6069)
* Add unit test for the "Court Change" move

* Update test/moves/court-change.test.ts

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

* Update test/moves/court-change.test.ts

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

* Add unit test for the "Court Change" move

* Improve formatting in the "Court Change" move unit test

* Update test/moves/court-change.test.ts

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

* Update test/moves/court-change.test.ts

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

* Update test/moves/court-change.test.ts

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

* Update test/moves/court-change.test.ts

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

* Update test/moves/court-change.test.ts

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

* Update test/moves/court-change.test.ts

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

* Update test/moves/court-change.test.ts

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

* Update test/moves/court-change.test.ts

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

* Added missing import

* Added missing import (ArenaTagSide)

* Update court-change.test.ts

---------

Co-authored-by: PieonFire <purpledream96@hotmail.com>
Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-08-06 08:48:11 -04:00
damocleas
bb86bdd2a6
[Balance] Add Scientist to Lab, Swimmer to Seabed to account for ME's
https://github.com/pagefaultgames/pokerogue/pull/6217
2025-08-05 19:57:51 -07:00
Sirz Benjie
1633df75c4
[UI/UX] Add change password ui (#5938)
* Add change password ui

* Ensure input fields are cleared after submit or cancel

* Play select sound on successful submission or cancel

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Wlowscha <54003515+Wlowscha@users.noreply.github.com>
2025-08-05 16:35:58 -06:00
Jimmybald1
3b36ab17e4
[Bug] Protect now tracks success chance properly (#5869)
* Protect rng now resets on new waves and fixed to look at all turns in the same wave.

* Added per-wave move history object to fix issues

@Jimmybald1 I added a commented out `console.log` in the protect code (L5797) for you to use for testing

* Added many tests

* Wave move history has to be looped in reverse

* Update src/data/moves/move.ts

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

* Update src/data/moves/move.ts

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

* comments

* Fixed forceEnemyMove references after merge

* Removed console log

Co-authored-by: Amani H. <109637146+xsn34kzx@users.noreply.github.com>

* Fixed test message

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

* Apply Biome

* Fix merge issues

* Fix Crafty Shield test

* Remove protect chance reset on wave change

* Fix merge issue

---------

Co-authored-by: Jimmybald1 <147992650+IBBCalc@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Amani H. <109637146+xsn34kzx@users.noreply.github.com>
Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>
2025-08-05 07:35:14 +02:00
NightKev
375587213e [Misc] Replace Moves.MOVE_NAME with MoveId.MOVE_NAME in comments 2025-08-04 21:24:58 -07:00
Amani H.
5bfcb1d379
[Bug] Release Fainted Pokémon in Switch Menu (#6215)
* [Bug] Release Fainted Pokémon in Switch Menu

* Add Kev's Suggestions
2025-08-04 15:55:36 -07:00
Acelynn Zhang
40443d2afa
[Bug] Fix override move animations not loading for enemy Pokemon
https://github.com/pagefaultgames/pokerogue/pull/6214
2025-08-04 14:33:01 -07:00
Sirz Benjie
800b8c9905
[Bug] [Beta] Fix serialization with transform (#6207)
Fix serialization with transform
2025-08-04 09:10:24 -06:00
Blitzy
8a2b888971
[Balance] Update and Change Breeder Trainer Class Teams (#6200)
* Update Breeder Trainer Class

* Update trainer-config.ts

* Update trainer-config.ts

* Update whirlwind.test.ts

* Update src/data/trainers/trainer-config.ts

Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com>

* Adjust Party Templates and move Wynaut

* Update trainer-party-template.ts

---------

Co-authored-by: damocleas <damocleas25@gmail.com>
Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com>
2025-08-03 16:53:10 -04:00
Amani H.
0bc78cb715
[Balance] Prevent MEs on X1 Waves (#6204)
* [Balance] Prevent MEs on X1 Waves

* Fix Bug-Type Superfan Encounter Test

* Fix Unit Tests
2025-08-03 03:05:54 +00:00
AJ Fontaine
e8ab79ebed
[Dev] Move various functions out of pokemon-species.ts (#6155)
`initSpecies` moved to its own file,
other functions moved to `pokemon-utils.ts`
2025-08-02 19:35:06 -07:00
Blitzy
491df80b66
[Beta] Further Cosmog Evolution Readjustments (#6203)
Update pokemon-evolutions.ts
2025-08-02 21:08:50 -04:00
Bertie690
5ed9e152ab
[Test] Port over + augment remaining test matchers from pkty (#6159)
* Partially ported over pkty matchers (WIP)

* Cleaned up some more matchers

* Fiexd up matchers

* Fixed up remaining matchers

* Removed the word "matcher" from the pkty matcher functions

If we want them back we can always undo this commit and convert the other custom ones

* Added wip spite test

* Added `toHaveUsedPP` matcher

* Fixed up docs and tests

* Fixed spite test

* Ran biome

* Apply Biome

* Reverted biome breaking i18next

* Update src/typings/i18next.d.ts comment

* Fixed log message to not be overly verbose

* Added option to check for all PP used in pp matcher + cleaned up grudge tests

* Fixed up tests

* Fixed tests and such

* Fix various TSDocs + missing TSDoc imports
2025-08-02 15:35:06 -07:00
Blitzy
acb1f4184b
[Balance] Adjust Cosmog / Cosmoem Evolutions, Lower Buneary Friendship requirements (#6198)
* Lower Buneary Friendship Requirement and Change Cosmog method

* Update biomes.ts - Cosmog/Cosmoem wild evo levels

* fix ?

* fixed now

* Update Cosmog Evolution + Biome Levels

---------

Co-authored-by: damocleas <damocleas25@gmail.com>
2025-08-02 18:05:07 -04:00
Bertie690
957a3e5c24
[Misc] Move asset initialization from preload to launchBattle
https://github.com/pagefaultgames/pokerogue/pull/6109

* Move asset initialization into `preload` instead of `launchBattle`

* Fix init problems; remove unused `waitUntil` util function

* Fixed missing `clearAllPhases` call
2025-08-02 14:29:35 -07:00
AJ Fontaine
1f5e089818
[Beta] Remove non-Legend Fresh Start option, fix starting movesets
https://github.com/pagefaultgames/pokerogue/pull/6196

* Remove non-Legend fresh start option, fix starting movesets

* Move updateInfo call

* Fix relearns counting for starter moves

* Reduce array allocations and function calls
2025-08-02 13:48:51 -07:00
Sirz Benjie
93525b5803
[Bug] [Beta] Remove setting currentPhase to null in clearAllPhases (#6193)
Remove setting currentPhase to null in clearAllPhases
2025-08-01 13:38:43 -06:00
Sirz Benjie
c6ca35c4ab
[Misc] Set default for crit stage battler tag (#6192)
Set default for crit stage
2025-08-01 12:59:53 -06:00
Sirz Benjie
e50ebaa815
[Misc] Fix missing types in battler tags and remove DragonCheerTag (#6188)
* Fix missing types in battler tags

* Fix issues with dragon cheer
2025-08-01 12:51:11 -06:00
Sirz Benjie
8ef2fadce4
[Misc] Disallow using NonFunctionProperties in loadTag methods (#6185)
Disallow using NonFunctionProperties in loadTag methods
2025-07-31 19:08:41 -06:00
Sirz Benjie
4dd6eb4e95
[Misc] [Beta] Fix serializable battler tags (#6184)
Fix serializable battler tags
2025-07-31 17:57:53 -06:00
Sirz Benjie
6204a6fdcb
[Bug] [Beta] Fix serializable battler tags (#6183)
Fix serializable battler tags
2025-07-31 17:44:03 -06:00
Lugiad
12433b78e5
[i18n] Add Tagalog language support (#6170) 2025-07-31 15:13:05 -07:00
Acelynn Zhang
901f6a6812
[Bug] Fix Truant behavior (#6171) 2025-07-31 20:18:11 +00:00
Tiago Rodrigues
75ececd942
[UI/UX] Implement Discard Button (#5985)
* [feature]Implemented needed parts for discard function from issue #4780:
-TryDiscardFunction in battlescene;
-Created a party discard mode button;
-Updated Transfer button in modifier-select-ui-handler to Manage items;
-Created tests for the discard function in test/ui;
-Added images for the new discard and transfer buttons to loading-scene;
-Created placeholder messages for discard feature in party-ui-handler;

Co-authored-by: Tiago Rodrigues <tiago.n.rodrigues@tecnico.ulisboa.pt>

* [Fix] Updated icon for dynamic messaging

* [Fix] Corrected legacy mode icons and adjusted double-battle button location

* [Fix]Adjusted button positioning and mapping after review. Mapping requires debugging.

* [Fix] Fixed visible pokeball in legacy mode and key mapping

* [Fix] Background fixes,manage menu is the only one affected by changes now

* Implement i18n keys

* [Fix] implemented most code optimizations and callbacks to the modified locales folder

* [Fix] Implemented 3 suggestions

* [Fix]improved/corrected test structure

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

* [Fix] added functionality test for the discard button

* [Fix] added necessary comment

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

* [Fix] Implemented suggested changes in test/discard text prompt

* [Fix] Implemented UI suggestions and removed discard text confirmation

* [Fix] added missing imports

* Fix imports in test file

* [Fix] Implemented suggested cursor behavior and reworked test code

* [Fix] Corrected failed test

* [Fix] atempting to fix the test timeout issue

* [Fix] Undoing latest attempt

* [Fix] Implemented suggestions to fix broken tests

* Reviews

* [Fix] replaced icon images

* [Fix] Updated jsons to match new icons and removed pokeball icon from legacy mode

* Optimized new images

* [Fix] Fixed referenced bug and added similar confirmation box to release

* [Fix] Updated tests to handle the corfirmation box

* [Fix] Added back the accidentally removed changes

* [Fix]updated incorrect import path

* [fix] add description for the manageItemMode function

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

* Update src/ui/party-ui-handler.ts

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

* [Fix] corrected formating issue

---------

Co-authored-by: Mikhail Shueb <mikhail.shueb@tecnico.ulisboa.pt>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>
Co-authored-by: damocleas <damocleas25@gmail.com>
Co-authored-by: Bertie690 <taylormw163@gmail.com>
Co-authored-by: Adri1 <adrien.grivel@hotmail.fr>
2025-07-31 16:14:51 -04:00
Bertie690
8b304adf14
[Refactor] Added PhaseManager.toTitleScreen (#6114)
* Added `toTitlePhase`; documented phase manager

* Documented phase methods

* Fixed syntax errors + updated signature

* Reverted all the goodies

* Fixed missing shift phase call

GHAG

* Reverted change
2025-07-31 06:27:54 +00:00
Bertie690
f7b87f3d1e
[Move Bug] Fully implemented Future Sight, Doom Desire; fixed Wish Double battle oversight (#5862)
* Mostly implemented Future Sight/Doom Desire

* Fixed a few docs

* Fixed com

* Update magic_guard.test.ts

* Update documentation

* Update documentation on arena-tag.ts

* Update arena-tag.ts docs

* Update arena-tag.ts

* Update turn-end-phase.ts

* Update move.ts documentation

* Fixed tpyo

* Update move.ts documentation

* Add assorted TODO test cases

* Refactored FS to use a positional tag manager

* Added strong typing to the manager, finished save load stufff

* Fixed locales + tests

* Fixed tests and documentation

* sh
Fixed tests for good

* Fixed MEP

* Reverted overrides changse

* Fixed issues with merging

* Fixed locales update & heal block test

* Fixed wish tests

* Fixed test typo

* Fixed wish test flaking out due to speed ties

* Fixed tests fr fr

* actually fixed tests bc i'm stupid

* Fixed tests for real

* Remove locales update

* Update arena-tag.ts

Co-authored-by: Dean <69436131+emdeann@users.noreply.github.com>

* Update move.ts

Co-authored-by: Dean <69436131+emdeann@users.noreply.github.com>

* Update arena-tag.ts

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

* Applied review suggestions and added a _wee_ bit more docs

* fixed wish condition

* Applied kev's reviews

* Minor nits

* Minor formatting change in `heal-block.test.ts`

---------

Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>
Co-authored-by: Dean <69436131+emdeann@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-07-30 22:43:06 -06:00
Bertie690
12acaa9590
[Balance] Updated SF/Triage interactions for moves (#6179)
* Fixed move flags

* Disabled order up interactionn with sheer force

* Update src/data/moves/move.ts

* Removed order up test that no longer applies

shouldn't have been there in the first place
2025-07-31 03:55:52 +00:00
Sirz Benjie
9475505cd2
[Misc] Improve type signatures of serialized arena/battler tags (#6180)
* Improve type signatures of serialized arena/battler tags

* Minor adjustments to tsdocs from code review

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

---------

Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>
2025-07-30 20:59:14 -06:00
Bertie690
1ae69a4183
[Dev] Moved type helpers to separate directory; (#6123)
* [Dev] Moved type helpers to separate directory; renamed `EnumValues` to `ObjectValues` and enforced usage

* Update tsconfig.json

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

* Fixed import issue

* Updated documentation slightly

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Dean <69436131+emdeann@users.noreply.github.com>
2025-07-30 18:17:17 -07:00
fabske0
17eeceb4f3
[UI/UX] Fix button and input field overlaps (#6013)
* [Fix] Fix button overlap

* [Fix] Fix input field overlaps

* use getWidth to determine if label should be shortened

---------

Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>
Co-authored-by: damocleas <damocleas25@gmail.com>
2025-07-30 19:58:10 +02:00
NightKev
10b9cfcdb0
[Balance] End of turn triggers won't occur when you end a biome (#6169)
* [Balance] End of turn triggers won't occur when you end a biome

* Add tests

* Move phase manipulation logic into `PhaseManager`

* Rename "biome end" to "interlude"

* Rename `TurnEndPhase#endOfBiome` to `upcomingInterlude`

---------

Co-authored-by: Wlowscha <54003515+Wlowscha@users.noreply.github.com>
2025-07-29 22:50:57 +00:00
NightKev
ede2a947ca [Docs] Adjust @module doc comment in battler-tags.ts
Note that currently Typedoc is not parsing `@module` docs,
but this comment adjustment would be required if and when
it gets fixed
2025-07-29 15:31:44 -07:00
Sirz Benjie
32faab05d5
[Refactor] Minor refactor of battler tags (#6129)
* Minor refactor battler tags

* Improve documentation

* Update type when loading in pokemon-data constructor for battler tags

* Fix issues in tsdoc comments with Wlowscha's suggestions

Co-authored-by: Wlowscha <54003515+Wlowscha@users.noreply.github.com>

* Apply bertie's suggestions from code review

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

* Remove unnecessary as const from tagType

* Remove missed `as const`

* Apply kev's suggestions from code review

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

* Update src/data/battler-tags.ts

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

* Update src/data/battler-tags.ts

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

---------

Co-authored-by: Wlowscha <54003515+Wlowscha@users.noreply.github.com>
Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-07-29 17:47:24 -04:00
AJ Fontaine
b1561ce741
[ME] [Bug] Disable trades in GTS ME with only 1 valid party member
https://github.com/pagefaultgames/pokerogue/pull/6167
2025-07-29 20:15:17 +00:00
Sirz Benjie
0517d5704a
[Refactor] Mark nickname in pokemon as optional (#6168)
Mark nickname in pokemon as optional
2025-07-28 22:13:10 -04:00
AJ Fontaine
903fad89d9
[Balance][Challenge] Added expanded Fresh Start options (#6162) 2025-07-27 22:46:11 -07:00
Sirz Benjie
0c82b3f514
Improve documentation
Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>
2025-07-27 22:24:07 -06:00
Sirz Benjie
ed915dcb58
Apply kev's suggestions from code review
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-07-27 22:24:06 -06:00
NightKev
c0a42985bf
Fix imports 2025-07-27 22:24:06 -06:00
Sirz Benjie
26cbf2db8c
Update with Bertie's comments
Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>
2025-07-27 22:24:05 -06:00
Sirz Benjie
1df3ac0962
Explicitly check against Moves.NONE
Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>
2025-07-27 22:24:05 -06:00
Sirz Benjie
e1e7287919
Improve canUse computation 2025-07-27 22:24:04 -06:00
Sirz Benjie
adb5900497
Fix improperly named computeMoveId method 2025-07-27 22:24:04 -06:00
Sirz Benjie
9218d35938
Add overload for handle command 2025-07-27 22:24:03 -06:00
Sirz Benjie
22d2b4a436
Minor touchups 2025-07-27 22:24:03 -06:00
Sirz Benjie
958eb00566
Breakup commandPhase#start
Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>
2025-07-27 22:24:02 -06:00
Sirz Benjie
22b9a19ba6
Breakup run and pokemon commands 2025-07-27 22:24:01 -06:00
Sirz Benjie
0935d817e9
breakup fight and ball commands into their own methods 2025-07-27 22:24:01 -06:00
NightKev
462b423cb8
[Dev] Change target to ES2023 in tsconfig.json (#6160) 2025-07-28 00:20:02 -04:00
Bertie690
157b662f9e
[Bug] Fix camel case bug in strings.ts (#6161) 2025-07-27 20:17:46 -07:00
Sirz Benjie
c0e755c3c3
[Refactor] Prevent serialization of full species in pokemon summon data
https://github.com/pagefaultgames/pokerogue/pull/6145

* Prevent serialization of entire species form in pokemon summon data

* Apply suggestions from code review

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

* Apply Kev's 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: NightKev <34855794+DayKev@users.noreply.github.com>
2025-07-27 18:01:44 -07:00
Bertie690
19730f9cf0
[Misc] Moved + cleaned up string manipulation functions (#6112)
* Added string utility package to replace util functions

* Changed string manipulation functions fully over to `change-case`

* Fixed missing comma in package.json

trailing commas when :(

* fixed lockfile

* Hopefully re-added all the string utils

* fixed package json

* Fixed remaining cases of regex + code dupliation

* Fixed more bugs and errors

* Moved around functions and hopefully fixed the regex issues

* Minor renaming

* Fixed incorrect casing on setting strings

pascal snake case 💀

* ran biome
2025-07-27 13:59:03 -07:00
Sirz Benjie
1b8082a177
[Refactor] Refactor UI text ts (#5946)
* Add destroy method to pokemon-sprite-sparkle-handler

* Move TextStyle to enums, convert into const object

* Cleanup text.ts file

* Add necessary explicit types for TextStyle let vars

* Fix locales submodule commit

* Fix merge issue

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-07-27 17:46:56 +00:00
Sirz Benjie
ed8858e07d
[Bug][Beta] Make bounce delay use fixed int (#6156)
Make bounce delay use fixed int
2025-07-26 21:58:06 -05:00
Sirz Benjie
2f1cf2fc13
[Beta] [Bug] Fix shiny display issues (#6154)
Fix shininess check
2025-07-27 02:35:39 +00:00
SmhMyHead
08d7216424
[UI/UX] Added "Hide Username" Setting (#6105)
* [UI/UX] Added "Hide Username" Setting

* Mask tid with asterisk instead of hiding completely

---------

Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>
2025-07-26 22:34:21 +00:00
Sirz Benjie
0ef1a34030
[Refactor][Bug] Illusion no longer overwrites data of original Pokemon
https://github.com/pagefaultgames/pokerogue/pull/6140
2025-07-26 16:07:16 -06:00
damocleas
556d588d67
[UI/UX] Replace 'Neutral' in the Arena Flyout with 'Field' (#6139)
Update arena-flyout.ts for Field > Neutral
2025-07-25 21:20:48 -04:00
Acelynn Zhang
2e3a7d47e0
[Bug] Fix Thrash continuing on caught Pokemon (#6144)
Fix Thrash continuing on caught Pokemon
2025-07-25 23:55:13 +00:00
Bertie690
ab394db9cf
[Refactor] Minor cleanup of initExpKeys (#6127) 2025-07-25 18:39:25 -05:00
Sirz Benjie
ffa3d1cfe3
[UI/UX] [Bug] Fix ModifierSelectPhase animation delay (#6121)
* Rework promise handling to ensure no races

* Add delay to ensure pokeball opening animation can be seen

* Remove leftover debug statements.

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

* Add tween bouncing pokeball to tweens that must complete for promise to resolve

* Fix typo in tsdoc

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

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>
2025-07-25 20:36:21 +00:00
Acelynn Zhang
fc128a2f4c
[Bug] Fix when variable move power is called (#6126)
* Apply variable power attribute before type boost

* Update test/abilities/normal-move-type-change.test.ts

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

* Minor test improvements

---------

Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>
Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-07-24 23:16:23 -07:00
Madmadness65
99545cf3c7
[Misc] Sinistea and Poltchageist line alt forms now available (#4989)
* Sinistea and Poltchageist line alt forms now available

* Unmark Poltchageist line as unobtainable, fix sprite key of alt forms

* Correct forms not being marked as starter selectable

* Reduce wild chance for Antique/Masterpiece forms

Instead of being 1/2 chance to get the Antique or Masterpiece forms, it is now only a 1/16 chance to get them.

---------

Co-authored-by: damocleas <damocleas25@gmail.com>
2025-07-25 01:45:09 +00:00
Bertie690
6ad11015f7
[Dev] Remove sanitizeOverrides, consolidate initialization code into 1 file
https://github.com/pagefaultgames/pokerogue/pull/6134

* Removed `sanitizeOverrides`

* Moved initialization code to its own file

* Hopefully fixed test contamination

* Actually listened to people now

* fixed the thingy

* Run stub setup on init because

* Update testFileInitialization.ts

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

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-07-25 01:23:13 +00:00
Acelynn Zhang
6211fbd471
[Bug] Unblock priority spread under Psychic Terrain (#6136)
Unblock priority spread under Psychic Terrain

Co-authored-by: Acelynn Zhang <acelynnzhang@Acelynns-MacBook-Pro.local>
2025-07-25 01:05:14 +00:00
Sirz Benjie
51d4c33de0
[Misc] Standardize-file-names (#6137)
* Standardize filenames to kebab-case

Co-authored-by: pymilkmaiden <cassiopeiamahler56@gmail.com>

* Move script outside of public folder

* Move update_exp_sprites to scripts

* Add ls-lint to lint file and directory names

* Update lefthook.yml to skip merge / rebase on all pre-commit commands

---------

Co-authored-by: pymilkmaiden <cassiopeiamahler56@gmail.com>
2025-07-24 16:38:31 -04:00
Lugiad
58876a2086
[UI/UX] [Localization] Apply single-column Game Stats to more languages (#6135)
Apply sigle-column Game Stats to more languages
2025-07-24 11:48:52 -04:00
Sirz Benjie
ef843debee
[UI/UX] Allow adjustable column count in stats-ui-handler
https://github.com/pagefaultgames/pokerogue/pull/6087

* Make column count modular

Co-authored by: ShinigamiHolo <128856544+ShinigamiHolo@users.noreply.github.com>

* Make game stats ui handler use phaser method chaining

* Adjust max cursor calculation

* Make arrowUp start invisible

* Add implementations for setFlip methods in MockSprite

* Misc cleanup

* Address kev's review comments

* Address kev's review comments

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

* improve clarity of doc comment

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

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>
2025-07-23 23:06:17 -04:00
Sirz Benjie
b1e1a383fb
[Bug] Appropriately load delayed attack when target index was player
https://github.com/pagefaultgames/pokerogue/pull/6128
2025-07-22 16:10:43 -07:00
Sirz Benjie
069e8a47d6
[Bug][Refactor] Fix loading arena tags (#6110)
* Improve type safety; add missing loadTag overrides to wish and neutralizing gas

* More automatic type safety for arena tags

* Fixup wording of lead comment in arena-tag.ts

* Apply kev's suggestions from code review

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

* Allow abstract constructors for arena methods

* Address dean's comments from code review

* Add missing newline after interface definition

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

* Apply suggestions from code review

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

* Apply suggestions from code review

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

* Format with biome

* Update tsdoc of ConditionalProtectTag

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

* Apply kev's suggestions from code review

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

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>
2025-07-22 11:26:27 -07:00
Bertie690
6937effa16
[Misc/Docs] Assorted code cleanups + doc updates (#5745)
* Squashed changes into 1 commit, reverted unneeded stuff

* Update ability-class.ts comments

* Update move.ts comments

* Fixed flaky test

* Applied PR reviews

* Update move.ts

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

* Fixed ab code

* Added comment for BattlerIndex

* ddd

* ren biome

* Update battler-tags.ts

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

* Update battler-tags.ts

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

* Update pokemon.ts

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

* Update pokemon.ts

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

* Update pokemon.ts

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

* Fixed the things

* Fixed up a few `default` stuff and random enum stuff

* Update move.ts comments

* Revert change to pokemon.ts

* Update battle-scene.ts

* fixed import oopsie

* Update src/field/pokemon.ts

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

* Update src/data/abilities/ability.ts

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

* Update src/data/abilities/ability.ts

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

* Fix incorrect TSDoc

* Update ability.ts

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

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-07-22 10:28:10 -07:00
podar
56e3402c81
[Bug] [QoL] Updating manifest fetching to be more resilient for local development and offline builds. (#4735)
* Fixing local development and offline builds

* Update src/main.ts

---------

Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>
2025-07-22 00:08:17 -05:00
Bertie690
a382554256
[Test/Ability] Cleaned up Magic Guard/battle tests; fixed innards out interaction (#5911)
* Fixed tests for Magic Guard, Battle phase; fixed innards out stuff

* Fixde magic guard aftermath

* fixed tests

* Fixed innards out

* fixed using sizzly slide instead of will o wisp to inflict burn

* ran boime

* Readd simulated oopsie

* Fix HJK test to use protect + docs and such

* Apply Biome

---------

Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-07-21 17:42:27 +00:00
Madmadness65
1428d8b870
[Balance] Add faint trigger to various form changes (#6122)
* [Balance] Add faint trigger to Battle Bond Greninja's form change

The form change functionality will now be slightly closer to Generation 7/8, as the Greninja will now revert from Ash form to Battle Bond form upon fainting.

* Change how the form change on faint is triggered

It is no longer directly handled by the faint phase, and is instead part of the abilities now, as more than Battle Bond Greninja revert via this method (Disguise Mimikyu, Power Construct Zygarde).

* Adjust Disguise test
2025-07-20 18:59:01 +00:00
NightKev
8dd6608e10
[UI] Status moves only show 1x or 0x for effectiveness hints (#6119) 2025-07-20 09:48:27 +02:00
Sirz Benjie
2388372cca
[Dev] Add support for manually rolling polyfills. Add polyfill for promise.withResolvers (#6103)
* Add polyfill for Promise.withResolvers

* Import polyfills in main

* Apply kev's suggestions from code review

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

* Address comments from code review

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-07-19 09:06:32 -07:00
damocleas
4f4ca5f0c7
[Art][Sprite] Improve Plains Background, add Biome Props (#6118)
* Plains Background Improvement, add Props

* Update CREDITS.md for new biome assets

* Update flower and everstone props
2025-07-19 02:04:15 -04:00
NightKev
a81e187164
[i18n] Pokemon#getOpponentDescriptor no longer returns a pokemon name
https://github.com/pagefaultgames/pokerogue/pull/6053
2025-07-18 23:42:51 +00:00
SmhMyHead
def80f2e10
[UI/UX] Baton shows on top, De/Activate form shows on bottom (#6104)
[UI/UX] Batton shows on top, De/Activate form shows on bottom
2025-07-18 03:36:53 +00:00
NightKev
4dca988823
[Dev] Update packages (#6088)
* Update packages

* Add default values for tweens

* Add mocks for `InputText` and `BBCodeText`

* Delete deprecated `vitest.workspace.ts`

* Replace `new InputText` with `globalScene.add.rexInputText`

* Disable broken Magic Bounce test

* Disable broken test in `stockpiling.test.ts`
2025-07-16 22:28:17 -07:00
Sirz Benjie
de2d4c8b0e
[AI] Minor fixup of matchup score (#6100)
* Minor fixup of matchup score

* Add some comments discussing deficiencies

* Fixup incomplete comment

* Apply kev's 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-07-16 19:52:57 +00:00
Sirz Benjie
b3f4005a16
[Bug] Fix return in applyChosenModifier; prevent race condition in modifier-ui-handler (#6099)
* Fix return in applyChosenModifier

* Stop race condition in modifier-select-ui

* Fix null errors inside the tween's onUpdate method

* Minor cleanup of tween chains

* Minor cleanup of tween chains

* Minor fixup
2025-07-16 17:25:58 +00:00
damocleas
3d42e976b7
[Balance] Encounter condition adjustments for Legendaries and Random Trainers (#6084)
* Adjust Trainer Chances, Legendary Encounter Waves

* Poipole, Kubfu, and Type: Null checked

* 55 made the default

* Update src/field/arena.ts

Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com>

* Replace `switch (true)` with `if/else`

* fix comment

Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com>

* Update arena.ts random trainer chances in biomes

* Update arena.ts random trainer chances in biomes

* beach.,

---------

Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com>
Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-07-16 11:21:52 -05:00
AJ Fontaine
583b3758c0
[Dev] Move Fixed Battle Configs to own file (#6054) 2025-07-15 21:54:15 -07:00
Bertie690
e05d85977e
[Dev] Updated enum utils to have strong typing (#6024)
* Updated enum utils to refuse non-enum values;
added strong typing on return values

* Moved Enum functions to own file; added type helpers for enums

* Cleaned up some code

* Fixed up tests

* Fix training-session-encounter.ts
2025-07-15 01:14:02 -07:00
Sirz Benjie
971a86d20a
[Beta][Bug][UI/UX] Ensure setCursor is called if not first turn (#6098)
Ensure setCursor is called if not first turn
2025-07-14 19:07:12 -04:00
Blitzy
773229effd
[Balance] 1.10 Passive, Egg Move, and Starter Cost Changes (#6097)
* Update egg-moves.ts 38 egg move changes

* Update passives.ts - 23 passive changes

* Updates starters.ts - 2 cost changes

---------

Co-authored-by: damocleas <damocleas25@gmail.com>
2025-07-14 19:06:34 -04:00
Sirz Benjie
6e6f9da1fd
[Bug] Fix grey caught indicator for genderless pokemon (#6095)
Fix grey caught indicator for genderless pokemon
2025-07-14 16:57:38 -04:00
Sirz Benjie
374fb9613a
Revert "[Bug] Genderless Pokemon no longer grey out the caught icon" (#6094)
Revert "[Bug] grey caught indicator for genderless pokemon (#5935)"

This reverts commit 5104f5712f.
2025-07-14 16:35:15 -04:00
fabske0
5104f5712f
[Bug] grey caught indicator for genderless pokemon (#5935)
* grey caught indicator for genderless pokemon

* adding suggestions

---------

Co-authored-by: damocleas <damocleas25@gmail.com>
2025-07-14 15:37:59 -04:00
Lugiad
362dd9e2b9
[UI/UX] HEADER_LABEL TextStyle Fix (#6089) 2025-07-13 17:59:51 -07:00
NightKev
8cf1b9f766
[Dev] Enable Biome import sorting (#6052)
* [Dev] Enable Biome import sorting

Additional changes:

- Implement import aliases

- Convert default exports to named exports

- Remove relative imports

* Apply changes

* Misc fixes

* Merge cleanup
2025-07-13 00:21:25 -07:00
Jonathan Bankston
22c386ea9e
[BUG] Fix Transform and Imposter issues (#6008)
* Fixed Transform and Imposter Bug

* Updated Comments

* Revised Comments

* Revised Changes on how tranformed pokemon are referenced to align with reviewer's suggestions

* Removed unused BattlerTag type for transform

* Removed addition of the transform tag to a pokemon in the PokemonTransformPhase

* Moved the check for whether Transform can be used within the TransformAttr class as suggested and removed uneccesary moveId check

* Consolidated if statement regarding isTransformed

* Removed overrides

* Added move condition to Transform + fixed up imposter target selection

* Condensed tests into 1 file + added more automated tests

This includes a couple regression tests for the fusion shenanigans

* Fixed comment

* Updated override typo for unimplemented methods

* Remove redundant parentheses

* Apply suggestions from code review

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

---------

Co-authored-by: Bertie690 <taylormw163@gmail.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>
Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>
2025-07-12 23:39:48 -07:00
Bertie690
664f2fab0d
[Refactor/Bug] Fix Protean not applying due to terrain + minor cleanup of move phase (#5855)
* Squashed protean/libero changes

* Update protean-libero.test.ts

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

* Update protean-libero.test.ts

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

* Update ability.ts

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

* Update move-phase.ts

* Fixed counter move logic using inverted conditional

* Update move-phase.ts

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

* Update move-phase.ts

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

* Update ability.ts commentfix

* Update src/data/abilities/ability.ts

Co-authored-by: NightKev <34855794+DayKev@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-07-13 05:59:38 +00:00
Bertie690
12fbff71d2
[Test] Added tests for Intimidate, Fishious Rend/Bolt Beak, Payback and Moongeist Beam & co. (#5858)
* Added additional tests for intimidate & ability-ignoring moves

* Added a few basic tests for Fishious Rend and Bolt Beak

* Fixed comment

* Fixe test and added commetn

* Update first-attack-double-power.test.ts

* Fixed incorrect ignore-abilities.test.ts test suite description

* Update ignore-abilities.test.ts suite name

* Fix first-attack-double-power.test.ts

* Actually fixed import

* Update intimidate.test.ts

* Fix test imprts

* Added guard dog tests

* Fixed tests

* Renamed test file

* Added Payback tests

* Fixed accidental unusde class

* Fixed tests

* Fixed flaky test due to 1 length trainer thing

* dd

---------

Co-authored-by: Wlowscha <54003515+Wlowscha@users.noreply.github.com>
2025-07-13 05:55:05 +00:00
Sirz Benjie
940c3c6f42
[Refactor] Cleanup fight UI (#5883)
* Cleanup fight ui handler

* Add types to fight-ui-handler#show

* Fix poor logic in toggleInfo

* Make addInfoToggle capable of taking in multiple toggles
2025-07-12 17:54:43 -07:00
Sirz Benjie
edbba6e635
[Bug][Performance] Plug memory leak related to enemy pokemon lingering around (#6083)
Remove animationupdate in sprite cleanupAndComplete
2025-07-11 12:57:19 -07:00
Lugiad
ca4df7233f
[UI/UX] [Localization] Japanese font change and custom size edits (#6026)
* Delete Japanese Galmuri11 font

* Delete Japanese Galmuri9 font

* Added pokemon-bw font for Japanese

* Changed Japanese Font + removed font size adjustment

* Added Japanese Custom Adjustments

* Slightly increased spacing for Ability name+desc labels

* Japanese starterInfoText adjustments

* Japanese custom lineSpacing adjustment

* Spacing for Ability desc labels adjusted

* Friendship count text adjustment

* Japanese former custom adjustments removal

* TextStyle adjustments

* TextStyle.PARTY adjustments

* Added new TextStyle

* Added new TextStyle

* Added new TextStyle

* Added new TextStyle

* Added new TextStyle

* Add new TextStyle

* Add new Text Style

* Add new TextStyle

* Add new TextStyle

* Add new TextStyle

* Add new TextStyle

* Add new TextStyle

* PARTY_CANCEL_BUTTON TextStyle Correction

* PARTY_CANCEL_BUTTON TextStyle Correction

* Removal of old Japanese line spacing parameter

* Removed old Japanese adjustments

* Apply Biome

* PARTY_CANCEL_BUTTON Adjustments

* partyCancelText position adjustment

* Update i18n.ts

* Change TextStyle of valueLimitLabel

* Added new TextStyle

* Add MOVE_LABEL TextStyle

* Add MOVE_LABEL TextStyle

* Line formatting correction

* MOVE_LABEL TextStyle padding correction

* Added GROWTH_RATE_TYPE TextStyle

* Add GROWTH_RATE_TYPE TextStyle

* Line formatting correction

* Egg Moves title text indepentent from pokemonEggMovesContainer

* Egg Moves title text indepentent from pokemonEggMovesContainer

* Update src/ui/starter-select-ui-handler.ts

* Correction to eggMovesLabel

* Update starter-select-ui-handler.ts

* Added SUMMARY_STATS_GOLD

* Added SUMMARY_STATS_GOLD

* Added proper multiplication symbol

* Added proper multiplication symbol

* Added proper multiplication symbol

* Added proper multiplication symbol

* Added GROWTH_RATE_TYPE

* Added INSTRUCTIONS_TEXT TextStyle

* Added INSTRUCTIONS_TEXT TextStyle

* Added INSTRUCTIONS_TEXT TextStyle

* Added INSTRUCTIONS_TEXT TextStyle

* Added INSTRUCTIONS_TEXT TextStyle

* INSTRUCTIONS_TEXT adjustments

* Added proper multiplication symbol

* Added SUMMARY_DEX_NUM TextStyle

* Added SUMMARY_DEX_NUM

* Revert SUMMARY_DEX_NUM to wrong text

* Add SUMMARY_DEX_NUM

* Removed outdated Japanese custom line spacing

* Removed outdated Japanese custom line spacing

* Removed outdated Japanese custom line spacing

* Correction outdated Japanese custom line spacing

* Added MOVE_LABEL TextStyle

* Fixed corped tooltipbox and tooltipbox scrolling

* Corrected ME descriptiuon scrolling

* Added MOVE_LABEL

* Apply HEADER_LABEL TextStyle

* Apply HEADER_LABEL

* Added custom values for SETTINGS_VALUE

* Apply MOVE_LABEL

* Added STATS_HEXAGON TextStyle

* Apply STATS_HEXAGON TextStyle

* Typo correction

* Delete outadated pokemon-bw font

* Add updated pokemon-bw font

* Update pokemon-bw format

* Added EGG_SUMMARY_NAME and EGG_SUMMARY_DEX TextStyles

* Apply EGG_SUMMARY_NAME and EGG_SUMMARY_DEX

* Add LUCK_VALUE TextStyle

* Apply LUCK_VALUE TextStyle

* Apply LUCK_VALUE TextStyle

* Adjusted LUCK_VALUE

* Apply LUCK_VALUE TextStyle

* Adjustments for Japanese

* Adjusted Japanese custom

* Added FILTER_BAR_MAIN TextStyle

* Apply FILTER_BAR_MAIN TextStyle

* Added japanese to custom TextStyle

* Added English language settings

* Apply Biome

* pokemon-bw font update

* pokemon-bw font updated

* pokemon-bw font update

* pokemon-bw font update

* pokemon-bw font update

* pokemon-bw font update

* pokemon-bw font update

* pokemon-bw font update

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Wlowscha <54003515+Wlowscha@users.noreply.github.com>
2025-07-11 13:51:59 -04:00
Sirz Benjie
bc45869912
[Performance] [Refactor] [UI/UX] Cleanup egg gacha UI, Speed Up Machines (#5889)
* Convert egg gacha type into an object literal

* Refactor egg gacha ui handler

* Apply kev's suggestions from code review

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

* Condense Object.freeze inside of gacha-type.ts

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-07-11 17:38:35 +00:00
Sirz Benjie
ee02366ccf
[Misc] Make FixedInt support coercion to number primitive (#6081) 2025-07-11 02:09:09 -05:00
damocleas
c3bad86ae0
[Audio] Replace Abyss biome BGM with custom BGM by Firel (#6075)
* Replace End biome BGM with custom BGM by Firel

* Update locales submodule

* Replaced PMD Abyss music

Penumbra Chasm

* Update arena.ts

* Trim track, update loop point

* Update track

---------

Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-07-09 20:42:06 +00:00
Madmadness65
cab15c36f0
[Balance] Update biome pools for wild Pokémon (#6074)
* Update biome pools for wild Pokémon

`outputPools` has been run, correcting evolution delays for some Pokémon like Grapploct and Cosmoem, and generally adding spaces to all bracketed lines.

* Revert change to Pawniard line evo delays

Kingambit was evolving before Bisharp due to being an item evolution. The evolution delay for it is now back to level 64.
2025-07-09 14:36:32 +02:00
NightKev
9b0f0b7a0f
[Refactor] Replace .fill().map "loops" with real for loops (#6071) 2025-07-08 00:53:36 -07:00
Sirz Benjie
2fbaca7b5e
[Bug] Prevent save corruption when loading a pokemonData that has no moves (#6070)
Prevent save corruption when loading a pokemonData that has no moves
2025-07-07 23:10:32 -04:00
Sirz Benjie
115d63d0c5
[Bug] Fix anger point procing on every hit if first hit in multi hit was a crit
https://github.com/pagefaultgames/pokerogue/pull/6067

* Fix anger point always procing on multi-hit

when first strike was a crit

* Fix comment spacing

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

* Rename PostDefendCritStatStageChangeAbAttr

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-07-07 18:38:18 -07:00
Madmadness65
e82c788585
[Audio] Add non-final boss Eternatus battle music (#6065)
This battle music will play in Endless when you fight Eternatus (p1 for the 250 waves, p2 for the 1000 waves).
2025-07-06 19:48:33 +00:00
AJ Fontaine
bff8cffe14
[Bug] Fix fusion name not showing on evolution (#6055)
Fix evolution phase not using new fusion name
2025-07-04 19:40:28 +00:00
Wlowscha
f6a434689c
[Balance] Berry Juice and Old Gateau do not depend on the instance
https://github.com/pagefaultgames/pokerogue/pull/6016

* Refactored items and respective MEs

* Changed icon names, added bad berry juice, fixed locales

* Berry juice uses a number parameter again, allowing to convert from old saves without a migrator

* Updated encounter with correct sprite

* Update src/data/mystery-encounters/encounters/weird-dream-encounter.ts

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

* Replaced bad berry juice icon

* Repacked atlas

* Re-export item atlas

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com>
2025-07-03 21:04:59 -07:00
Jonathan Bankston
12aaa31454
[Refactor] Minor run phase rework (#6017)
* Minor Attempt run phase rework to abstract logic to whole team

* Decoupled individual pokemon from run phase logic

* Formatting

* Completed run phase refactor implementation and updated tests

* Updated run phase to extend field phase instead of pokemon phase

* Removed unused phase decleration in tests

* Removed unecessary arg in turn start phase as refactor no longer needs it

* Cleaned up getPlayerField

* Made adjustments based on reviewer suggestions

* Reintrocuded calculateEscapeChance into AttemptRunPhase and removed run utils

* Resolve merge issues

* Minor TSDoc improvement to `BattleScene#getPlayerField`

* Moved early override check to top of calculateEscapeChance

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-07-02 02:57:08 -07:00
Bertie690
a54cd953a6
[Bug] Fix Shields Down blocking status in Core Form, unnecessarily resetting before battle (#6044)
* Fix Minior Form Change issues

* Fix bug

* Update Power Construct conditionals to be less janky

* Fix syntax error

* Fix ability.ts
2025-06-30 00:19:59 -04:00
Bertie690
1bd152a738
[Refactor] Moved various classes/interfaces to own files (#5870)
* Split up Pokemon data types to own files

* Moved `AttackMoveResult` and `TurnMove` to own files

* Moved `customPokemonData` into types folder + fixed comments

* Moved files around + fixed stuff

* Moved `DamageResult` into new file

* Fixed imports

* ran biome

* Fix merge issue
2025-06-28 01:55:47 -07:00
Lugiad
40a92df190
[i18n] [Localization] Translatable Manaphy Egg Tier (#6038)
Translatable Manaphy Egg Tier
2025-06-26 19:04:14 -07:00
NightKev
07f5c3009c
[Dev] Add player and enemy Nature and IV overrides (#6032)
* [Dev] Add player and enemy Nature and IV overrides

* Fix broken tests
2025-06-26 12:01:54 -07:00
Bertie690
3b490e7ab4
[Bug] Status moves blocked by terrain now use correct message
https://github.com/pagefaultgames/pokerogue/pull/5931

* Moved terrain messages to `terrain.ts`, made status failures use correct text

* Revert overrides.ts

* Comment fix

* Fixed confusion message not appearing for misty terrain blockages

* Fixed bug

* re-added import

* Update battler-tags.ts

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

* Added exhaustiveness checking

* ran boime

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-06-24 17:50:35 -07:00
Bertie690
6547e1d5ce
[Dev] Update depcruiser to enforce no non-type export in src/@types/
https://github.com/pagefaultgames/pokerogue/pull/5949

* Add depcruiser rule to enforce no non-type export in `src/@types`

* Add missing field in config

* Fixed type import inside `move.ts`
2025-06-22 18:34:06 -07:00
Sirz Benjie
8afedc33d7
[Refactor] [Ability] Ab attr apply type safety (#6002)
* [WIP] Refactor ability attribute apply args

* [WIP] update ability signatures

* Update callsites in pokemon.ts

* Update callsites in moves.ts

* Update abattr callsites in move-phase

* Update abattr callsites in battler-tags

Also removed stat drop ability application from cancelling ME stat boost effects

* format with biome and remove cancelled from weather lapse

* Update abattr callsites in MEP

* Update callsites in turn-start-phase

* Update abAttr callsites in misc phases

* Remove latent test functionality

* update ability attribute callsite in shield dust test

* update abattr callsite in winstrate challenge encounter

* Fix some tests to mock proper methods

* Remove improper condition in mimicry's ability application

* Fix improper simulated check in moody's apply method

* Pass source to postApplyDamage in pokemon.ts

* [wip] fix cud chew tests

* Make cud chew consumption not subclass postTurnAbAttr

* Fix regression in flower veil

* Update trySetStatus test in pokemon to respect new return value for undefined

* Remove empty, unused file

* Fix blockCrit method broken in merge

* Fix unnecessary attr type cast in move phase

* Address typing issue in safeguard test

* Improve documentation and get rid of ts-expect-error directive

* Minor comment/TSDoc updates and fixes

* Apply suggestions from code review

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

* Apply suggestions from code review

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-06-22 18:23:08 -07:00
Sirz Benjie
9fd79edcb2
[Refactor] Refactor evo phase (#5735)
* Cleanup evolution phase

* Update evolution phase and types

* Refactor form change phase

* Simplify game-speed.ts and update evo phase

* Move delay in formChangePhase to first element

* Fix mock video object return methods

* Fix tween chain mock

* Add todo comment to mock phaser's tween manager

* Remove jarring flash when evolution begins

* Fix missing method chaining in evo phase

* Apply biome formatting
2025-06-22 18:11:38 -07:00
Bertie690
36c79a9a69
[Bug] Reworked BattlerTag/ArenaTag code to prevent breakage on 0 PIDs
https://github.com/pagefaultgames/pokerogue/pull/5932

* Fixed modifier code, removed instances of "0 ID = no mon"

* corrected casing + dejanked seed tag

* Added test file, added overload to `findModifier` if given type predicate

* fixed test

* Revert predicate stuff for now

going in separate PR

* Fix id check syrup bomb test

Wasn't running phase due to being a turn end effect

* [WIP] Changed test to use destiny bond as proper regression

* Removed `instant` and `ignoreUpdate` parameters from `tryTransferHeldItemModifier`; fixed post-battle loot code to _not_ break type safety

* Fixed up tests

* Reverted unneeded changes

* Removed outdated modifier test

* Fix import

* Apply Biome

* Update battler-tags.ts

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

* Update battler-tags.ts

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

* Update arena-tag.ts

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

* Update arena-tag.ts

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

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-06-22 17:29:37 -07:00
Lugiad
7b95b41da3
[i18n] Large Numbers Abbreviations Translation (#6021)
* Large Number Abbreviations opended for transaltion

* Large Number Abbreviations opended for transaltion

* Apply Biome

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-06-22 17:11:16 -06:00
NightKev
4fc77e4de9
[Dev] Update Biome to 2.0.0 (#6004)
* Run `npm audit fix`

* Update Biome to 2.0.0

* Migrate `biome.jsonc` to 2.0

* Apply Biome and fix some suppression comments

* Fix some suppression comments and update config

* More config updates

Added at "error": `noUnusedLabels`, `noThisInStatic`

Changed `useDefaultParameterLast` from "off" to "warn"

Changed `noDocumentCookie` (from recommended) from "warn" to "off"

Changed `noExcessiveCognitiveComplexity` from "warn" to "info"

* Add a bunch of rules

* Apply Biome safe fixes

* Apply Biome unsafe fixes

* Remove irrelevant `useSelfClosingElements` rule

* Upgrade already followed rules to "error"

* Remove unnecessary type cast

* Disable fixer for `useDefaultParameterLast`

* Disable `useJsonImportAttribute` rule and revert changes

* Fix `mockImage.ts`

* ...there's a `@ts-nocheck` in this file

* Use whole-file lint suppression comment in `version_converter.ts`

* Add a couple comments to `biome.jsonc`

* Remove ESLint packages and GitHub workflow
2025-06-20 23:24:11 -07:00
Matilde Simões
9f67e06279
[Balance] [AI] Trainer Pokémon will be less likely to switch out on low health (#5981)
* Implemented AI improvements:

The changes in the game AI were as follows ("pokemon.ts"):
- More accurately accounts for the Pokémon's actual moves and their
 effectiveness against the player instead of only the pokemon type
- Introduced logic to decide when a Pokémon should be sacrificed or
switched based on its HP and speed.

Signed-off-by: Matilde Simões <matilde.simoes@tecnico.ulisboa.pt>
Co-authored-by: Fuad Ali <fuad.ali@tecnico.ulisboa.pt>

* Corrected grammar error in variable declaration in getMatchupScore
Signed-off-by: Fuad Ali <fuad.ali@tecnico.ulisboa.pt>
Co-authored-by: Matilde Simões <matilde.simoes@tecnico.ulisboa.pt>

---------

Signed-off-by: Matilde Simões <matilde.simoes@tecnico.ulisboa.pt>
Co-authored-by: Fuad Ali <fuad.ali@tecnico.ulisboa.pt>
Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>
Co-authored-by: damocleas <damocleas25@gmail.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-06-20 17:06:37 -04:00
AJ Fontaine
e00c9e02fb
[Balance] Change Kirlia and Snorunt evolutions to match mainline (#5994)
* Gallade and Froslass use the Dawn Stone

* Dawn Stone still shows up when Kirlia/Snorunt evo paused

* Fix lint
2025-06-20 20:51:19 +00:00
NightKev
4b70fab608
[Bug] Remove message for Rock Head activation (#6014) 2025-06-19 20:59:55 -07:00
lnuvy
1ff2701964
[Bug] Fix when using arrow keys in Pokédex after catching a Pokémon from mystery event (#6000)
fix: wrap setOverlayMode args in array to mystery-encounter

Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>
2025-06-19 20:45:54 -04:00
Bertie690
1e306e25b5
[Move] Fixed Chilly Reception displaying message when used virtually
https://github.com/pagefaultgames/pokerogue/pull/5843

* Fixed Chilly Reception displaying message when used virtually

* Fixed lack of message causing Chilly Reception to fail

* Fixed tests

* Reverted bool change + fixed test

* Fixed test
2025-06-19 17:14:05 -07:00
Madmadness65
43aa772603
[UI/UX] Add Pokémon category flavor text to Pokédex (#5957)
* Add Pokémon category flavor text to Pokédex

* Append `_category` to locale entry
2025-06-20 00:04:57 +00:00
NightKev
0ba3e52f77 Fix merge issue 2025-06-18 18:30:22 -07:00
NightKev
560ebbaee2 Merge branch 'beta' into minor-1.9.6 2025-06-18 18:27:37 -07:00
NightKev
30b2f95a30 [i18n] Map "biome" namespace to the filename change to "biomes" (#6001)
* [i18n] Map "biome" to the filename "biomes"

* Update locales submodule to bring in file rename
2025-06-18 21:11:15 -04:00
AJ Fontaine
663e047af8
[Event] W event (#6006)
W event
2025-06-18 19:52:40 -04:00
AJ Fontaine
80ae42d3ba
[Sprite] Minior and Ferrothorn variants (#6005)
* Minior variants

* Add Ferrothorn variants

* Fix shiny Minior front and icons
2025-06-18 19:49:21 -04:00
Sirz Benjie
182397411e
[Bug] Fix infinite memory mushrooms (#5993)
* Set cost to -1 for modifiers chosen as rewards

* Ensure apply modifier conditional retains original behavior
2025-06-18 17:23:16 -04:00
NightKev
28b6c7e50d
[i18n] Map "biome" namespace to the filename change to "biomes" (#6001)
* [i18n] Map "biome" to the filename "biomes"

* Update locales submodule to bring in file rename
2025-06-17 12:35:39 -07:00
AJ Fontaine
2065f4fd7f
[Bug] Fix incorrect form key being checked for evo items (#5995) 2025-06-17 10:08:20 -07:00
Sirz Benjie
6ff258fb37
[Bug] Fix weather form changes not changing with weather abilities
https://github.com/pagefaultgames/pokerogue/pull/5857

* Add test for forecast

* Fix PostSummonFormChangeByWeatherAbAttr

* Fix overrides in forecast test

* Remove a test whose trigger conditions can no longer happen

* Update src/data/abilities/ability.ts

Co-authored-by: Dean <69436131+emdeann@users.noreply.github.com>

* Fix missing tsdoc param

* Apply kev's suggestions from code review

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

* Simplify PostSummonFormChangeByWeather's canApplyPostSummon

* Fix unused params that messed up after rebase

* Fix form change import

Messed up due to improper rebase

---------

Co-authored-by: Dean <69436131+emdeann@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-06-16 06:02:09 -07:00
AJ Fontaine
e3108603e3
[Refactor] Rework evolution conditions and descriptions (#5679)
* Refactor evo conditions and descriptions

* Fix test

* Fix Shedinja

* Simplify Gimmighoul evolution

* Primeape and Stantler evolve by using their move 10 times

* Basculin white stripe evolves by taking 294 recoil damage

* Primeape and Stantler use modifiers for tracking

* Basculin uses modifier too

* Remove evo count from pokemon data

* No more evo counter data, Gallade/Froslass

* Fix allmoves import

* Clamperl

* Struggle shouldn't count for Basc recoil

* Change to nicer type

* Apply Benjie's suggestions

Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>

* Address formatting

* Undo new evolution changes

* Remove unused imports

* Fix speciesid

* Fixed up descriptions a little

* Change a key name

* Fix Gimmighoul

* Apply Biome

* Apply Biome unsafe fixes

* Review suggestions

- Convert `EvoCondKey` enum to `const` object

- Use early returns in `SpeciesEvolutionCondition#description`
and `SpeciesFormEvolution#description`

- Replace `!!x.find` with `x.some`
and `y.indexOf() > -1` with `y.includes()`

- Implement `coerceArray`

- Fix Shelmet evolution condition
checking for Shelmet and not Karrablast

- Remove unnecessary type casting in `battle-scene.ts`

* Remove leftover enforce func loop

* Fix circular imports issue

- `getPokemonSpecies` moved to `src/utils/pokemon-utils.ts`
- `allSpecies` moved to `src/data/data-lists.ts`

---------

Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-06-16 05:57:51 -07:00
Bertie690
ccceaac877
[Test] Reworked crit override to allow for forced crits (#5738)
* Crit override stuff

* Update ability.ts

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

* Update pokemon.ts

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

* Update game-mode.ts

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

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-06-16 05:36:09 -07:00
AJ Fontaine
ebc6ff2ed3
[Refactor] Clean up shiny/HA reroll methods (#5803) 2025-06-16 05:18:44 -07:00
Bertie690
5efdb0dc0b
[Refactor] Fix issues with "last move selected" vs "used" (#5810)
* Added `MoveUseType` and refactored MEP

* Fixed Wimp out tests & ME code

finally i think all the booleans are gone
i hope

* Added version migration for last resort and co.

buh gumbug

* Fixed various bugs and added tests for previous bugfixes

* Reverted a couple doc changes

* WIP

* Update pokemon-species.ts

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

* Update pokemon-phase.ts

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

* Fixed remaining tests (I think)

* Reverted rollout test changes

* Fixed command phase bug causing metronome test timeout

* Revert early_bird.test.ts

* Fix biome.jsonc

* Made `MoveUseType` start at 1

As per @DayKev's request

* Fixed a thing

* Fixed bolt beak condition to be marginally less jank

* Applied some review suggestions

* Reverted move phase operations

* Added helper functions complete with markdown tables

* Fixed things

* Update battler-tags.ts

* Fixed random issues

* Fixed code

* Fixed comment

* Fixed import issues

* Fix disable.test.ts conflicts

* Update instruct.test.ts

* Update `biome.jsonc`

* Renamed `MoveUseType` to `MoveUseMode`; applied review comments

* Fixed space

* Fixed phasemanager bugs

* Fixed instruct test to not bork

* Fixed gorilla tactics bug

* Battler Tags doc fixes

* Fixed formatting and suttff

* Minor comment updates and remove unused imports in `move.ts`

* Re-add `public`, remove unnecessary default value in `battler-tags.ts`

* Restore `{}` in `turn-start-phase.ts`

Fixes `lint/correctness/noSwitchDeclarations`

* Remove extra space in TSDoc in `move-phase.ts`

* Use `game.field` instead of `game.scene` in `instruct.test.ts`

Also `game.toEndOfTurn()` instead of
`game.phaseInterceptor.to("BerryPhase")`

* Use `game.field` instead of `game.scene` in `metronome.test.ts`

* Use `toEndOfTurn()` instead of `to("BerryPhase")` in `powder.test.ts`

* Convert `MoveUseMode` enum to `const` object

* Update move-phase.ts

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

* Add `enumValueToKey` utility function

* Apply Biome

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-06-15 10:52:44 -07:00
NightKev
f8d8a3de84
[Dev] Enable dependency cruiser workflow (#5966)
* Update `.dependency-cruiser.cjs` config file

* Update GitHub workflow

* Have `depcruise` check `test/` as well

* Remove circular import between `battle-anims.ts` and `battler-tags.ts`
2025-06-15 00:51:21 -07:00
Dean
18ba33e6f0
[Bug] Fix zombie pokemon in Fun+Games ME (#5992) 2025-06-15 00:36:28 -07:00
damocleas
73e0a2905b
[Beta] Revert "[UI/UX] Default cursor to no when stop trying to teach move" (#5990)
Revert "[UI/UX] Default cursor to no when stop trying to teach move"

This reverts commit ba2158ec64.
2025-06-14 17:40:18 -04:00
Wlowscha
fd1404706a
[Bug] Remove empty modifierPool (#5988) 2025-06-14 12:01:29 +00:00
Bertie690
a41de39d4f
[Misc] Run biome on all files; update some rules to be errors now
https://github.com/pagefaultgames/pokerogue/pull/5962/

* Fixed lint issue; ran biome on entire repository

* Fixed biome.jsonc

* Trimmed trailing whitespace... again...

* Fixed PR template md

* Fixed package json

* Fixed void return issues + ran biome again

* ran biome
2025-06-14 00:59:34 -07:00
fabske0
9a525ac8fd
[UI/UX] Position setting Icons dynamically (#5969)
* position setting icons dynamically

* add comment for potential overlap
2025-06-14 03:19:05 +00:00
damocleas
718d6f61cf
[Bug] Fix Fog interactions with Morning Sun/Synthesis/Moonlight and Solar Beam/Blade (#5987)
Fix Weather based Healing Moves and Solar Beam/Blade not interacting with Fog

Update move.ts
2025-06-13 21:10:38 -04:00
NightKev
7c6189e812
[Refactor] Create utility function coerceArray (#5723)
* [Refactor] Create utility function `makeArray`

This replaces the `if(!Array.isArray(var)) { var = [var] }` pattern

* Replace `if` with ternary, rename to `coerceArray`

* Add TSDocs

* Improve type inferencing

* Replace missed `Array.isArray` checks

* Apply Biome

* Re-apply changes to phase manager

* Re-apply to `SpeciesFormChangeStatusEffectTrigger` constructor

Apply to new instances in test mocks
2025-06-12 21:30:01 -07:00
Mourouh
425985a056
[Balance] Add wild encounter chance to Maushold and Dudunsparce forms (#5975)
Added wild encounter chance to Maushold and Dudunsparce forms
2025-06-12 16:56:37 -05:00
Dean
ff9aefb0e5
[Bug] Activate PostSummon Abilities in Speed and Priority Order
https://github.com/pagefaultgames/pokerogue/pull/5513

* Add prependToPhaseWithCondition and use it in SummonPhase to determine speed order

* Move logic to PostSummonPhase

* Add test base

* Pivot to using sort strategy instead

* Add and update tests

* Support priority ability activations

* Ensure priority abilities are still activated on switch in

* Add test for priority

* Update to use priority numbers instead of a boolean

* Add ability priorities to constructors

* Move sorting to BattleScene

* Rename phase file

* Update import

* Move application to applyPostSummonAbAttrs and stop assuming no other phases in queue

* Ensure all PostSummonPhases from encounters are added at the same time

* Switch to priority queue approach

* Ensure that zero/negative priority activations happen after postsummonphase

* Revert 07646fe (not needed due to stable sort)

* Always create separate ability phases for passive and use boolean instead of priority number when applying

* Add test for dynamic updates

* Add BattlerIndex import

* Clear queues for testing

* Benjie suggestion

* Split files

* Update import in battlescene

* Remove extra spaces added by VSCode

* Fix other conflicts

* Update PhaseManager

* Update to use PhaseManager

* Immediately start postsummons

* Fix test

* Fix BattlerIndex import

* Remove unused imports

* Fix postsummon application

* Make priority readonly
2025-06-11 22:28:27 -07:00
Sirz Benjie
1029afcdbf
[Refactor] Remove circular dependencies (part 4) (#5964)
* Add abilityAttr.is methods

* [WIP] move modifier stuff around

* Untangle circular deps from modifiers

* Move unlockables to own file

* Untangle all circular deps outside of MEs

* Move constants in MEs to their own files

* Re-add missing import to battle.ts

* Add necessary overload for getTag

* Add missing type import in weather.ts

* Init modifier types and pools in loading-scene

* Remove stray commented code

* Apply kev's 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-06-11 19:42:04 -07:00
Dobin Shin
ba2158ec64
[UI/UX] Default cursor to no when stop trying to teach move
https://github.com/pagefaultgames/pokerogue/pull/5924

* [UI/UX] "Stop trying to teach move" Defaulting to "No"

* [Test] setCursor to 0, 'Yes' to end learning move

* Move confirmUIMode to its own file in enums, add docs

---------

Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>
2025-06-11 16:24:27 -07:00
Bertie690
aea2c178c9
[i18n] Added locales text for force switch moves (#5930) 2025-06-10 19:54:44 -04:00
Sirz Benjie
a9869569fa
Fix sprite variant recolor 2025-06-09 23:24:39 -05:00
Sirz Benjie
48e911e03c
[Refactor] Remove circular deps 3 (#5959)
* Move game-mode to its own file

Reduces circular imports to 325

* Move battler-index to own file

Reduces circular deps to 314

* Move trainer-variant to own file

Reduces circ deps to 313

* Move enums in pokemon to their own file

* Move arena-tag-type to its own file

* Move pokemon-moves to its own file

* Move command to own file

* Move learnMoveType to own file

* Move form change item to own file

* Move battlerTagLapseType to own file

* Move anim enums to own shared file

* Move enums out of challenges

* Move species form change triggers to own file

Reduces circ imports to 291

* Update test importing pokemon move

* Replace move attribute imports with string names

* Untangle circular deps from game data

* Fix missing string call in switch summon phase

* Apply kev's suggestions from code review

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

* Ensure ChargeMove's is method calls super

* Use InstanceType for proper narrowing

* Apply kev's 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-06-09 16:24:13 -07:00
AJ Fontaine
b1c50dd69f
[Bug] Fix TM compatibility for Terapagos and Knock Off (#5958)
Fix TM compatibility for Terapagos and Knock Off
2025-06-08 16:49:50 -07:00
Wlowscha
5ef88a6d4d
[Refactor] Refactor select-modifier-phase.ts (#5886)
* Refactored select-modifier-phase.ts

* Added some missing type signatures

* Changes from suggestions

* Added ModifierSelectCallback type
2025-06-08 15:13:26 -07:00
Tiago Rodrigues
37767799cd
[Bug] Gorilla Tactics now activates on protect and miss (#5567)
* [Bug] Fix #5112: Gorilla Tactics only registers succesful moves as move usage

* Apply small fixes from code review

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

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-06-08 12:52:48 -04:00
Sirz Benjie
1c4edabd1d
[Refactor] Ensure that new phases are created through the phase manager
https://github.com/pagefaultgames/pokerogue/pull/5955

* Add newPhase method to phase-manager

* Update calls to append/prepend phase to use string phase

* Replace instantiations of new phase with phase manager
2025-06-07 23:55:30 -07:00
NightKev
75beec12a8
[Dev] Enable Biome checking of ability.ts (#5948) 2025-06-07 21:43:30 -07:00
Bertie690
35a09af475
[Utils] Create utility function randSeedFloat (#5767) 2025-06-07 19:29:10 -07:00
Sirz Benjie
93745f14b7
[Refactor] Decouple phase system from battle-scene (#5953)
* Move phase logic into its own class

* Move ts ignore comment
2025-06-07 17:59:30 -07:00
Jimmybald1
3114035673
[Balance] Update catch rates to Gen 9 (#5954)
Updated catch rates to gen 9w

Co-authored-by: Jimmybald1 <147992650+IBBCalc@users.noreply.github.com>
2025-06-07 20:54:33 -04:00
Bertie690
ef6029ae4b
[Refactor] Add methods isPlayer and isEnemy to reduce circular imports
https://github.com/pagefaultgames/pokerogue/pull/5902

* Added functions `isPlayer` and `isEnemy` for type checking

* Apply suggestions from Kev code review

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

* Fix merge issue

* Split imports

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-06-07 17:44:58 -07:00
Bertie690
1ff45687c5
[Refactor] Merged interfaces/ into @types/; removed runtime orphan modules
https://github.com/pagefaultgames/pokerogue/pull/5951
2025-06-07 17:28:01 -07:00
NightKev
c5db827381
[Dev] Enable Biome linting of move-effect-phase.ts (#5947) 2025-06-06 23:09:23 -07:00
Bertie690
a818c2b33f
[Bug] Dancer no longer breaks "last hit only" moves, respects flinch + steadfast (#5945)
* WIP

* Fixed Dancer last hit, flinch move interaction

* Fixed steadfast interaction

* Fixed comment + flaky test

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-06-06 20:50:16 -07:00
Bertie690
88e4ab978b
[Misc] Removed cases of a ? true : false and useless super calls from subclasses (#5943)
* Removed cases of `if (a) {return true}' return false`

* Removed useless `super.xyz` calls from functions

* Fixde missing issur

* Use early return in `Pokemon#isOffsetBySubstitute`

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-06-06 17:00:09 -07:00
SmhMyHead
0336858708
[UI/UX] Legendary UP Gacha timer (#5921)
* [UI/UIX] Legendary UP Gacha timer

* Update egg-gacha-ui-handler.ts

Seems "fixedInt" was needed on the delay of the playTimeTimer so the game speed doesn't affect it.

* New timer container by damocleas.

* gacha_legendary.png second version from @damocleas

* Use phaser object chaining methods

---------

Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>
2025-06-06 21:20:02 +00:00
Sirz Benjie
855868bfea
[Refactor] Cleanup achvs ui handler (#5919) 2025-06-06 21:15:13 +00:00
Sirz Benjie
1fc42b3231
[Misc] Add phase#is method to help reduce circular imports (#5868)
* Move phase types out of phase interceptor

* Create isXPhase method and add properties to each phase

* Replace instanceof phase with isXPhase

* Fix missing union types for phaseName

* Update doc comment in phase.ts

* Fix incomplete comment in encounter-phase

* Make phaseName as public and fix more uses

* Move phaseName property declaration before constructor in move anim phase

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

* Rename isXPhase to is

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-06-06 21:08:23 +00:00
Lugiad
9021e4b41e
[i18n] More Controller settings localization (#5920) 2025-06-06 19:52:35 +00:00
ShinigamiHolo
2a769e2733
[UI/UX] Adding more space in Egg Gacha for another languge (#5934) 2025-06-06 19:45:12 +00:00
Sirz Benjie
178de207f1
[Refactor] Cleanup egg list ui handler (#5890)
Cleanup egg list ui handler

Co-authored-by: Wlowscha <54003515+Wlowscha@users.noreply.github.com>
2025-06-06 21:34:38 +02:00
Lugiad
e82e182507
[UI/UX] [Localization] Russian Gatcha Text Resize (#5929)
Russian Gatch Text Resize

Co-authored-by: Wlowscha <54003515+Wlowscha@users.noreply.github.com>
2025-06-06 18:33:13 +02:00
PrabbyDD
0c54fc1be0
[Bug] Fix no EXP awarded if all active pokemon faint (#4688)
Party pokemon will now gain EXP from EXP Share
even if all the active pokemon are fainted

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-06-05 18:22:27 -04:00
Sirz Benjie
193c5ffb0c
[UI/UX] Move Reload Required text to bottom of settings (#5928)
* Move Reload Required text to bottom of settings

* Remove unneeded reloadRequiredText field
2025-06-05 15:18:07 -07:00
Wlowscha
39b8dc9a85
[Refactor] Removing unused logic for mbh/grip claw (#5914)
* Removing unused logic for mbh/grip claw

* Updated docstring

---------

Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>
2025-06-05 21:54:50 +00:00
NightKev
9dcb904649
[Misc] Improve enum naming (#5933)
* Rename `Abilities` to `AbilityId`

* Rename `abilities.ts` to `ability-id.ts`

* Rename `Moves` to `MoveId`

* Rename `moves.ts` to `move-id.ts`

* Rename `Species` to `SpeciesId`

* Rename `species.ts` to `species-id.ts`

* Rename `Biome` to `BiomeId`

* Rename `biome.ts` to `biome-id.ts`

* Replace `Abilities` with `AbilityId` in comments

* Replace `Biome` with `BiomeId` in comments

* Replace `Moves` with `MoveId` in comments

* Replace `Species` with `SpeciesId` in comments
2025-06-04 14:54:27 -07:00
damocleas
7cd89cd4f7
Update Discord Invite Link 2025-06-02 14:33:39 -04:00
Madmadness65
ea64024e09
[P3 Bug] Remove Expert Breeder trainer type from ME egg source (#5893)
Remove Expert Breeder trainer type from ME eggs

It effectively duplicated the text in the egg source text box,
and overflowed the visual text box as a result.
2025-06-02 14:32:34 +00:00
Sirz Benjie
9f892b906c
[Beta][Bug][UI/UX] Fix name position and types not being updated in battle info (#5913)
Fix name position and types not being updated in battle info
2025-06-02 12:59:10 +00:00
Lugiad
369b3307cd
[UI/UX] Moves menu position adjustments (#5917) 2025-06-01 15:40:57 -07:00
Lugiad
7859fea26b
[i18n] Translatable Game Speed values (#5916) 2025-06-01 12:37:47 -07:00
SmhMyHead
831381e4ce
[UI/UIX] Default cursor to new move when learning a move (#5908) 2025-05-31 11:54:02 -04:00
Lugiad
ccd9480240
[Localization] Secondary pending languages inclusion (#5903)
* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload

* Update mysterious-chest-dialogue.json

* Update mysterious-chest-dialogue.json

* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload

* Update i18n.ts

* Update settings.ts

* Update settings-display-ui-handler.ts

* Update starter-select-ui-handler.ts

* Update i18n.ts

* Update i18n.ts

* Update settings.ts

* Update settings-display-ui-handler.ts

* Update i18n.ts

* Update starter-select-ui-handler.ts

* Update utils.ts

* Update utils.ts

* Add files via upload

* Rename statuses_dk.json to statuses_da.json

* Update statuses_da.json

* Update and rename types_dk.json to types_da.json

* Rename statuses_dk.png to statuses_da.png

* Rename types_dk.png to types_da.png

* Delete src/locales/dk directory

* Add files via upload

* Apply suggestions from code review

* Delete src/locales/da directory

* Delete src/locales/tr directory

* Update i18n.ts

* Update i18n.ts

* Update utils.ts

* Main -> Beta (1.1.6) (#4751)

* Comment out startGame call on manifest fetch failure

* [Hotfix] Fix status damage triggering before berry usage (#4732)

* [Hotfix] Fix Eternatus egg tier (#4734)

* [Hotfix] Fix manifest getting loaded before the game is initialized (#4739)

* fix locales path for offline builds (#4739)

* [Sprite] Hotfix cut off Binacle sprite (#4741)

* [Sprite][hotfix] Fixed cropping on 658 static greninja and ash greninja (#4743)

* [Sprite][hotfix] Fixed cropping on static greninja and ash greninja

* [Hotfix] Fix crash when Mist would block a stat drop (#4746)

---------

Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt>
Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>
Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com>
Co-authored-by: pom-eranian <lrlrliwoo@gmail.com>

* Update settings-display-ui-handler.ts

* Delete src/utils.ts

* Update common.ts

* Delete src/utils.ts

* Update common.ts

* Romanian workspace (#25)

* Russian workspace (#26)

* Update settings-display-ui-handler.ts

* Update settings-display-ui-handler.ts

* Update settings.ts

* Update settings-display-ui-handler.ts

* Update i18n.ts

* Update settings.ts

* Update settings-display-ui-handler.ts

* Update common.ts

* Update and rename statuses_ca-ES.json to statuses_ca.json

* Update and rename types_ca-ES.json to types_ca.json

* Add files via upload

* Delete public/images/statuses_ca-ES.png

* Delete public/images/types_ca-ES.png

* Update locales submodule

---------

Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>
Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt>
Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>
Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com>
Co-authored-by: pom-eranian <lrlrliwoo@gmail.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-05-30 23:54:17 +00:00
damocleas
0988cacc48
Merge branch 'beta' into cleanup-evolution-scene-handler 2025-05-30 19:29:00 -04:00
Sirz Benjie
9a60cc9c71
[Refactor] Cleanup filter bar (#5896)
* Cleanup filter bar

* Move DropDownColumn to its own file

---------

Co-authored-by: Amani H. <109637146+xsn34kzx@users.noreply.github.com>
2025-05-30 23:12:35 +00:00
Sirz Benjie
ed0251ea90
[Refactor] Cleanup egg-counter-container (#5892) 2025-05-30 23:08:52 +00:00
NightKev
d5f7665b15
[Test] Update test utils (#5848)
* [Test] Add/update test utils

- Add `FieldHelper` which has methods to mock a pokemon's ability
or force a pokemon to be Terastallized

- Add `MoveHelper#use` which can be used to remove the need
for setting pokemon move overrides by modifying the
moveset of the pokemon

- Add `MoveHelper#selectEnemyMove` to make an enemy pokemon
select a specific move

- Add `MoveHelper#forceEnemyMove` which modifies
the pokemon's moveset and then uses `selectEnemyMove`

- Fix `GameManager#toNextTurn` to work correctly in double battles

- Add `GameManager#toEndOfTurn` which advances to the end of the turn

* Update some tests

- Disable broken Good As Gold test
and add `.edgeCase` to Good As Gold

- Fix Powder test

- Update some tests to demonstrate new methods
2025-05-30 12:24:05 -07:00
Sirz Benjie
901ed73247
Cleanup evolution scene handler 2025-05-29 22:51:36 -05:00
Jimmybald1
ff6f9131ae
[Dev] Fixed biome override not working for Daily Mode (#5776) 2025-05-29 20:39:55 -07:00
Sirz Benjie
8fcb33d11a
[Bug] Fix improperly named sprite key for enemy boss' battle UI (#5888) 2025-05-30 02:11:53 +02:00
Sirz Benjie
d5789105f3
[Refactor][UI/UX] Cleanup battle-info ui code (#5696)
* Create battle-info directory and move battle-info.ts to it

* Move player and enemy battle info to their own files

* Move subclass specific parts of constructor to subclass constructor

* Fixup mock gameobject methods to match phaser gameobject returns

* Make statOrder specific to subclass

* Create getShinyDescriptor function in utils

* Move icon construction to its own function

* Cleanup enemybattleinfo constructor to use chaining

* Make flyout exclusive to EnemyBattleInfo

* Move EnemyPokemon specific init Logic to its class

* Break up initInfo into different methods

* Remove hp bar segment dividers from base battle info

* Move setMini to pokemoninfo

* Breakup updateInfo into smaller parts

* Remove hp info handling from base updateInfo

* Use phaser object chaining methods

* Add some docs

* Add missing chain usage

* Use getShinyDescriptor in pokemon-info-container

* Minor cleanup of updatePokemonExp

* Fixup setSizeToFrame mock

* Ensure pokemon hp numbers are not visible during stat display

* Update src/utils/common.ts

Co-authored-by: Wlowscha <54003515+Wlowscha@users.noreply.github.com>

* Make summary-ui-handler use new shinyDescriptor method

* Remove `undefined` parameter pass

Co-authored-by: Amani H. <109637146+xsn34kzx@users.noreply.github.com>

* Address kev's review comments

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

* Ensure hp number display fades in/out

* Ensure ribbon and caught indicator fade with stat display

* Update src/ui/battle-info/battle-info.ts

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

* Move construction of stats and type icons to their own methods

* Make setPositionRelative return this

* Improve doc comment on paddingX param

* Fix mock sprite's setPositionRelative

---------

Co-authored-by: Wlowscha <54003515+Wlowscha@users.noreply.github.com>
Co-authored-by: Amani H. <109637146+xsn34kzx@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-05-28 17:29:03 +00:00
damocleas
eb0937a09b
Hotfix 1.9.5 to Beta
Hotfix 1.9.5 to beta
2025-05-27 23:57:16 -04:00
Lugiad
c236996a02
[UI/UX] [Localization] starterInfoText adjustments and clean up (#5859)
* starterInfoText adjustments and clean up

* starterInfoText adjustments and clean up

* Update starter-select-ui-handler.ts

* Update starter-select-ui-handler.ts

---------

Co-authored-by: Wlowscha <54003515+Wlowscha@users.noreply.github.com>
2025-05-27 22:08:49 +00:00
Sirz Benjie
2deced5565
[Bug][Move] Allow gastro acid to suppress passives if main ability is unsuppressable (#5854)
* Allow gastro acid to suppress passives if main ability is unsuppressable

* Update gastro_acid.test.ts

* Update src/data/moves/move.ts

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

* Add test to ensure unsuppressable main ability is not suppressed

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-05-27 16:46:56 -05:00
NightKev
68dddbc424
[Dev] Enable Biome checking of pokemon.ts (#5720)
* [Dev] Enable biome parsing of `pokemon.ts`

* Apply unsafe fixes

* Add + apply rule disallowing the use of the `integer` type alias

* Fix typo in comment; remove unnecessary `!!`

* Re-apply Biome after merge

* Re-apply Biome "unsafe" fixes after merge

* Fix import

* Add comment to `getFusionIconAtlasKey` too
2025-05-27 07:50:54 -07:00
NightKev
a98f897591 [Bug] Fix Dipplin's weight (was mistakenly set to the lbs value) 2025-05-27 05:02:58 -07:00
Wlowscha
65a90a3a8d
[UI/UX] Party UI handler refactor (part I) (#5821)
* Splitting process input for menu into its own function

* Making logic for return button more expressive

* Breaking up processOptionMenuInput

* Extracting filterResult logic from processInput

* Inverting order of several conditional checks (if the function always returns after seeing the summary option, may as well check for it straight away...)

* Moving edge case for release option into processReleaseOption

* Splitting up options for when selectCallback is present

* Added some TODOs for later

* Extracted setOptionsCursor function

* Extracted updateOptionsWindow()

* Changing options so that each case is completely separate (almost)

* Added some TODOs

* Reorganizing option processing

* Fixed Baton Pass; logging for testing

* Fixed case of switching out by selecting the Pokemon command

* Clearing options when switching out

* Changed condition on switch for clarity

* Updating TODO

* Fixed options not clearing after item transfer

* Splitting up processing of transfer and move recall mode; ensuring that the cancel option works properly

* Breaking up processInput()

* Removed some redundant playSelect

* Cleaned up some TODOs

* Added private to all new methods

* 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-05-27 04:12:29 -07:00
NightKev
999cbf911e [Bug] Fix Pichu form weights (61.5 -> 2) 2025-05-27 03:56:52 -07:00
Sirz Benjie
e053ead67c [Bug] Fix crash caused by switching in a transformed pokemon (#5864)
* Force reset summon data and load assets prior to switch in

* Update src/phases/switch-summon-phase.ts
2025-05-27 03:34:14 -07:00
Madmadness65
a0484bbde1
[Item] Add Deep Sea Scale & Deep Sea Tooth items (#5078)
* Add Deep Sea Scale & Tooth items

Also changes Clamperl's evolution method from gender-specific to requiring one of the Deep Sea items to be held.

* Move Deep Sea items to Great tier

Also gives every species stat booster item a `rare` boolean to split these items from the rest of the species stat booster items. Updated the existing tests accordingly to account for the split.

* Reduce Great tier species booster item weight

* Fix global scene on evolution conditions

* Merge branch 'beta' into deep-sea-items

* Change how the held item is found in evolution condition

It should no longer look through the entire party's modifiers when seeing if Clamperl is eligible to use a Linking Cord.

* Fix wrong type being boosted

---------

Co-authored-by: damocleas <damocleas25@gmail.com>
Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>
2025-05-23 07:36:30 +00:00
Lugiad
3b2753f27c
[i18n] Moved Ball "Cancel" label to a different locale file (#5866) 2025-05-22 20:14:52 -07:00
Sirz Benjie
f0e806c508
[Misc] Move allMoves to data-lists.ts (#5860) 2025-05-21 20:18:24 -07:00
Sophia
d1b0bbb155
[Bug]: Fix #5010: roar and whirlwind missing fail message when against a trainer (#5659)
* [BUG] Fixes #5010 Roar and Whirlwind don´t display a fail message
Roar and Whirlwind should now display a fail message when
used against a trainer with only one pokémon left

* Apply suggestions from code review made by SirzBenjie
2025-05-21 07:14:16 +00:00
damocleas
4a39adacf8
[UI/UX] Remove Redundant Unlock Passive text (#5845)
* Update starter-select-ui-handler.ts

* Update pokedex-page-ui-handler.ts
2025-05-21 03:05:39 +00:00
AJ Fontaine
1cf19b49f2
[Balance] Moveset generation adjustments (#5801)
* Moveset generation adjustments

* Remove shiny explosion check, prevent 2 self-KO moves
2025-05-20 19:59:39 -07:00
Lugiad
f01e7599ac
[UI/UX] [Localization] Update Japanese starterInfoText (#5852)
Update Japanese starterInfoText
2025-05-21 02:21:35 +00:00
itgalex24
288e4e7e7e
[Bug] [Move] Synchronoise hitting Tera Type fix (#5779)
* synchronoize fix

* Add regression test for synchronoise

---------

Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>
2025-05-20 23:12:54 +00:00
Sirz Benjie
663c64fdb4
[Misc] Fix trailing whitespace (#5856)
Remove trailing whitespace
2025-05-20 14:46:23 -07:00
AJ Fontaine
23e1d88c3a
[Balance] Update TM compatibility for Curse (#5791)
* Update Curse TM compat with former egg moves/level ups

* Pumpkaboo is not Phantump
2025-05-20 19:40:05 +00:00
Lugiad
9746f1a2a6
[UI/UX] [Localization] Update Korean starterInfoText 2025-05-19 17:39:17 -07:00
Lugiad
a9ec3b324c
[UI/UX] [i18n] Text ratio adjustment for es-MX Egg Gatcha (#5839) 2025-05-19 22:03:42 +00:00
Lugiad
bd14ed640c
[Localization] Localizable "Cancel" text in Ball selection menu (#5836)
"Cancel" text localizable
2025-05-19 17:00:51 -05:00
Sirz Benjie
9ae969117b
[Bug][UI/UX] Fix fiery fallout message bug (#5834)
* Fix fiery fallout message bug

* Ensure pokemon names are replaced when there is no separator
2025-05-18 00:22:09 -05:00
Sirz Benjie
4376a22a7c
[Bug] Fix field moves always playing their animations (#5830) 2025-05-17 14:04:16 -07:00
Jimmybald1
998619e7e5
[Bug] IVs of trainers were incorrectly using the battle seed (#5822)
* Fixed IVs of trainers using the Battle Seed.

* Renamed the randSeedInt functions that use the Battle Seed to randBattleSeedInt functions

* Incorrectly used this in common

* Fixed tests that were still calling the old function name

---------

Co-authored-by: damocleas <damocleas25@gmail.com>
Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>
Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com>
Co-authored-by: Dean <69436131+emdeann@users.noreply.github.com>
Co-authored-by: lxy-lxy-lxy <55084073+lxy-lxy-lxy@users.noreply.github.com>
Co-authored-by: Xavion3 <xavion333@gmail.com>
Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>
Co-authored-by: Lylian BALL <131535108+PyGaVS@users.noreply.github.com>
Co-authored-by: Jimmybald1 <147992650+IBBCalc@users.noreply.github.com>
2025-05-17 10:36:16 -05:00
Dean
0c48fff14b
[Bug] Fix Substitute sprite crash & revived Pokemon softlock (#5829)
Break `resetSummonData` into two methods

Co-authored-by: damocleas <damocleas25@gmail.com>
Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>
Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com>
Co-authored-by: lxy-lxy-lxy <55084073+lxy-lxy-lxy@users.noreply.github.com>
Co-authored-by: Xavion3 <xavion333@gmail.com>
Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>
Co-authored-by: Lylian BALL <131535108+PyGaVS@users.noreply.github.com>
2025-05-17 10:35:38 -05:00
Sirz Benjie
9b1a222935
[Bug] Fix old session load modifier crash (#5814)
Fix inability to load saves due to modifier type being nulled
2025-05-12 22:33:52 +02:00
Dean
d790b30a30
[Bug][Hotfix] Fix Transformed Sprites not loading properly (#5808)
* Fix ditto sprite not loading properly

* Remove review comment
2025-05-11 18:23:37 -07:00
Sirz Benjie
6c6821b47d
[Bug] [Move] Fix KO causing effects to occur twice (#5811)
* Fix firstTarget calculation when a target was fainted

* Update type annotation in applyMoveEffects

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

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-05-11 21:10:19 -04:00
Sirz Benjie
09e38bad39
Set lastHit to true when target faints during multi-hit move 2025-05-10 19:05:18 -05:00
Dean
0712f86462
[Bug][Hotfix] Fix crashes when loading save with a transformed pokemon (#5806)
* Fix speciesForm being saved incorrectly

* Fix transformed icon

* Fix moveset loading errors
2025-05-09 01:34:28 -07:00
Dean
5a58abfddf
[Bug][Hotfix] Suppress Illusion if NG is already active (#5797)
* Suppress preSummon attrs off field

* Add test case
2025-05-07 21:04:24 -07:00
Jimmybald1
530b2b8a00
[Bug] Fix seed not being reset in Select Biome Phase (#5794)
Fix seed not being reset now that Select Biome Phase goes before New Battle

Co-authored-by: Jimmybald1 <147992650+IBBCalc@users.noreply.github.com>
2025-05-07 21:03:22 -07:00
NightKev
cf1367cece
[Bug] PokemonSummonData movesets will now be loaded correctly (#5793) 2025-05-07 21:02:16 -07:00
NightKev
fa6c51d1e2
[Bug] Prevent some corrupt eggs from crashing the game (#5787)
If an egg is somehow a species that doesn't have an associated egg tier
(such as Pikachu), `Egg#getEggTier` now falls back to `EggTier.COMMON`
2025-05-07 21:01:54 -07:00
lxy-lxy-lxy
5ba294ffee
[Bug] Lock Capsule not locking rarities consistently (#5786) 2025-05-07 08:05:32 -07:00
Lylian BALL
4f541a8dce
[Bug] Fix some moves using illusion type instead of real type (#5772)
* fix revelation dance using the type of the illusion instead of the actual type

* fix other move that might get the illusion type as well

* fix other move that might get the illusion type as well

* fix abilities that might get the illusion type as well

* fix illusion icon in party ui handler

* Fix TSDoc for `Pokemon#getTypes`

* Remove now-unnecessary changes to `.getTypes()` calls

Revert `overrides.ts` changes

* Replace `|| false` with `!!`

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-05-05 18:31:11 -07:00
Sirz Benjie
4203513db2
[Bug] Ensure shiny and variant status respects illusion properly (#5784)
Ensure shiny and variant status respects illusion properly
2025-05-05 19:49:59 -05:00