* 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>
* 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>
* [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>
* 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>
* [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
* 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
* 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