Commit Graph

5480 Commits

Author SHA1 Message Date
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
NightKev
3434078329 [Docs] Add @module modifier tag to tsdoc.json 2025-07-27 18:03:34 -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
Wlowscha
466c4aede2
Replace remaining Modifiers with Rewards (#6091)
* Changing remaining Modifiers to Consumables, and renaming ModifierType to Reward

* Renamed modifier files and moved them into items folder

* Using rewards in most places

* Removed consumables in favor of using rewards directly

* Renamed RewardTier to RarityTier

* Reward ids, function to match rewards

* Getting reward tiers from player pool still

* Messing around with parameters of Reward.apply()

* Always requiring player pokemon in rewards

* Fixing some functions in select-reward-phase and battle-scene

* Fixed various post-merge issues

* Fixed most localization strings (accidentally broken by replacing modifierType with reward)

* Fixed tests for select reward phase

* Using Pokemon.hasSpecies()

* Zero weight for trainer items rewards which are already max stack

* Cleaning up SelectRewardPhase, held item rewards behave the same as any PokemonReward

* Cleaned up some functions

* Introduced RewardCategoryId, distributed RewardIds

* Utility `is` functions for rewards

* Minor fixes

* Moved `HeldItemEffect` to its own file

* rmade some todo comments

* Adding a big comment

* Added tsdocs and removed `RewardClass`

* undid breaking changes

* added TODO

* Moved matchingRewards function to reward-utils.ts

* Added RewardGenerator classes for mints and tera shards

* Introducing default rarity tiers for trainer items and rewards

* RewardFunc now can return RewardGenerator

* Moved pool reward functions to their own file, plus other utility files

* Fixed WeightedModifier to work with the new RewardFunc

* Fixed wrong type import

* Shifting trainer item and reward ids to avoid overlaps

* Added some types

* Updated comment in reward.ts

* Added strong typing ot item maps

* added type safety to held item name map

---------

Co-authored-by: Bertie690 <taylormw163@gmail.com>
Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>
2025-07-27 17:09:21 -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
Bertie690
29d9bb6e7b
[Dev] Turned on checkJs in TSConfig; fixed script type errors (#6115) 2025-07-27 20:42:57 +00:00
NightKev
7cb2c560ab [Misc] Fix import in vitest.d.ts 2025-07-27 13:32:47 -07:00
Bertie690
f3854abc16
[Test] Added custom equality matchers (#6157)
* Added rudimentary test matchers for `toEqualArrayUnsorted` and `toHaveTypes`

Might port the rest at a later date

* Actually run the effing setup matchers file + fixed ls lint to not be angy

* added dev dep

* Update .ls-lint.yml

* Update .ls-lint.yml

---------

Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>
Co-authored-by: Amani H. <109637146+xsn34kzx@users.noreply.github.com>
2025-07-27 20:16:04 +00: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
damocleas
a117ff9bc8 [i18n] Update Locales 2025-07-26 22:31:55 -04:00
NightKev
30a6f47081 [Dev] Add dist/ to ls-lint ignore list 2025-07-26 19:23:18 -07: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
Sirz Benjie
4f259e2c2f
[Misc] Fix import in decrypt-save.js (#6149) 2025-07-25 22:30:58 -07:00
Bertie690
bb46ba9f60
[Dev] Added typedoc deployments for Beta (#6147) 2025-07-25 21:58:15 -07: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
NightKev
7b7edbb474
[Test] MoveHelper#changeMoveset disables moveset overrides (#5915)
Also fix Assist tests and add `expect` for max moveset length
2025-07-25 16:22:52 -07: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
Bertie690
3940abbeaf
[Dev] test:silent now passes --silent='passed-only' to Vitest (#6131)
* [Dev] test:silent now passes --silent='passed-only' to Vitest

* Update test shard to actually use `test-silent`

* Removed obselete `project` flag
2025-07-24 17:56:11 -07:00
Sirz Benjie
d3f2659cdf
Merge branch 'beta' into modifier-rework 2025-07-24 16:00:14 -06: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
Wlowscha
985d352be8
Moved held item manager to item folder, some name changes 2025-07-24 20:39:56 +02:00
Wlowscha
ccd968d5b8
Merge branch 'beta' of https://github.com/pagefaultgames/pokerogue into new-modifier-rework 2025-07-24 20:36:27 +02: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
Lugiad
adee68a6d5
[UI/UX] Optimized Pokémon PNGs (#6130)
Optimized Pokémon PNGs
2025-07-23 11:16:09 -07: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
6aa5c03b75
[Test] Removed unnecessary calls to PhaseInterceptor.to("CommandPhase") (#6108)
* [Test] Removed unnecessary calls to `PhaseInterceptor.to("CommandPhase")`

* minor cleanup to final_boss.test.ts

* Made run to final boss encounter actually go to command phase

* fix final_boss.test.ts select bug

* actually fixed test fr this time

* Fix magnet_rise.test.ts

* Fixed test

* Update test/moves/stockpile.test.ts

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

* Update stockpile.test.ts

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-07-21 17:44:39 +00: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
Lugiad
8c825f1714
[UI/UX] Optimized images (#6125) 2025-07-21 10:40:21 -07:00
Bertie690
02cdec25a8
[Dev] Disabled biome noAwaitInLoop rule (#6124) 2025-07-21 09:25:42 -07: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
Lugiad
275ea48744
[UI/UX] [Localization] Optimized type/status icons + new translations (#6120)
* Optimised type/status icons pngs + zh-TW translation

* Optimised type/status icons pngs + zh-TW trans.

* Updated German status icons
2025-07-19 15:57:58 -07:00